ターミナルでの ASCII 制御文字 ノート

ターミナルでの ASCII 制御文字

著者は、ターミナルでの制御コードの概念、例えばCtrl-A、Ctrl-C、Ctrl-Wなど、そしてそれらの動作原理を探索しています。ASCII制御文字は33個あり、オペレーティングシステムのターミナルドライバーが処理するコード、リテラルキー押下に対応するコード、readlineが使用するコードに分類できます。著者は、これらのコードが有機的に進化したため、実際の構造はないと指摘しています。制御コードはわずか33個しかないため、Ctrl-1をキーボードショートカットとして使用することは意味がありません、それは単に1を押下するのと同じです。著者はまた、Ctrl+Shift+Cは制御コードではなく、ターミナルエミュレーターの動作に依存すると指摘しています。ASCIIの公式名称は、元々は電信機械向けに定義されたため、現在ではあまり役に立たないと著者は考えている。著者は、Ctrl-MとCtrl-Iをキーボードショートカットとして使用することを困難と感じています、それらはそれぞれEnterとTabに対応するためです。著者は、さまざまなキーコンビネーションを押下したときに送信される制御コードを特定するためのPythonスクリプトを提供しています。著者は、Ctrl-WやCtrl-Uのような制御コードが、ターミナルがカノニカルモードかノンカノニカルモードかによって異なる動作をすると指摘しています。最後に、著者は、制御コードに関する多くの注意点や衝突があると認め、実際にはこれらの情報が必ずしも役に立たないと述べています。