Vim的基础命令

windows系统,GitBash

最基本的一些命令和知识

  • 进入vim之前先创建一个文件,以ABC.html为例
  • GitBash中创建好之后,输入vim ABC.html打开它就进入vim
  • 直接进入的是命令模式,按i可切换到编辑模式,ESC退出
    :wq存盘退出(:w后可加文件名,:q!强制退出当前vim,不保存;:qa!强制退出所有的正在编辑的文件,就算别的文件有更改)
  • 大部分命令是区分大小写的,个别不是——大写的是一种功能,小写的就是另一种功能了。

以下内容来源《Learn Vim Progressively》
的中文版翻译。。


正文

在一般的编辑器下,当你需要copy一段文字的时候,你需要使用Ctrl 键,比如:Ctrl-C。也就是说,Ctrl键就好像功能键一样,当你按下了功能键Ctrl后,C就不在是C了,而且就是一个命令或是一个快键键了,在VIMNormal模式下,所有的键就是功能键了。这个你需要知道。

下面例举了一些较为有用的命令

简单的移动定位命令

hjkl——命令模式下的上下左右移动键,分别对应“左”,“下”,“上”,“右”
H——快速定位到当前段落开头行头
L——快速 定位到当前段落结尾最后一行行头
0(数字零)——到行头
^——到本行第一个不是blank字符的位置(blank——空格,tab,换行,回车等)
-——从光标所在行头到上一个行头
$——到本行行尾
g-——到本行最后一个不是blank的位置
/better——搜索better的字符串(如有多个匹配可按n键来切换到下一个)


各种插入命令

a——在光标后插入
o——在当前行后插入一个新行
O——在当前行后插入一个新行
cw——替换从光标所在位置后到一个单词结尾的字符

拷贝/粘贴

dd——删除当前行,并把删除的行存到剪贴板
p——粘贴到剪贴板,在当前光标位置之后;
P——粘贴到剪贴板,在当前光标位置之前
x——删除当前光标所在的一个字符
yy——拷贝当前行,相当于ddP

Undo/Redo

u——Undo
<C-r>——Redo

打开/保存/退出/改变文件

:e<path/to/file>——打开一个文件
:saveas<path/to/file>——另存为<path/to/file>
:x,ZZ或:wq ——保存并退出(:x——仅在需要时保存;ZZ——不需要:保存后退出)

                          :bn和:bp——你可以同时打开很多文件,使用这个命令来进行切换下一个或上一个文件

当你掌握了上面这些命令后,你就能干其他编辑器能干的事了

进阶的命令

可以和vi兼容的命令

重复命令

2dd——删除2行
3p——粘贴文本三次
100idesu[ESC]——输入100个desu
.——重复上一个命令
3.——重复3个desu

光标移动

:N或者NG——到第N行
gg——到第一行
G——到最后一行

按单词移动:

w——到下一个单词的开头
e——到下一个单词的结尾
W——到下一个单词的开头(含blank符号)
E——到下一个单词的结尾(含blank符号)

word_moves.jpg

%——匹配括号移动
和#——匹配光标当前单词移动,是下一个,#是上一个

熟练记忆了一些基本的命令后,通过以上这些简单的命令还可以组合起来使用

譬如

0y$表示

0——先到行头
y——从这里开始拷贝
$——拷贝到本行最后一个字符

ye表示从当前位置拷贝到本单词的最后一个字符
y2/foo表示拷贝2个foo之间的字符串

还有一些与y无关的拷贝,下面这些命令在执行的同时已经将你改变的字符或者字符串剪贴到剪切板上了

d(删除)
v(可视化选择)
gU(变大写)
gu(变小写)

掌握以上这些基本命令,应该算是vim入门的基础了吧

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文章转载来自[Vim简明教程]http://blog.csdn.net/niushuai666/article/...
    王巍阅读 3,490评论 0 4
  • 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令...
    im蚂蚁阅读 30,925评论 3 48
  • Vim几句话介绍Vim是Unix系统上的文本编辑软件(你该不会不知道什么是文本编辑软件吧!),在windows上也...
    何必遠方阅读 8,409评论 0 3
  • 转自 http://coolshell.cn/articles/5426.htmlvim的学习曲线相当的大(参看各...
    PHPNOTE阅读 2,649评论 0 1
  • 陈皓 vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,...
    JosephDHF阅读 3,297评论 0 2