当前位置:首页 > 开发 > 开源软件 > 正文

Vim光标移动

发表于: 2014-11-28   作者:dcj3sjt126com   来源:转载   浏览次数:
vim
摘要: 最近全面转换开发到Mac OS下,用MacVim作为IDE。记录一些Vim基本操作给自己备忘。 此次所说的都是在common-mode(c-mode,在Vim又名normal-mode,就是刚进入vim,不能输入文字的状态)下的移动,原始的vi 只能在c-mode 移动光标,在insert-mode 只做文字的输入,而不做光标的移动。当然Vim及elvis 的方向键是不论在那一种mode 皆可移

最近全面转换开发到Mac OS下,用MacVim作为IDE。记录一些Vim基本操作给自己备忘。

此次所说的都是在common-mode(c-mode,在Vim又名normal-mode,就是刚进入vim,不能输入文字的状态)下的移动,原始的vi 只能在c-mode 移动光标,在insert-mode 只做文字的输入,而不做光标的移动。当然Vim及elvis 的方向键是不论在那一种mode 皆可移动自如。

基本的光标移动

 

h 左,或Backspace 或方向键。
j 下,或Enter 或+(要Shift 键),或方向键。
k 上,或方向键或-(不必Shift 键)。
l 右,或Space 或方向键。
Ctrl+f PageDown 翻页(Forward,向前、下翻页)。
Crtl+b PageUp 翻页(Backward,向后、上翻页)。



同样的,比如20h,就是光标向左移动20字符;20j,光标向下移动20字符;其他类似。

 

使用 hjkl
键的移动是为了使手不必离开打字区(键盘中央的部位),以加快打字的速度,如果各位不习惯,那就使用方向键吧!其实,一旦习惯了以后,对于编辑工作的效率
会有很大的帮助,而且有许多工作站的vi 只能使用hjkl 的移动方式,因此可能的话,尽量熟悉hjkl 的光标移动。

BackspaceSpace的移动方式是到了行首或行尾时会折行,但方向键或hl 键的移动则在行首或行尾时您继续按也不会折行。转折换行的功能是Vim的扩充功能,elvis 无此功能。

 

jk 及使用方向键的上下移动光标会尽量保持在同一栏位。使用Enter,+,-的上下移动,光标会移至上(下)一行的第一个非空白字元处。

好像有点复杂,各位就暂时使用方向键来移动就简单明白了!等您爱上了Vim后再来讲究吧。

进阶的光标移动

 

0 是数目字0 而不是英文字母o。或是Home 键,移至行首,(含空白字元)。
^ 移至行首第一个非空白字元,注意,要Shift 键。
$ 移至行尾,或End 键。要 Shift 键。
G 移至档尾(全文最后一行的第一个非空白字元处)
gg 移至档首(全文第一行之第一个非空白字元处)。


在规则表示式(regular expression)中,^ 是匹配行首,$ 是匹配行尾。

 

gg 是Vim的扩充功能,在elvis 或原始vi 中可用1G 来移至档首(是数字1 不是英文字l )。 G 之原意是goto,指移至指定数目行之行首,如不指定数目,则预设是最后一行。

w 移至次一个字(word)字首。当然是指英文单字。
W 同上,但会忽略一些标点符号。
e 移至后一个字字尾。
E 同上,但会忽略一些标点符号。
b 移至前一个字字首。
B 同上,但会忽略一些标点符号。
H 移至屏幕顶第一个非空白字元。
M 移至屏幕中间第一个非空白字元。
L 移至屏幕底第一个非空白字元。这和PageDownPageUp 不一样,内文内容并未动,只是光标在动而已。
n| 移至第n 个字元(栏)处。注意,要用 Shift 键。 n 是从头起算的。
:n 移至第n 行行首。或 nG。

 

特殊的移动

 

) 移至下一个句子(sentence)首。
( 移至上一个句子(sentence)首。 sentence(句子)是以 . ! ? 为区格。
} 移至下一个段落(paragraph)首。
{ 移至上一个段落(paragraph)首。 paragraph(段落)是以空白行为区格。
% 这是匹配{},[],() 用的,例如光标在{ 上只要按%,就会跑到相匹配的} 上。

Vim光标移动

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
我接触linux的时候,用的是nano这个文本编辑器,个人觉得他的最大优点就是方便,快速。打开文件,修
我接触linux的时候,用的是nano这个文本编辑器,个人觉得他的最大优点就是方便,快速。打开文件,修
移动光标 上:k nk:向上移动n行 9999k或gg可以移到第一行 G移到最后一行 下:j nj:向下移动n行 左:h n
#include <ncursesw/ncurses.h> #include <locale.h> int main(void){ //init_pair(sho
#include <ncursesw/ncurses.h> #include <locale.h> int main(void){ //init_pair(sho
开始准备学习下C,新手哦~~ 今天弄了个控制台程序,光标可以随意在DOS下移动~~ 先放一张效果图,不
vi/vim使用进阶: 指随意动,移动如飞 (一) 11 条回复 << 返回vim使用进阶: 目录 本节所用命令
8 vim
【转】vim 超级攻略 vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始
9 VIM
1、安装 c++ 的 man 文档(此不是VIM插件) 从 http://gcc.gnu.org/mirrors.html 的其中一个镜像站
10 vim
配置文件:.vimrc 下面是一个适合编程使用的VIM配置文件: " User definitions ===================
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号