衆所周知,:set number
會在vim中顯示行號。不過,我遇到了這個問題。當我使用:set linebreak
並達到一個新行時,一個數字不會與該換行符一起顯示。據我瞭解,這些被稱爲顯示線。顯示行上的Vim行號
tl; dr 如何將行號添加到顯示行?
衆所周知,:set number
會在vim中顯示行號。不過,我遇到了這個問題。當我使用:set linebreak
並達到一個新行時,一個數字不會與該換行符一起顯示。據我瞭解,這些被稱爲顯示線。顯示行上的Vim行號
tl; dr 如何將行號添加到顯示行?
這不是vim的一個特性。如果你想包裝/斷開的線實際上是新的線,爲什麼你不實際上使他們新線?
gqq
重新格式化使用textwidth
settting要獲得自動格式化當前段落會:
set fo=tcrwa textwidth=80
現在,只要你鍵入的文本會環繞。在自動換行時,在上一行保留一個尾部空格,表示它還不是段落的結尾。
謝謝你,這是一個很好的答案。並解決了這個問題。 – user419627
很高興爲您提供幫助 – sehe
假設您想在vim中編輯,然後粘貼到Google文檔或MS Word中...你不需要實際的新行,但是顯示行的行號仍然很好,這樣你就可以逐行包裝行,然後當你複製並粘貼到文檔或Word中時,它就可以工作。 – trusktr
沒有命令:linebreak
。你的意思是:set linebreak
?
Vim顯示的行號對應於文件中的實際行,而不是「顯示行」。如果您點擊<Enter>
,則會創建一個真正的新行,Vim會正確顯示其編號。
或者您有:set wrap
?在這種情況下,包裝線只是一個演示技巧:因爲它仍然是一條真正的線條,所以顯示不存在的線條的線號沒有任何意義。無論如何,即使是:set wrap
,擊球<Enter>
仍然創造了一條真正的新線。所以我不確定你的問題究竟是什麼,這裏。
如果你想讓Vim顯示顯示行,而不是實際的物理線路,這是不可能的。這也沒有意義,因爲除了gj
/gk
之外,沒有任何移動命令在顯示行上起作用,並且在:[range]
中不能使用它們。
我很挑剔 - 我完全同意你的答案 - - 但移動命令'g $','g ^','g0'和'g_'也可用於顯示行。我不確定在任何地方是否有完整的列表。 –
@PrinceGoulash:你的附加命令水平移動(除非給出了一個計數 - 我添加了這個來防止另一個挑選:-),但對於這個問題,只有垂直移動到其他線是重要的;這就是爲什麼我沒有提到他們。儘管感謝您的注意和評論。 –
這將是很好,但。它必須是一個新功能或一個插件。如果我們有相對的顯示行編號,它會讓事情變得像5gj一樣輕鬆地移動5個視線。這可能可以通過爲顯示行編寫自己的陰影插件來完成,但這可能很棘手。 – trusktr
這是因爲你打開了wordwrap嗎?嘗試使用':set nowrap'來查看是否有幫助。 –
看到[這](http://stackoverflow.com/questions/319925/difference-between-hard-wrap-and-soft-wrap)看看是否有幫助。 – none
這個請求的一個具體用例:我已經成爲使用帶有相對行號的統治者來幫助導航的狂熱粉絲,所以當我看到我想要編輯的行旁邊有一個'5'時,我可以鍵入'5j'快速到達那裏。儘管使用了單詞換行,但這不起作用,因爲我跳下了5 **顯示** **行**,而不是其旁邊有'5'的實際行。所以我輸入'5j',看到我實際上只有一半,現在我的目標行在它旁邊有一個'3'...'3j',不,還沒有,再試一次。關閉換行不是一種選擇,因爲我需要查看所有文本。 –