zsh で ^S を取り戻すにはどうすればいいですか?

zsh で ^S を取り戻すにはどうすればいいですか?

^S が zsh (ohmyzsh) の前方検索キーとしてマッピングされていることが分かりましたが、vim でもさまざまなマッピングに使用したいのですが、zsh マッピングのせいで現在は使用できないようです。

バインドキーをアンマップする方法、または両方の方法はありますか?

答え1

これはおそらくフロー制御であり、シェルではなく端末によって処理されます。通常、control-s は端末出力を停止し、control-q はそれを再開します。" :help ctrl-s" の注記を参照してください。

この動作を削除するには、次のシェル コマンドを試してください。

stty stop undef
stty start undef

ただし、これは機能しない可能性があります。GUI ターミナル エミュレータを使用している場合は、そのオプション内でフロー制御設定を探してみてください。

答え2

私は2つのステップでそれを打ち消しました:

  1. Konsole でフロー制御を無効にする:

    • 設定 > プロファイルの管理... > プロファイルの編集 > 詳細設定 (タブ) > 「フロー制御を有効にする [...]」のチェックを外す)

  2. Zsh にも伝えてください:

    setopt noflowcontrol
    

関連情報