GNU/Linux >> Linux の 問題 >  >> Linux

Linux 上の Firefox で Ctrl+Q ショートカットを無効にする方法

about:config で 設定します。

Firefox>=87

browser.quitShortcut.disabled true

https://bugzilla.mozilla.org/show_bug.cgi?id=52821

Firefox>=65

browser.sessionstore.warnOnQuit true
browser.warnOnQuit true

ソース

古い Firefox

browser.showQuitWarning true
browser.warnOnQuit true

すべてのバージョンでテストした結果、64 ビット Linux (および Win10 の 60esr チャネル) で 61.0.2-64.0.2 に遭遇しました。


tl/dr:グローバル ショートカットを Ctrl-Q に割り当てます

Firefox Quantum では、about:config 誤って Ctrl-Q キーを押して Firefox を閉じることを警告していた設定は機能しなくなりました。

回避策: Arch Linux で | XFCE デスクトップ環境 (他の Linux ディストリビューションやデスクトップでも同様のアプローチが可能かもしれません):

  • ひげメニュー>> すべての設定>> キーボード>> アプリケーションのショートカット>> 追加

  • 新しい「アプリケーション」を追加、null; Ctrl-Q に割り当てます キープレス

    • 更新 (@justderb によるコメント):「エラー ウィンドウをポップアップさせたくない場合は、'null' の代わりに 'true' を使用すると便利です。」

呼び出し: ここで Ctrl-Q を押しました Firefox Quantum v. 60.0.1 (64 ビット)。 Firefox を終了する代わりに、このポップアップが表示されます。

注意: もちろん、これはすべての Ctrl-Q キー押下にグローバルに影響します。しかし、私自身の好みによると、Firefox の Ctrl-Q の偶発的な閉鎖を無効にすることで、その欠点を補うことができます (その後、Web サイトに再ログインする必要があります:GitHub; reddit; ...).

アップデート 1

@crazypyro の回答は私 (x86_64 Linux 上の FF Quantum 63.0) でも機能し、Firefox を終了しようとするとポップアップ警告が表示されます。それはおそらく具体的な答えと見なされるべきであり、私の解決策はより一般的な回避策です.

about:config (以下は両方とも true に設定 ):

  • browser.showQuitWarning
  • browser.warnOnQuit

アップデート 2 [2020-03-01]

Vim でしばらくの間、端末が「フリーズ」し、Vim のキーストローク制御が失われるというイライラする問題に時々遭遇しました。 (Vim を強制終了/再起動する必要があります)。

調査の結果、問題はソフトウェア フロー制御 (XON/XOFF フロー制御) であることが判明しました。 Ctrl-s Ctrl-q まで端末をフリーズします 押されます-上記の私の解決策によれば、これはグローバルに「ダミーアプリケーション」 true に再マップされます .

この問題の回避策は、次の行を追加することです

# enable Ctrl-s and Ctrl-q:
stty -ixon

~/.bashrc の上部付近 、新しいターミナルを開いて Vim を起動します。

関連リンク/ディスカッション:

  • https://unix.stackexchange.com/questions/72086/ctrl-s-hang-terminal-emulator
  • https://stackoverflow.com/questions/3419820/sometimes-my-file-just-freezes-in-my-vi-vim-what-happened
  • https://unix.stackexchange.com/questions/478532/why-is-vim-frozen

  • https://unix.stackexchange.com/questions/72086/ctrl-s-hang-terminal-emulator | ...スクロールロックキーC-sを備えたキーボードが登場する前 と C-q 昔は「スクロールロックトグル」でした。 stty ixany を追加することで、この機能を無効にすることができます と stty ixoff -ixon ~/.bashrc [...そしてターミナルを再起動]


Firefox Quantum の userChrome.js で Ctrl+q を無効にする

これは、Firefox プロファイルに JavaScript を少し追加するだけで、外部アプリケーションなしで実現できます。

前提条件として、userChrome.js を有効にする必要があります (以下を参照するか、元の GitHub リポジトリから入手してください)

chrome ディレクトリとその内容をユーザー プロファイルにコピーした後、ファイル <profile-dir>/chrome/disable_ctrl_q.uc.js を作成します。 次の内容で:

var kqa = document.getElementById('key_quitApplication');
if (kqa) kqa.remove();

最後に、Firefox を再起動すると、ctrl+q でアプリケーションが終了しなくなります。

Firefox Quantum で userChrome.js を有効にする

完全を期すために、変更された chrome ファイルの完全な内容を以下に示します。 userChrome JavaScript を有効にするには、chrome 内にこれら 2 つのファイルを作成します。 Firefox プロファイル内のディレクトリ。

<オール>
  • about:supportと入力
  • [アプリケーションの基本]> [プロファイル ディレクトリ] の下 ディレクトリを開くをクリックします ボタンをクリックして Firefox プロファイル ディレクトリを開きます。
  • プロファイル ディレクトリ内に、chrome という名前の新しいディレクトリを作成します。
  • chrome内 ディレクトリ、新しいファイルを作成 userChrome.cssuserChrome.xml 内容は以下のとおりです。
  • Firefox を再起動します (これらの手順に従って ctrl+q を無効にしている場合は、上記の .uc.js ファイルも作成することをお勧めします)
  • userChrome.css

    /* Copyright (c) 2017 Haggai Nuchi
    Available for use under the MIT License:
    https://opensource.org/licenses/MIT
    */
    @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
    toolbarbutton#alltabs-button {
        -moz-binding: url("userChrome.xml#js");
    }
    

    userChrome.xml

    <?xml version="1.0"?>
    <!-- Copyright (c) 2017 Haggai Nuchi
    Available for use under the MIT License:
    https://opensource.org/licenses/MIT
     -->
    
    <bindings id="generalBindings"
       xmlns="http://www.mozilla.org/xbl"
       xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
       xmlns:xbl="http://www.mozilla.org/xbl">
    
      <binding id="js" extends="chrome://global/content/bindings/toolbarbutton.xml#menu">
        <implementation>
            <constructor><![CDATA[
                function makeRelativePathURI(name) {
                  let absolutePath = Components.stack.filename;
                  return absolutePath.substring(0, absolutePath.lastIndexOf("/") + 1) + name;
                }
                // The following code executes in the browser context,
                // i.e. chrome://browser/content/browser.xul
                Services.scriptloader.loadSubScript(makeRelativePathURI("userChrome.js"), window);
            ]]></constructor>
        </implementation>
      </binding>
    </bindings>
    

    Linux
    1. Linuxでシャットダウンおよび再起動コマンドを無効にする方法

    2. Linux で IPv6 の自動構成を無効にする方法は?

    3. Firefox Linux で「ctrl+shift+w」ショートカットを無効にする

    1. Linuxでユーザーパスワードを変更、削除、または無効にする方法

    2. Linux の特定のインターフェイスで ipv6 を無効にする方法は?

    3. LinuxでNCQを(実際に)無効にする方法

    1. Ubuntu 11.10 / LinuxMint12にFirefox10をインストールする方法

    2. UNIX / Linux :ユーザー アカウントをロックまたは無効にする方法

    3. Linux で特定のユーザーに対して特定のコマンドを無効にする方法