[英]vim column of increasing numbers
通常我處理看起來像這樣的文件:
0.98 3.45
2.45 3.90
.
.
.
4.56 8.45
讓我們說 100 行。 我想得到這樣的東西:
1 0.98 3.45
2 2.45 3.90
.
.
.
100 4.56 8.45
第一列整數。 我通常做的是生成一個只有數字 1,2...100 的列文件,然后選擇該塊並將其粘貼到包含兩列的文件中。 由於行數幾乎總是不同,我的方法似乎很慢。
你有什么建議嗎?
謝謝。
:%s/^/\=printf('%-3d ', line('.'))
更多信息:
:help :s\=
:help printf()
:help line()
:%!cat -n
是一個快速解決方案。 其次是
:%s/^\s*//g
它可以很快地為您提供您想要的東西。
為了生成一個序列號列, nl
是你的朋友。 假設您要生成從1
到n
:
在vim中創建一個包含n
行的文件。
運行:%!nl
。
現在,您可以使用<Cv>
選擇數字列並將其復制到其他位置。
這是另一種僅 vim 的普通模式版本。 將光標放在第一列的第一行:
<C-v>GI0 <ESC>gvg<C-a>
<Cv>
可視塊模式 ( :help visual-block
)G
選擇到屏幕底部( :help G
)I
在第 1 行開始插入模式( :help v_b_I
)0
輸入文字零和文字空格<ESC>
回到普通模式gv
重新選擇最后一個視覺選擇(第 1 列的所有內容)( :help gv
)g<Ca>
依次遞增選擇中的所有數字( :help v_g_CTRL-A
)變成這個
0.98 3.45
2.45 3.90
4.56 8.45
進入這個
1 0.98 3.45
2 2.45 3.90
3 4.56 8.45
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.