![固定幅テキストを作成するために vim を使用していますか?](https://rvso.com/image/1395407/%E5%9B%BA%E5%AE%9A%E5%B9%85%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AB%20vim%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%81%8B%3F.png)
フォームにテキストがあります
xxxx yyyyy
xx yyyy
xxxxxxxx yyyyy
x y
各行の2番目のセットを同じポイントから開始したい、つまり
xxxx yyyyy
xx yyyy
xxxxxxxx yyyyy
x y
vim を使用したエレガントな解決策が思いつかず、手動で何かを行うよりも多くの時間を解決策に費やすといつも困ってしまいます。誰かが賢い解決策を思いついたら、次回のためにいつでも参考にできます。
答え1
仕事をやり遂げる賢い検索/置換トリックをいくつか見たことがありますが、それを記憶に留めることができないのです。だから、これは私が使っている方法の1つです。(そして推奨)プラグイン。
使用整列、これは単なる
- VG (select all)
- <leader>tsp (align whitespace)
ヘルプから
--------------------------- *alignmap-Tsp*
Alignment Map Examples: \tsp *alignmap-tsp* {{{3
---------------------------
Normally Align can't use white spaces for field separators as such
characters are ignored surrounding field separators. The \tsp and
\Tsp maps get around this limitation.
Original: >
one two three four five
six seven eight nine ten
eleven twelve thirteen fourteen fifteen
<
Becomes: Select the lines, \tsp >
one two three four five
six seven eight nine ten
eleven twelve thirteen fourteen fifteen
<
Becomes: Select the lines, \Tsp >
one two three four five
six seven eight nine ten
eleven twelve thirteen fourteen fifteen
<