题 如何在Vim中移动到行尾?


我知道如何一般在命令模式中移动,特别是跳转到线路等。但是跳到我目前所在线路末端的命令是什么?


979
2017-09-19 21:19


起源


不到10分钟即可完成基本的vim命令 youtube.com/watch?v=71YTkxUNwmg - eomeroff
花几分钟时间通过vimtutor出了什么问题?它已经成为您Vim安装的一部分,并向您展示了基础知识。 - dash-tom-bang


答案:


只是 $  (美元符号) 键。您可以使用 一个 移动到行尾并切换到编辑模式(追加)。

相反的 一个 是 一世 (在行的开头插入模式),作为旁边。


1771
2017-09-19 21:20



与A相反(在行首的插入模式)是 I - buley
跳到最后非空白 g_ - SergioAraujo
有时更有用了 g_ 变异,因为它不包括空白字符 - rogercampos
在可视模式下工作时,_g变体非常有用,因为它允许您在最后使用没有任何换行符的行。 - Greg Robbins
Home和End键在普通键盘上工作,当你使用笔记本电脑时需要$和^ :) - Sridhar-Sarnobat


很多人都说:

  • $ 让你走到终点

但也:

  • ^ 要么 _ 让你到达该行中的第一个非空白字符,并且
  • 0 (零)让你到行的开头,包括。空白

274
2017-09-19 22:22



我知道了让我们到行的开头,但我不知道0.所以0和|做同样的事情,是吗? - Kamran Bigdely
@kami:虽然描述不同,但它们看起来行为相同。管道 | 命令可以计数,例如3 |跳到第三列。 - Paul Ruane


  • $ 移动到该行的最后一个字符。
  • G  _ 转到最后一个非空白字符。

  • G  $ 到屏幕行的末尾(当缓冲线被包裹在多个屏幕行上时)


116
2017-09-28 11:04



我觉得g_和$ b一样 - Dave Aaron Smith
@DaveAaronSmith: b 转到上一个词的开头,这根本不是一回事。它大致相当于 $ge。 - Paul Ruane
@PaulRuane你是对的,对不起。 - Dave Aaron Smith
我用 _ 和 g_ 视觉/ yanking,as $ 还将复制/删除新行(LN)字符。 - Ernest
对我来说,$会转到当前屏幕行的末尾(换行时)。我还没弄清楚原因。 g_ 是我找到的唯一方法来到线的实际结束。 - ezuk


主要问题 - 行尾

$ 到了行尾,仍处于命令模式

一个 转到行尾,切换到插入模式

相反 - 开始行(技术上是第一个 非空白 字符)

^ 进入行首,保持在命令模式

一世 (大写i)转到行的开头,切换到插入模式

进一步 - 开始行(技术上是第一列,不管是什么 空白

0 (零)进入行的开头,保持在命令模式

0I (零后跟小写i)开始行,切换到插入模式

对于那些开始学习vi的人来说,通过列出并排vi命令到典型的Windows GUI Editor光标移动和快捷键,这里是对vi的一个很好的介绍。

适用于Windows用户的vi编辑器


43
2018-02-07 11:02



类似于 I 不是 0 但 ^, 既 I 和 ^ 去第一个 非空白 这条线的性质但是 0 转到第0列(顾名思义)。 - wchargin
@wchargin是的,以为我似乎无法找到什么类似物 0 将会 ? (转到该行的第一个字符(=第0列)并转到插入模式) - franssu
@franssu:我所知道的唯一一个是 0i。 :-) - wchargin
@wchargin - 感谢您的技术正确性。我已经更新了帖子。 - ap-osd


如果当前行环绕可见屏幕到下一行,您可以使用 G $ 到了最后 屏幕 线。


37
2017-09-19 22:49



我刚刚发现了预先挂起的up和down命令 G 使vim移动基于屏幕的光标,而不是基于行。即 GJ 和 GK 允许你在很长的路线上上下移动。真有用。 - Druckles
还发现输入gw和其他东西似乎有所改变 Ĵ 和 ķ 永久地表现得像这样。不确定如何或为什么。有谁能解释一下? - Druckles
@Druckles:有点迟到的回复,但是如果你还在想,(或者如果有人读到这个) gw 和 gq 是重新格式化文本的命令。 (看到 :h gw 和 :h gq)你做的可能发生了什么 gw{motion} 并更改了一些文字,使屏幕线对应实际线条。 - pandubear


美元符号:$


12
2017-09-19 21:20





'End'键的优点是它可以在普通和插入模式下工作。

'$'仅在正常/命令模式下工作,但它也适用于经典的vi编辑器(很好知道什么时候vim不可用)。


12
2017-09-19 22:05



你在插入模式下徘徊了什么?!在白天之后,没有普通的体面的公民去那里。你知道那里发生了什么,不是吗?代码消失了,你知道吗?它消失了,再也没有听到过。 - Rook
谢谢你,因为我喜欢在我输入后保持插入模式。不幸的是我的笔记本电脑没有End键。 :( - ray