xtermを消去するShift +バックスペースを作成するには?

xtermを消去するShift +バックスペースを作成するには?

バックスペースを押したときにxtermに文字を削除させるには、次のことが必要です。 stty erase ^?ただし、xtermがShift +バックスペースを押したときに文字を削除するようにしたいが、これを行う方法の説明が見つかりません。 。

ncursesを使用する小さなCプログラムでShift +バックスペースを押すと、次のバイトシーケンスに変換されることが確認されました。

27 91 51 59 50 126

ctrl-vを押してからShift +バックスペースを押すと、xtermに次のように表示されます。

^[[3;2~(ここで^[はもちろんエスケープ文字、ASCIIバイト27です)。

stty eraseCtrl-V、Shift+バックスペースを押してみましたが、次のような結果が得られました。

 ~ > stty erase ^[[3;2~
stty: invalid integer argument `\033[3'
Try `stty --help' for more information.
2~: Command not found.

これを行う方法はありますか?それとも、シフト+バックスペースが1バイトではなく6バイトであってはいけませんか?

ベストアンサー1

〜のようにフィズデレックコメントでは、次のように指摘しました。

xterm -xrm '*VT100*translations: #override Shift <Key>BackSpace:string(\177)'

~/.Xresourcesセッションごとにロードされるようにxrdbに入れます。

おすすめ記事