mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-03-24 14:53:32 +01:00
Compare commits
5 Commits
pentadacty
...
pentadacty
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
864482cd7b | ||
|
|
0a46c4be52 | ||
|
|
1910720de8 | ||
|
|
44563c4a85 | ||
|
|
7f44847ee3 |
50
README.md
Normal file
50
README.md
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
Pentadactyl for Pale Moon
|
||||||
|
=========================
|
||||||
|
|
||||||
|
This is a port of one of the best XUL-based Firefox extensions, targeting [Pale Moon](https://www.palemoon.org/) 27. The goal of this project is to make Pentadactyl compatible with Pale Moon, while staying as close to the upstream as possible.
|
||||||
|
|
||||||
|
Install
|
||||||
|
-------
|
||||||
|
|
||||||
|
You can find the latest XPI file for download [here](https://github.com/madand/pentadactyl-pm/releases/latest). For older versions see the [Releases](https://github.com/madand/pentadactyl-pm/releases) page.
|
||||||
|
|
||||||
|
Development
|
||||||
|
-----------
|
||||||
|
|
||||||
|
### Build XPI from sources ###
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
git clone --depth 1000 https://github.com/madand/pentadactyl-pm.git
|
||||||
|
cd pentadactyl-pm/
|
||||||
|
make -C pentadactyl xpi
|
||||||
|
```
|
||||||
|
|
||||||
|
This resulting XPI will be placed in the `downloads/` folder.
|
||||||
|
|
||||||
|
#### Build dependencies ####
|
||||||
|
|
||||||
|
* zip
|
||||||
|
* gmake
|
||||||
|
* Standard POSIX commands: awk, echo, sed, sh
|
||||||
|
|
||||||
|
While most developers use a Unix-like operating system, you can also build Pentadactyl on Windows with the help of MinGW's MSYS, Cygwin, or SFU.
|
||||||
|
|
||||||
|
### Install without XPI ###
|
||||||
|
|
||||||
|
As creating and installing a new XPI file after each update is cumbersome, most developers run Pentadactyl directly from their working copies. This is achieved with [Firefox extension proxy file][1], which is a plain text file named after the extension ID and its contents is just a path to the extension source directory.
|
||||||
|
|
||||||
|
Assuming you use the `default` profile, the following command will create the proxy file:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
cd /path/to/cloned/pentadactyl-pm/
|
||||||
|
# On clean profile, ensure that 'extensions' directory exists inside of the profile directory.
|
||||||
|
echo "$(pwd)/pentadactyl" >~/'.moonchild productions/pale moon'/*.default/extensions/pentadactyl@addons.palemoon.org
|
||||||
|
```
|
||||||
|
|
||||||
|
Once you installed Pentadactyl via the proxy file, restart the browser. Afterwards, you can use `:rehash` command to reload the extension without further browser restarts. Moreover, you can bind it to a key chord in your `~/.pentadactylrc`:
|
||||||
|
|
||||||
|
``` viml
|
||||||
|
nmap -ex <C-r> :rehash
|
||||||
|
```
|
||||||
|
|
||||||
|
[1]: https://developer.mozilla.org/en-US/Add-ons/Setting_up_extension_development_environment#Firefox_extension_proxy_file
|
||||||
@@ -2069,13 +2069,6 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), {
|
|||||||
statusline.update();
|
statusline.update();
|
||||||
dactyl.log(_("dactyl.initialized", config.appName), 0);
|
dactyl.log(_("dactyl.initialized", config.appName), 0);
|
||||||
dactyl.initialized = true;
|
dactyl.initialized = true;
|
||||||
|
|
||||||
util.delay(() => {
|
|
||||||
if (services.focus.activeWindow === window)
|
|
||||||
overlay.activeWindow = window;
|
|
||||||
|
|
||||||
util.flushLateMethods(dactyl);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -618,9 +618,6 @@ var Events = Module("events", {
|
|||||||
util.trapErrors("addEditActionListener",
|
util.trapErrors("addEditActionListener",
|
||||||
DOM(elem).editor, editor);
|
DOM(elem).editor, editor);
|
||||||
|
|
||||||
if (elem == window)
|
|
||||||
overlay.activeWindow = window;
|
|
||||||
|
|
||||||
overlay.setData(elem, "had-focus", true);
|
overlay.setData(elem, "had-focus", true);
|
||||||
if (event.target instanceof Ci.nsIDOMXULTextBoxElement)
|
if (event.target instanceof Ci.nsIDOMXULTextBoxElement)
|
||||||
if (Events.isHidden(elem, true))
|
if (Events.isHidden(elem, true))
|
||||||
@@ -873,6 +870,12 @@ var Events = Module("events", {
|
|||||||
autocommands.trigger("Fullscreen", { url: this._fullscreen ? "on" : "off", state: this._fullscreen });
|
autocommands.trigger("Fullscreen", { url: this._fullscreen ? "on" : "off", state: this._fullscreen });
|
||||||
}
|
}
|
||||||
statusline.updateZoomLevel();
|
statusline.updateZoomLevel();
|
||||||
|
},
|
||||||
|
|
||||||
|
activate: function onActivate(event) {
|
||||||
|
if (event.target === window) {
|
||||||
|
overlay.activeWindow = window;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
em:id="pentadactyl@addons.palemoon.org"
|
em:id="pentadactyl@addons.palemoon.org"
|
||||||
em:type="2"
|
em:type="2"
|
||||||
em:name="Pentadactyl"
|
em:name="Pentadactyl"
|
||||||
em:version="1.2pre-pm-1"
|
em:version="1.2pre-pm-3"
|
||||||
em:description="Pale Moon for Vim and Links addicts"
|
em:description="Pale Moon for Vim and Links addicts"
|
||||||
em:homepageURL="http://5digits.org/pentadactyl"
|
em:homepageURL="http://5digits.org/pentadactyl"
|
||||||
em:bootstrap="true"
|
em:bootstrap="true"
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
<em:targetApplication>
|
<em:targetApplication>
|
||||||
<Description
|
<Description
|
||||||
em:id="{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
|
em:id="{8de7fcbb-c55c-4fbe-bfc5-fc555c87dbc4}"
|
||||||
em:minVersion="27.0"
|
em:minVersion="27.0"
|
||||||
em:maxVersion="50.*"/>
|
em:maxVersion="50.*"/>
|
||||||
</em:targetApplication>
|
</em:targetApplication>
|
||||||
|
|||||||
Reference in New Issue
Block a user