使用macvim。假設我在編輯器中有一個句子佔用了5行。第二句話佔據了下5行。從光標在第1行開始。在正常模式下,按j
將帶我到下一句(即第6行)。按行移動而不是按句子移動
如何將此行爲更改爲按j
將我帶到第2行(仍然是第一句話的一部分?)。或者,而不是使用j
,以任何其他方式來實現這一目標?
使用macvim。假設我在編輯器中有一個句子佔用了5行。第二句話佔據了下5行。從光標在第1行開始。在正常模式下,按j
將帶我到下一句(即第6行)。按行移動而不是按句子移動
如何將此行爲更改爲按j
將我帶到第2行(仍然是第一句話的一部分?)。或者,而不是使用j
,以任何其他方式來實現這一目標?
實際的問題是行(不是句子)太長,並且它包裹到多條顯示行。 j
和k
的默認移動將以實線移動光標,而不是顯示線。
您可以重新映射j
和k
在正常模式下的顯示行做的舉動:
nnoremap j gj
nnoremap k gk
(在你的.vimrc)。
j
帶你到下一行。我認爲你有一個術語問題(「句子」並不意味着你認爲它的含義)。如果j
不會將您帶到屏幕上的下一行,這是因爲該文件包含非常長的一行(您稱之爲「句子」),它太寬而無法放在屏幕上。如果線條很長,則顯示在幾條屏幕線上。 Vim稱之爲「顯示行」。命令j
移動到下一個文件行的相同位置; gj
移動到下一個屏幕行上的同一列。
這條線就是你所說的「句子」。 'set nowrap'會顯示爲一條線。我認爲,沒有辦法做到這一點,因爲該「行」的長度取決於窗口的大小,並且在這些「行」之間沒有實際的分隔符。 – khachik 2011-05-24 09:05:29