Configurar (deshabilitar) los atajos de teclado de Firefox

Configurar (deshabilitar) los atajos de teclado de Firefox

yo sueloskhdpara administrar atajos de teclado en todo el sistema, pero ocasionalmente uno se filtra y FireFox lo detecta.

¿Cómo puedo deshabilitar un atajo de teclado en FF, específicamente el Command- {number}para cambiar de pestaña, de modo que incluso si skhdlo suelta o no se ejecuta, no obtenga un comportamiento inesperado al activar involuntariamente un atajo diferente?

Respuesta1

¡Uf, esta fue difícil e interesante! Repasaré cómo hice esto en Windows y luego explicaré cómo hacerlo en Linux. Este procedimiento funcionó para mí con Firefox 74.

DESCARGO DE RESPONSABILIDAD: Esto podría dañar la instalación de Firefox, lo hacenoParece ser recomendado, y cada vez que actualice Firefox, deberá repetir este proceso. Así que asegúrese de hacer una copia de seguridad de todo lo que le interese de su instalación de Firefox, especialmente el omni.jaarchivo.

(Si hubiera otra forma, la habría recomendado, pero hasta donde sé, esta es la única manera de cambiar el conjunto de claves principal. (Esto puede ser una consideración de seguridad por parte de Mozilla para evitar extensiones maliciosas). de secuestrar cierto comportamiento.))

Para lograr esto, primero instalé el último 7zip con elinstalador ninte. Luego, navegué hasta el browsersubdirectorio del directorio de instalación de Firefox, en mi caso C:\Program Files\Mozilla Firefox\browser. Luego usé 7zip para descomprimirlo omni.jaen otra ubicación.

Luego, en el directorio recién descomprimido omni, modifiqué el archivo chrome\browser\content\browser\browser.xhtml. Aquí está la diferencia de los cambios que hice:

--- browser.xhtml.orig  2020-03-27 16:42:54.377242187 +0000
+++ browser.xhtml       2020-03-27 16:43:01.865242187 +0000
@@ -333,7 +333,6 @@

     <key data-l10n-id="nav-reload-shortcut" command="Browser:Reload" modifiers="accel" id="key_reload"/>
     <key data-l10n-id="nav-reload-shortcut" command="Browser:ReloadSkipCache" modifiers="accel,shift" id="key_reload_skip_cache"/>
-    <key id="key_viewSource" data-l10n-id="page-source-shortcut" command="View:PageSource" modifiers="accel"/>
     <key id="key_viewInfo" data-l10n-id="page-info-shortcut" command="View:PageInfo"   modifiers="accel"/>
     <key id="key_find" data-l10n-id="find-shortcut" command="cmd_find" modifiers="accel"/>
     <key id="key_findAgain" data-l10n-id="search-find-again-shortcut" command="cmd_findAgain" modifiers="accel"/>
@@ -380,17 +379,6 @@
     <key id="key_undoCloseTab" command="History:UndoCloseTab" data-l10n-id="tab-new-shortcut" modifiers="accel,shift"/>
     <key id="key_undoCloseWindow" command="History:UndoCloseWindow" data-l10n-id="window-new-shortcut" modifiers="accel,shift"/>

-
-<key id="key_selectTab1" oncommand="gBrowser.selectTabAtIndex(0, event);" key="1" modifiers="accel"/>
-<key id="key_selectTab2" oncommand="gBrowser.selectTabAtIndex(1, event);" key="2" modifiers="accel"/>
-<key id="key_selectTab3" oncommand="gBrowser.selectTabAtIndex(2, event);" key="3" modifiers="accel"/>
-<key id="key_selectTab4" oncommand="gBrowser.selectTabAtIndex(3, event);" key="4" modifiers="accel"/>
-<key id="key_selectTab5" oncommand="gBrowser.selectTabAtIndex(4, event);" key="5" modifiers="accel"/>
-<key id="key_selectTab6" oncommand="gBrowser.selectTabAtIndex(5, event);" key="6" modifiers="accel"/>
-<key id="key_selectTab7" oncommand="gBrowser.selectTabAtIndex(6, event);" key="7" modifiers="accel"/>
-<key id="key_selectTab8" oncommand="gBrowser.selectTabAtIndex(7, event);" key="8" modifiers="accel"/>
-<key id="key_selectLastTab" oncommand="gBrowser.selectTabAtIndex(-1, event);" key="9" modifiers="accel"/>
-
     <key id="key_wrCaptureCmd"
     key="#" modifiers="control"
     command="wrCaptureCmd"/>
@@ -3748,7 +3736,6 @@
               <menu id="webDeveloperMenu" data-l10n-id="menu-tools-web-developer">
                 <menupopup id="menuWebDeveloperPopup">
                   <menuitem id="menu_pageSource"
-                            key="key_viewSource"
                             command="View:PageSource" data-l10n-id="menu-tools-page-source"/>
                 </menupopup>
               </menu>

Como puede ver, eliminé la keyentrada de key_viewSourcey eliminé una referencia a esa keyentrada en una menuItementrada. También eliminé las entradas key_selectTab[1-8]y key_selectLastTab key.

Una vez hecho esto, ahora es el momento de volver a cerrar la cremallera. Navegue hasta el nivel superior de omni, seleccione todo su contenido, haga clic derecho, seleccione 7-zip y "Agregar al archivo".

Establezca el nombre del nuevo archivo en omni.ja, establezca el formato en zipy establezca el nivel de compresión en Store.

Opciones de compresión 7zip

Hice una copia de seguridad del C:\Program Files\Mozilla Firefox\browser\omni.jaarchivo existente y luego lo reemplacé omni.japor uno modificado.

Finalmente, abra una cmdventana y abra Firefox con --purgecaches, por ejemplo C:\Program Files\Mozilla Firefox\firefox.exe --purgecaches.

En este punto, Firefox se abre, Ctrl-Uya no muestra la fuente y Ctrl-[1-9]ya no selecciona pestañas. ¡Éxito!

Para los usuarios de Linux, en lugar de 7zip, simplemente pueden:

[gnubeard@mothership: ~]$ mkdir tmp
[gnubeard@mothership: ~]$ cd tmp
[gnubeard@mothership: ~/tmp]$ unzip ../omni.ja

Realice las modificaciones apropiadas, luego:

[gnubeard@mothership: ~/tmp]$ zip -qr0XD ../omni.ja *

No olvides correr firefox --purgecachespara recargar omni.ja.

Los enlaces que incluyo al final de esta publicación mencionan el uso de zip -qr9XD, pero creo que eso establece el nivel de compresión al máximo y, para que esto funcione, creo que la compresión zip no se puede habilitar (si estás leyendo esto y no estás de acuerdo, por favor corrígeme.)

Reuní esto para abordar específicamente las preocupaciones enumeradas en la pregunta ( Ctrl-U, Ctrl-[1-9]), pero creo que estodeberíaTrabaja para eliminar cualquiera de los atajos en el conjunto de claves principal, todos los cuales encontrarás en browser.xhtml.

(EDITAR: en el curso de mi investigación, creo que confundí la pregunta original con otra que encontré que quería deshabilitar Ctrl-U. Si no desea deshabilitar ese acceso directo, simplemente omita las viewSourceeliminaciones que hice).

Enlaces:

http://shallowsky.com/blog/tech/web/modifying-omni.ja.html

Este fue escrito antesbrowser.xulfue renombrado abrowser.xhtml, y sedlamentablemente el comando que recomienda ya no funciona browser.xhtmldebido al cambio de formato.

http://forums.mozillazine.org/viewtopic.php?f=27&t=3025663

Así es como descubrí la --purgecachesopción: busqué en Google más de lo que esperaba.

https://mike.kaply.com/2013/05/06/dont-unpack-and-repack-omni-jar/

Mike Kaply recomendó hace 7 años quenadie hace esto. Bien podría ser posible lograr el efecto deseado anulando las entradas del conjunto de claves de omni.ja de alguna manera en lugar de modificarlo, pero si es así, no pude encontrar documentación al respecto.

https://developer.mozilla.org/en-US/docs/Archive/Mozilla/XUL/Tutorial/Keyboard_Shortcuts

Documentación obsoleta sobre XUL. Interesante de leer, pero no me ayudó directamente a lograrlo.

información relacionada