在Vim中编辑一个非常长的句子

3
我有一个超过5000个字符的SQL查询。我没有鼠标,只有终端Vim编辑器。在测试期间,我需要不时更改此查询的值。它非常长,下一行号码要在按下“向下翻页”键两次后才会出现。
因此,如果我需要编辑,我会去到行首/行尾,并根据需要开始按j k h l。这非常繁琐。有时,使用搜索可以帮助解决问题。我希望您能理解这种情况。
如何使编辑更容易?

我看不到任何图片! - Maciej Los
我字面上的意思是在暗示。 - 0aslam0
4
使用 gkglg0g$ 来在显示的行之间导航。并拆分该该死的查询,所有语言都允许字符串连接。 - Sato Katsura
1个回答

10

这些设置将极大地帮助您:

"Make long lines wrap
set wrap

"Make wraps *not* occur in the middle of a word
set linebreak

"Make the last line look OK
set display+=lastline

"Make 'j' and 'k' go down a visual line, not an entire line
nnoremap j gj
nnoremap k gk

"Make the arrow keys also go down a visual line
nnoremap <Up> gk
nnoremap <Down> gj

"Allow the option to move up entire lines
nnoremap gj j
nnoremap gk k

由于以"开头的行是注释,因此您可以将其直接复制并粘贴到您的.vimrc中。

另一个有用的功能是竖线命令|。如果您键入200|,这将跳转到当前行的第200个字符。

如果您想要的话,还可以包括以下设置:

nnoremap $ g$
nnoremap 0 g0
nnoremap g$ $
nnoremap g0 0

有了这些设置,您可以使用 g0g$ 跳转到此可视行的第一个/最后一个字符,而不是极长行的第一个/最后一个字符。这些设置不会对您造成任何伤害,但我认为我发布的第一组设置更有用。


这些很有用。但希望也能绑定普通的箭头键。 - 0aslam0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接