ZSHの単一行と複数行のコマンドでインデントのタブ幅を変更するには?これはリテラルタブ文字と同じではありません。 ZSHは実際にTabキーを押すと端末に空白を表示します。
zsh -f # Run without config
blackcap% echo $'\t.'
.
blackcap% .
blackcap% if
if> .
blackcap% tabs 4
blackcap% echo $'\t.'
.
blackcap% .
blackcap% if
if> .
この動作は端末エミュレータの設定やsetterm --regtabs
。IFS
man zshparam
明らかに自分のバージョンを作成してタブにバインドすることはできますが、カーソルが移動すると行が変わり、2行以上があるため、この最後の手段はすぐに複雑になります。>>
vi A コアフレンドを使うことは言うまでもありません。
答え1
ZLEはプロンプト文字列のタブ文字と入力コマンドラインを表示された空白に展開します。拡張は8列ごとに固定されたタブ停止計算を使用し、端末に実際のTAB文字を発行することと端末の実際のタブ停止設定を含みません。右カーソルを移動するためのショートカットとしてTABを使用すると、terminfo / termcapデータベースがパラメータ化されたカーソルに制御順序がないことを知らせるときに同じ前提があります。 (はい、はい、はい)
ラベルがあるのは幸運です。通常、setterm
Linux KVTを駆動する組み込みLinuxターミナルエミュレータ以外のターミナルエミュレータではutil-linuxを使用しないでください。バラよりhttps://unix.stackexchange.com/a/491883/5132Linux 内蔵端末エミュレータの制御シーケンスをハードコードしないポータブルワーク型プログラムです。