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

时间:2016-08-03 05:51:47

标签: sql vim editor

我有一个超过5000个字符的SQL查询。我无法访问鼠标,只有终端Vim编辑器。在测试期间,我需要在这里和那里更改此查询的值。它太长了,在按下页面向下的2个屏幕后出现下一个行号。

因此,如果我需要编辑,我会转到该行的开头/结尾,并根据需要开始按j k h l。这非常烦人。有时,进行搜索有帮助。我希望你能理解这种情况。

如何让编辑更容易?

1 个答案:

答案 0 :(得分:7)

这些设置可以帮助您

"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

另一个有用的功能是bar命令|。如果键入 200 | ,则会跳转到当前行的第200个字符。

如果需要,您还可以包含以下设置:

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

使用这些设置,您可以使用g0g$跳转到此视觉线上的第一个/最后一个字符,而不是超长线上的第一个/最后一个字符。这些设置不会受到影响,但IMO发布的第一组设置更有用。