入力をTSVと見なして、同じ列は縦に揃えて空白文字で埋めて出力する。 [オプション] : -b char ; 間に埋める文字列。未指定なら半角空白 ' ' 。例として -b "-" 。betweenのbのつもり。 -c char ; 列間で、列の直前に入れる文字。未指定なら半角空白 ' ' 。例として -c "|" 。connectorのcのつもり。 -f : ある行が列の数が少ないときに、最も列数の多い行に合わせて、列の数を増やす指定。 -i delim : 区切り文字の変更。未指定なら、タブ文字。(出力は空白文字うめであり、変えない。) -r N : 最も右側の列を何列について、文字幅の計算の対象外とするかの 値の指定。未指定なら 0。 -s N : (実験的)出力の各セルにおいて、長すぎるセルを可能であれば埋めた空白をさらに幅何文字分(半角相当)まで縮めるか指定。 -x : less に渡す引数(-xによるタブ位置の指定)のみを出力して終了。時には、とても便利。 -D num : このコマンドの動作についてのデモを表示して終了。numは1〜4。(開発上テストでも使う。) --delcolor : 単に入力の着色(ASCIIエスケープシーケンスによるもの)を除去。テスト機能であり、おまけの機能である。 --right : 右揃えにする。この指定が無いと、左揃えである。 --keep 'CRLF' : Windows形式だと改行文字が CR LF となるが、そのCRの部分を取り除く操作を、このオプション指定だと抑制する(テスト目的などを想定)。 --help : この $0 のヘルプメッセージを出す。 perldoc -t $0 | cat でもほぼ同じ。 --help opt : オプションのみのヘルプを出す。opt以外でも options と先頭が1文字以上一致すれば良い。 開発メモ: * 行列として変数Cを参照するときに値が未定義の時にどうすれば良いか。 * INT{ALRM}を使って15秒ごとに、一旦出力する機能を付けたい。 * Ctrl+ZやCtrl+Cに対する機能を付けたい。 * -x による less の -xに渡す数の配列を STDERR に出力したい。その場合、2次情報の出力を抑制する -20も実装することになるであろう。 * --rightにおいて、特定の列だけ、または、特定の列以外を右寄せに出来ないだろうか? * 出力の最後が余分に1行出力されている問題が発生中。 Text::VisualWidth のインスートルがあらかじめ必要である。
To install App::expandtab, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::expandtab
CPAN shell
perl -MCPAN -e shell install App::expandtab
For more information on module installation, please visit the detailed CPAN module installation guide.