├── .gitignore ├── icon.png ├── icon64.png ├── functions_for_keyconfig-1.3.7-fx.xpi ├── Makefile ├── defaults └── preferences │ └── keyconfig.js ├── content ├── menumanipulator.js ├── overlay.xul ├── edit.xul ├── keyconfig.xul ├── defaultPreferencesLoader.jsm └── keyconfig.js ├── locale ├── ko-KR │ └── keyconfig.ent ├── zh-CN │ └── keyconfig.ent ├── zh-TW │ └── keyconfig.ent ├── ja-JP │ └── keyconfig.ent ├── en-US │ └── keyconfig.ent ├── ru-RU │ └── keyconfig.ent ├── cs-CZ │ └── keyconfig.ent ├── da-DK │ └── keyconfig.ent ├── sk-SK │ └── keyconfig.ent ├── fr-FR │ └── keyconfig.ent ├── es-AR │ └── keyconfig.ent ├── it-IT │ └── keyconfig.ent └── de-DE │ └── keyconfig.ent ├── skin └── keyconfig.css ├── chrome.manifest ├── README.md ├── install.rdf └── components └── keyconfig-service.js /.gitignore: -------------------------------------------------------------------------------- 1 | keyconfig.xpi 2 | -------------------------------------------------------------------------------- /icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trlkly/dorando-keyconfig/HEAD/icon.png -------------------------------------------------------------------------------- /icon64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trlkly/dorando-keyconfig/HEAD/icon64.png -------------------------------------------------------------------------------- /functions_for_keyconfig-1.3.7-fx.xpi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trlkly/dorando-keyconfig/HEAD/functions_for_keyconfig-1.3.7-fx.xpi -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | ZIPFILES=install.rdf chrome.manifest README.md icon.png icon64.png defaults \ 2 | components content locale skin 3 | DEPFILES=$(shell find $(ZIPFILES) -type f -print) 4 | 5 | keyconfig.xpi: $(DEPFILES) 6 | rm -f $@.tmp 7 | zip -r $@.tmp $(ZIPFILES) 8 | mv -f $@.tmp $@ 9 | 10 | clean: ; -rm -rf keyconfig.xpi 11 | 12 | -------------------------------------------------------------------------------- /defaults/preferences/keyconfig.js: -------------------------------------------------------------------------------- 1 | pref("extensions.dorandoKeyConfig.devmode", false); 2 | pref("extensions.dorandoKeyConfig.nicenames.reverse_order", false); 3 | pref("extensions.dorandoKeyConfig.profile", "main"); 4 | pref("extensions.dorandoKeyConfig.warnOnDuplicate", true); 5 | pref("extensions.dorandoKeyConfig.allowAltCodes", true); 6 | pref("extensions.dorandoKeyConfig.hideDisabled", false); 7 | -------------------------------------------------------------------------------- /content/menumanipulator.js: -------------------------------------------------------------------------------- 1 | if(!document.getElementById("keyconfig") && 2 | this.document.location.href.match(this.document.defaultView.keyconfig.service.ps.getCharPref("keyconfig.UIHook"))) { 3 | New("menuitem","keyconfig"); 4 | Move( 5 | "id('menu_ToolsPopup') | id('tools-menu')/x:menupopup | //x:menu[@label='Tools']/x:menupopup",0,[ 6 | "id('taskPopup') | id('tasksMenu')/x:menupopup",0, 7 | "//x:menubar//x:menu/x:menupopup",0, 8 | "id('contentAreaContextMenu')",0 9 | ]); 10 | Set("label","Keyconfig\u2026"); 11 | Set("key","key_keyconfig"); 12 | Set("oncommand","openDialog('chrome://keyconfig/content/', '_blank', 'resizable', window);"); 13 | 14 | delete this.node.menumanipulator; 15 | } 16 | -------------------------------------------------------------------------------- /locale/ko-KR/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /skin/keyconfig.css: -------------------------------------------------------------------------------- 1 | treechildren::-moz-tree-cell-text(hardcoded) { 2 | color: darkorange; 3 | } 4 | 5 | treechildren::-moz-tree-cell-text(disabled) { 6 | color: red; 7 | } 8 | 9 | treechildren::-moz-tree-cell-text(custom) { 10 | color: magenta; 11 | } 12 | 13 | treechildren::-moz-tree-cell-text(user) { 14 | color: deepskyblue; 15 | } 16 | 17 | treechildren::-moz-tree-cell-text(duplicate) { 18 | background-color: Highlight; 19 | color: HighlightText !important; 20 | } 21 | 22 | treechildren::-moz-tree-cell-text(selected, duplicate) { 23 | background-color: HighlightText; 24 | color: Highlight !important; 25 | } 26 | 27 | treechildren::-moz-tree-cell-text(reset) { 28 | color: blue 29 | } -------------------------------------------------------------------------------- /locale/zh-CN/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/zh-TW/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/ja-JP/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/en-US/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/ru-RU/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/cs-CZ/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/da-DK/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/sk-SK/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/fr-FR/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/es-AR/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /content/overlay.xul: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /locale/it-IT/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /locale/de-DE/keyconfig.ent: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | "> 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | "> 18 | -------------------------------------------------------------------------------- /chrome.manifest: -------------------------------------------------------------------------------- 1 | content keyconfig content/ 2 | content keyconfig-defaults defaults/ 3 | locale keyconfig en-US locale/en-US/ 4 | locale keyconfig cs-CZ locale/cs-CZ/ 5 | locale keyconfig da-DK locale/da-DK/ 6 | locale keyconfig de-DE locale/de-DE/ 7 | locale keyconfig es-AR locale/es-AR/ 8 | locale keyconfig fr-FR locale/fr-FR/ 9 | locale keyconfig it-IT locale/it-IT/ 10 | locale keyconfig ja-JP locale/ja-JP/ 11 | locale keyconfig ko-KR locale/ko-KR/ 12 | locale keyconfig ru-RU locale/ru-RU/ 13 | locale keyconfig sk-SK locale/sk-SK/ 14 | locale keyconfig zh-CN locale/zh-CN/ 15 | locale keyconfig zh-TW locale/zh-TW/ 16 | skin keyconfig classic/1.0 skin/ 17 | 18 | overlay chrome://browser/content/browser.xul chrome://keyconfig/content/overlay.xul 19 | overlay chrome://messenger/content/mailWindowOverlay.xul chrome://keyconfig/content/overlay.xul 20 | overlay chrome://messenger/content/messengercompose/messengercompose.xul chrome://keyconfig/content/overlay.xul 21 | overlay chrome://communicator/content/tasksOverlay.xul chrome://keyconfig/content/overlay.xul 22 | style chrome://keyconfig/content/keyconfig.xul chrome://keyconfig/skin/keyconfig.css 23 | 24 | component {e9f7950e-d78d-4aaa-900a-c43588052eba} components/keyconfig-service.js 25 | contract @dorando.at/keyconfig;1 {e9f7950e-d78d-4aaa-900a-c43588052eba} 26 | category profile-after-change keyconfigService @dorando.at/keyconfig;1 27 | -------------------------------------------------------------------------------- /content/edit.xul: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 16 | 17 | 18 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dorando-keyconfig 2 | 3 | A modified version of [Dorando](http://mozilla.dorando.at/readme.html)'s tool to rebind keys in Mozilla apps. It is designed to be a drop-in replacement, and will keep your old settings. (See official version webpage for upgrade instructions.) 4 | 5 | The only changes here are non-functional changes for compatibility with newer app versions, since Dorando is no longer maintaining the add-on. 6 | 7 | Note that this add-on is _not_ compatible with Firefox 57 and newer, since it uses old add-on APIs that are no longer supported as of Firefox 57. However, it remains compatible with current versions of Thunderbird and SeaMonkey. 8 | 9 | You can install this add-on from [addons.thunderbird.net](https://addons.thunderbird.net/thunderbird/addon/dorando-keyconfig) and [addons.palemoon.org](https://addons.palemoon.org/addon/keyconfig/). **If you are replacing Dorando's version of the add-on from 2011 or earlier with this version, make sure to uninstall Dorando's version before installing this one.** 10 | 11 | ## Working with the source code 12 | 13 | To deploy the source code directly into Firefox, Thunderbird, or Mozilla, so that you can make changes here and then test them in the application without having to create and install a new XPI file: 14 | 15 | 1. Install the add-on normally from addons.mozilla.org. 16 | 17 | 2. Shut down the app. 18 | 19 | 3. Locate the "extensions" subdirectory of your app profile directory. 20 | 21 | 4. Locate the file "keyconfig@mozilla.dorando.at.xpi" in that directory and delete it. 22 | 23 | 5. Create a new text file called "keyconfig@mozilla.dorando.at" (note: no ".xpi" extension). In that file, put the full path to the directory this source code is in. 24 | 25 | 6. Locate the "prefs.js" file in your app profile directory. 26 | 27 | 7. Put this in it: 28 | 29 | user_pref("extensions.startupScanScopes", 5); 30 | 31 | 8. Restart the app from the command line with the argument `-purgecaches`. 32 | 33 | 9. Confirm that the add-on shows up in the add-ons listing. 34 | 35 | Whenever you start the app with `-purgecaches` from this point forward, it will reload the current version of the add-on code from your source directory. It may also pick up your changes even when you don't specify `-purgecaches`, but the only way to be _certain_ that it will notice your changes is to specify that argument. 36 | 37 | ## Copyright 38 | 39 | Dorando's original copyright is as follows: 40 | 41 | >Copyright (c) 2004-2011 Dorando. 42 | >Permission is granted to copy, distribute, and/or modify any part of this package. 43 | 44 | The maintainers of this updated version of the add-on do not claim any additional copyright. In other words, the copyright above still applies. 45 | -------------------------------------------------------------------------------- /install.rdf: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | keyconfig@mozilla.dorando.at 8 | Dorando keyconfig 9 | 2018.1 10 | Dorando 11 | Hadar Hagai 12 | trlkly 13 | Jonathan Kamens 14 | MatrixIsAllOver of eXtenZilla.it (it-IT) 15 | Mori (fr-FR) 16 | SHIMODA Hiroshi (ja-JP) 17 | SlovakSoft (sk-SK) 18 | Tomáš Kopečný (cs-CZ) 19 | ReinekeFux - erweiterungen.de (de-DE) 20 | stoneflash (ru-RU) 21 | ZuGro (es-AR) 22 | rexx26 (zh-TW) 23 | kyo (ko-KR) 24 | Cye3s (zh-CN) 25 | Jørgen Rasmussen (da-DK) 26 | Jack Black (fr-FR) 27 | http://mozilla.dorando.at/ 28 | Rebind your keys. 29 | chrome://keyconfig/content/ 30 | 3 31 | 2 32 | true 33 | 34 | 35 | {ec8030f7-c20a-464f-9b0e-13a3a9e97384} 36 | 4.0 37 | 56.* 38 | 39 | 40 | 41 | {3550f703-e582-4d05-9a08-453d09bdfdc6} 42 | 5.0b1 43 | 61.0 44 | 45 | 46 | 47 | {aa3c5121-dab2-40e2-81ca-7ea25febc110} 48 | 10.0a1 49 | 56.* 50 | 51 | 52 | 53 | {a23983c0-fd0e-11dc-95ff-0800200c9a66} 54 | 4.0 55 | 56.* 56 | 57 | 58 | 59 | {92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a} 60 | 2.1 61 | 2.49.* 62 | 63 | 64 | 65 | {8de7fcbb-c55c-4fbe-bfc5-fc555c87dbc4} 66 | 25.0 67 | 27.* 68 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /content/keyconfig.xul: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | 8 | %keyconfig; %textcontext; 9 | ]> 10 | 11 | 16 | 17 | 42 | 43 |