LinuxでF9を押すと正しい値が返されます。
~
UNIX(Solarisまたはhpux)から返される
0~
これらのシステムで正しいチルダをどのように設定しますか?
答え1
ファンクションキーは、ウィンドウマネージャまたはターミナルエミュレータとして解釈されるか(たとえば、F11は通常ウィンドウを最大化する)、VTxxxまたはANSIエスケープシーケンスとしてプログラムに渡すことができます。
Linux および Solaris の F9 は通常、ソフトウェアのESC[20~バージョンに応じて転送またはbash
解釈ksh
されます。一方、シェルが行編集を実行しないダッシュの場合は、が表示されます。0~
~
^[[20~
F9を送信するには~
:
Xを使用している場合(米国のレイアウトキーボードでテスト済み):
xmodmap -e "keycode 75 = asciitilde"
Linuxコンソールで、次を実行showkey
してF9のキーコードを見つけます。私のシステムでは67です。次に、次のコマンドを実行します(rootユーザーである必要があるかもしれません)。
echo "keycode 67 = asciitilde" | loadkeys
Solaris 10 コンソールで、次を実行してshowkeys | more
F9 の keytab エントリを見つけます。仮想USBキーボードを搭載した仮想マシンでは、key 66 all tf(9)
次の内容でファイルを作成します。
key 66 all ~
そして実行してくださいloadkeys /path/to/file
。
答え2
チルダを返すのにF9が「正しい」と思う理由はわかりませんが、チルダが必要な場合はチルダキーを使用する必要があります。
使用しているクライアントハードウェア、クライアントソフトウェア、サーバーソフトウェア、およびサーバーハードウェアによっては、ファンクションキーはほとんど定義されていません。
答え3
まず、見つけた解決策をクリックする必要があります。
CTRL+V and key
私の場合はF9なのでこうしました。
CTRL+V F9
そしてこれを返します
^[[20~
今、私はキー20であることを知って、チルダに縛られました。
bind '"\e[20~":"~"'
F9を押してチルダに戻り、永久に変更するために$ HOME / .profileに入れました。