Bash出力用のタブ文字の設定

Bash出力用のタブ文字の設定

moreとコマンドにタブ(タブあたりのスペース数)を設定できますかless? viでは、次の行を追加しました。.vimrc

set tabstop=4

ただし、ファイルを読み取るとき、more各タブはまだ8つのスペースを使用します。

$ more style.css
div {
        width: 100%;
}

.bashrcファイルまたは同様のものとして設定できますか?

答え1

からman less

  -xn,... or --tabs=n,...
         Sets tab stops.  If only one n is specified, tab stops are set at 
         multiples of n.  If multiple values separated by commas are specified,
         tab stops are  set  at  those positions, and then continue with the same
         spacing as the last two.  For example, -x9,17 will set tabs at positions
         9, 17, 25, 33, etc.  The default for n is 8.

マニュアルページでは、setenvまたはexportを使用してlessのデフォルトオプションを設定する方法も説明されています。これをLESS="-x4";export LESS~/.bashrc に追加すると、トリックを実行できます。

答え2

bash私はそれが(またはzshcsh...と他のシェル)の属性だとは思わない。出力を表示する端末の属性です。

expandコマンドを使用してtab数量に変換できますspacesexpandマニュアルページから:

-t, --tabs=NUMBER
              have tabs NUMBER characters apart, not 8

だからあなたはこれを行います:

$ cat test.tabs
a        b        c

$ expand -t 4 test.tabs
a    b    c

関連情報