发射vim。在空缓冲区中,插入两行,其中第一行由3个空格组成,第二行由hello world组成。
下面是一个用点表示空格的示例文件。
...
hello world
现在按gg键。光标移动到第一行的第三个空格。
引用:help gg
<C-Home> or *gg* *<C-Home>*
gg Goto line [count], default first line, on the first
non-blank character |linewise|. If 'start
我在preferences文件中找到了这个设置:
// This controls what happens when pressing up or down when on the first
// or last line.
"move_to_limit_on_up_down": false,
根据简短的描述,当插入符号位于文件的第一行时,当我按向上箭头时,应该会有一些不同。或者当插入符号位于文件的最后一行时,按下箭头。
但是,当我将值(在用户首选项文件中)更改为true和false时,我看不到任何区别。
对于中的设置没有进一步的描述,谷歌也没有帮助。
我经常发现自己不得不在简约的终端上与普通的vi一起工作,这些终端的行为往往与大型发行版上的vim不同,因此这些行为让我感到震惊。
我想知道的不是如何移动到行中的最后一个字符,而是在行后的一个字符。因为键入$不会将插入游标移动到行中的最后一个字符,这很容易证明。我现在正在MSYS上使用vi。
如果我输入行
This is a test
然后点击esc、$、i和<enter>,我将得到以下信息:
This is a tes
t
这表明插入游标是,而不是放在行尾的,而是行中最后一个字符左边的一个(假设框是Notepad++中的一行)。方框位于字母的顶部,这意味着字符将被插入到方框左侧的区
输入:
==abc==
===abc===
====abc====
Vim的命令模式:g/=$/normal b i InsertedtexT→
(别名:)→输出:
==abc==
InsertedtexT===abc===
InsertedtexT====abc====
正常模式的$ b i InsertedtexT→→输出(这是它应该做的):
==abcInsertedtexT==
===abcInsertedtexT===
====abcInsertedtexT====
为了在当前Vim buffer中插入文件中的文本,我使用:r filename在光标下方插入文本,或者使用:0r filename在第一行插入文本。
如何在光标所在的位置插入文件的内容?
Actual line with some coding [Cursor] // TODO for later version
Line below actual line ...