繁体   English   中英

在vim中将光标移动到文件末尾

[英]Move cursor to end of file in vim

当我想让光标在 Vim 中移动到文件的末尾(即最后一行的末尾)时,我必须键入六次击键:

<ESC>G$a - 在我的键盘布局上转换为ESC + Shift g + Shift 4 + a

我怎样才能更有效地做到这一点?

由于我经常在许多不同的机器上工作,我不能总是更改 .vimrc,所以我正在寻找答案而无需编辑或创建该文件。

这样更快。 就用这个

:$

在执行a之前无需显式转到行尾,使用A
在行尾追加文本 [count] 次

<ESC>GA

按 Esc然后按: Shift + G

对于初学者来说,没有必要返回。 G$会做。 并且您在正常模式命令的长度中计算<Esc>a会产生误导。

但是,如果您愿意,可以使用Ctrl + End

转到顶部 - 双g

转到底部 - Shift + g

我以为问题是“在 vim 中将光标移动到文件末尾”?

文件结束: Esc + G
文件开头Esc + g (如果您已经在命令区域中,则为gg

转到文件最后一行的最佳方法是使用G 这会将光标移动到文件的最后一行。

转到该行最后一列的最佳方法是使用$ 这会将光标移动到当前行的最后一列。

因此,只需执行G$到达文件的末尾和最后一行。

如果您想在文件末尾进入插入模式,那么您只需执行GA 通过这样做,您可以转到文件的最后一行,并通过附加到最后一列来进入插入模式。 :)

如果您打算写下一行, ESC G o将执行回车并将您置于下一行(文件末尾)的插入模式,从而节省更多的击键次数。

  • Ctrl + Home = 跳转到文件开头
  • Ctrl + End = 跳转到文件末尾

尝试执行SHIFT + G ,您将在页面的末尾,但您还不能编辑。 通过做G + G到顶部

这更快:

<ESC>GA

您可以将其映射到 .vimrc 中的一个键,例如 F3

inoremap <F3> <Esc>GA

我一直在寻找将光标移动到行尾然后在 mac 终端上进行编辑的方法,这对我来说是如何工作的。 退出编辑模式,输入 g_(即 'g' 然后下划线,前面没有冒号),然后只需按 'a' 键,这样您就可以将代码“添加”到您的脚本中

另一种选择:

:call cursor('.',strwidth(getline('.')))

如果您正在编写函数,这可能很有用。 另一种情况是当我需要打开一个特定的模板并跳转到第一行的末尾时,我可以这样做:

vi +"call cursor('.',strwidth(getline(1)))"  notetaking_template.txt

以上也可以用

vi +"execute ':normal! $'" notetaking_template.txt

也可以看看:

vim - 获取当前行的长度

如果要在文件类型的末尾粘贴一些剪贴板内容:

:$ put +

$ ............ last line
put .......... paste 
+ ............ clipboard
  • 要转到最后一行并保留您已经在其中的列: Shift + g

  • 在此移动之后转到行尾: Shift + $

我们可以使用Shift + g + $组合这些动作

请记住, g + g会将您返回到文件的开头。

您所要做的就是按 ESC 然后按 SHIFT G,光标将移动到文件的末尾。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM