当我想在Vim中把光标移到文件的末尾(即最后一行的末尾)时,我必须键入6个按键:
<ESC>G$a -在我的键盘布局上转换为ESC + 转变g + 转变4 + 一个。
<ESC>G$a
我怎样才能更有效地做到这一点呢?
由于我经常在许多不同的机器上工作,我不能总是更改.vimrc,所以我在不编辑或创建该文件的情况下寻找答案。
您可以将它映射到.vimrc中的一个键,例如F3
inoremap <F3> <Esc>GA
在执行a之前不需要显式地执行到行尾,使用A; 在行[count]的末尾追加文本次数
a
A
<ESC>GA
首先,没有必要退货。G$就可以了。并且你会因为在普通模式命令的长度中计算<Esc>和a而受到误导。
G$
<Esc>
但是,如果你愿意,你可以使用Ctrl + 结束。
转到文件最后一行的最佳方法是使用G。这将把光标移动到文件的最后一行。
G
转到该行最后一列的最佳方法是使用$。这将把光标移动到当前行的最后一列。
$
因此,只要执行G$,就可以到达文件的末尾和最后一行。
如果你想在文件末尾进入插入模式,那么你只需执行GA。通过这样做,您可以转到文件的最后一行,并通过向最后一列追加内容进入插入模式。:)
GA
点击Esc,然后按:转变 + G
这样比较快。就用这个
:$
我以为问题是“移动光标到文件的结束在vim”?
文件结束:Esc + G 文件开头Esc + g(如果你已经在命令区,则为gg)
gg
如果您计划编写下一行,ESCGo将执行回车,并将您置于插入模式下一行(在文件的末尾),从而节省更多的击键次数。
Ctrl + Home
Ctrl + End
我一直在寻找一种方法,将光标移动到一行的末尾,然后在mac终端上编辑,这是它如何为我工作的。退出编辑模式,输入g_(即“g”,下划线,前面没有冒号),然后简单地按下“a”键,这样你就可以向脚本“添加”代码了
另一个选择:
:call cursor('.',strwidth(getline('.')))
vi +"call cursor('.',strwidth(getline(1)))" notetaking_template.txt
以上也可以做到
vi +"execute ':normal! $'" notetaking_template.txt
参见:
vim -获取当前行长度
转到Top - Double g
进入底部- 转变 + g
如果你想在文件类型的末尾粘贴一些剪贴板内容:
:$ put + $ ............ last line put .......... paste + ............ clipboard
尝试执行SHIFT + G,你将在页面的末尾,但你还不能编辑。通过执行G + G跳转到顶部
SHIFT + G
G + G
转到最后一行并保留您所在的列: Shift + g
我们可以使用转变 + g + $来把这些动作结合起来
记住,g + g将返回到文件的开头。
你所要做的就是按ESC,然后SHIFT G,光标将移动到文件的末尾。