制御文字の入力方法

Emacs

C-q 制御文字

例: エスケープ文字を入力

C-q C-[

シェル、vim

Ctrl+V 制御文字

例: エスケープ文字を入力

Ctrl+V Ctrl+[

コントロールキーと同時に押す文字は?

上記で「制御文字」と記載しているところは、Ctrl+(コントロールキーと同時に押す)で送出するが、この時のコントロールキーと同時に押す文字は、入力したい制御文字の7ビット目に1をセット、つまり0x40(64)を足した文字である。
man ascii 等でASCII文字の一覧を表示して探す。

例:
エスケープ文字は0x1B(27)
7ビット目に1をセットする=0x40(64)を足すと0x5B(91)
0x5B(91)は[
よってエスケープ文字を送出するにはCtrl+[

改行は0x0A(10)
7ビット目に1をセットする=0x40(64)を足すと0x4A(74)
0x4A(74)はJ
よって改行を送出するにはCtrl+J

https://ja.wikipedia.org/wiki/ASCII#ASCII.E5.8D.B0.E5.AD.97.E5.8F.AF.E8.83.BD.E6.96.87.E5.AD.97

なお、印字可能文字のうち「@」から始まる32文字については、ASCII値を64減じて対応する制御文字を求め、この制御文字を「コントロール+」(英: control+)という前置表現を付けた印字可能文字で表記する慣習がある。

例:BELコード(07) →「コントロール+G」(受信した側の機器で注意喚起音が鳴る)

この制御文字の表記方法は、キーボード上の印字可能文字キーを制御文字の送出に用いていた機器の名残りであると考えられる(7ビット目を0にセットする専用キー(Ctrlキー)を、印字可能文字キーと同時に押して制御文字を送出)。

エスケープ文字の入力方法 - nelnalog.note

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

six − five =