この質問は派生質問です。muttで「明確なヒント」を再バインドします。
私はvimキーバインディングの多くを使用し、それを使用してescコマンドを中断するのが好きです。これでmuttに移動しましたが、escMuttで「中断」にバインドできません(上記を参照)。代わりに+escにマッピングしたいです。私の希望は、一連の2つのキーストロークを送信するキーを取得することです。これはvimとmuttの一般的な中断キーです。escCtrl-gescesc
Vimで競合が発生しないように、Ctrl-g.vimrcから「タスクなし」にマッピングしました。nmap <C-g> <nop>
可能であれば、このマッピングをesc。このマップがXinputまたはXmodmapでよりグローバルに適用されるようにして、他の(cli以外の)プログラムに対してこのマップが何をしているのかを観察し続ける必要があります。つまり、どんな提案でも大歓迎です:)escCtrl-g
答え1
このリソースを使用できますkeysym
。これを行うには、rxvtをこのオプションでコンパイルする必要があります--enable-frills
。次の行を次の行に入れます~/.Xresources
。
URxvt.keysym.Escape: \033\007
xrdb -merge ~/.Xresources
リソースファイルをリロードするには実行してください。この設定は、実行後に実行されるプログラムにのみ適用されますxrdb -merge
。
必要に応じて、rxvtに渡されたパラメータに応じて異なる方法で設定できます。名前を選択してくださいurxvt-mutt
。たとえば、名前は小文字で始め、urxvt
他のアプリケーションで使用されている名前と競合しないように始める必要があります。次の行を追加してください~/.Xresources
。
urxvt-mutt.keysym.Escape: \033\007
その後、実行するとurxvt -name urxvt-mutt
このバインディングが得られますが(setを使用してすべてのバインディングをオーバーライドします)、オプションなしで実行するとURxvt.keysym.Escape
バインディングのみが取得されます。urxvt
-name
URxvt