Ctrlキーバインディング++をにShiftマッピングしたいです。次のように+をマッピングしました。その項目は次のとおりです。Tabrxvt-unicode
CtrlTab.Xresources
URxvt.keysym.Control-Tab: \033[27;5;9~
以下を使用して、cat -v
このマッピングが有効であることを確認してください。
$ cat -v
^[[27;5;9~
これにより、このシーケンスはMap +などのアプリケーション^[[27;5;9~
で使用できます。次の項目も同じことを願っています。vim
CtrlTab.Xresources
URxvt.keysym.Control-Shift-Tab: \033[27;6;9~
ただし、cat
正しいマッピングは表示されません。
$ cat -v
^[[Z
Ctrl++Shiftマッピングを設定するにはTab?
編集する
マッピング
URxvt.keysym.Control-ISO_Left_Tab: \033[27;6;9~
URxvt.keysym.Control-Shift-ISO_Left_Tab: \033[27;6;9~
行動は同じです。最初にCtrl+を押してから、Tab両方を放してから押します。Return 二重Ctrl次に+ Shift+を押してTabすべて放し、それを押します。Return 二重次の結果が表示されます。
$ cat -v
^[[27;5;9~
^[[27;5;9~
^[[27;6;9~↵
^[[27;6;9~M-bM-^FM-5
- ケースCtrl+ Tab: 最初の戻り値のため、入力は再び出力として表示されます。
- ケースCtrl++:最初の戻りはシンボルを生成し、2番目の戻りShiftは上記の最後の行を生成します。Tab
↵
次の編集:追加情報
Ctrl-Shiftを押してから(何も押さずに離すと)、別のウィンドウに入力するとどうなりますか?
別のurxvtウィンドウから? Ctrl+Shift キーを押しながら両方のキーを放すと、左下に眩しい黄色のボックスが表示されます。KEYCAP PICTURE INSERT MODE
これはurxvtで発生したようですが、他のアプリケーションには表示されません。
あるいは、ctrl-shift-tabを押して別のウィンドウに入力することもできます。 (geditウィンドウやWebブラウザなどでrxvtを意味するわけではありません。)
私は新しいラインを取得します。
Shift+Ctrl+Tab[たとえば、下に移動、下に移動、タブ、上に移動、上に移動]をタップするか、その逆にするとどうなりますか?
urxvtで?
$ cat -v
shift+ctrl+tab then enter: ^[[27;6;9~
ctrl+shift+down: ↓
ctrl+shift+up: ↑
shift+down: ^[[b
shift+up: ^[[a
ctrl+down: ^[Ob
ctrl+up: ^[Oa
tab: | | (tab)
xcomposeなどの「ctrl+shift」への一種のマッピングがあると思うので、範囲を絞り込もうとします。
私の知る限りではありませんが、誰も知りません。
"ctrl+shift+tab, enter"を押すとxevの出力は何ですか?
KeyPress event, serial 32, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311734869, (567,395), root:(567,411),
state 0x0, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311734971, (567,395), root:(567,411),
state 0x4, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736110, (567,395), root:(567,411),
state 0x5, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736494, (567,395), root:(567,411),
state 0x5, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736525, (567,395), root:(567,411),
state 0x5, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736525, (567,395), root:(567,411),
state 0x4, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311737530, (567,395), root:(567,411),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
" XmbLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311737633, (567,395), root:(567,411),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
答え1
私はS-Tab
これを扱いました:
URxvt.keysym.C-Tab: \033{
URxvt.keysym.Control-Shift-ISO_Left_Tab: \033}
! disable ctrl-shift
URxvt*iso14755: False
URxvt*iso14755_52: False
vimでは、
nmap ^[{ :tabnext<cr>
imap ^[{ <ESC>:tabnext<cr>
nmap ^[} :tabprevious<cr>
imap ^[} <ESC>:tabprevious<cr>
答え2
Shift+ はTab通常 X11 のキー記号にマップされるため、ISO_Left_Tab一部のプログラムでは構成では文字通り「shift-tab」の代わりに + が必要になる場合があります。
urxvtにctrl + shiftへの奇妙なマッピングがあります。これを無効にするには、再コンパイルする必要があるようです。参考このページ詳細については。編集 最新バージョンのrxvtでは簡単に追加できるようです。
URxvt.iso14755_52: False
答え3
部分的な回答:.Xdefaultsファイル(またはシステムによっては.Xresources)に次のものを追加して、Control-Shift ISO 14755モード(少なくとも最新のURxvtでは)を無効にできます。
URxvt.iso14755: false
URxvt.iso14755_52: false