Vim

命令名称 快捷键
删当前光标所在的一个字符 x
在光标后插入 a
替换光标所指向的当前字符 r<加想要替换的字符>
到下一个单词的开头(但会停在标点前) w
到本单词的结尾 e
到本单词的开头 b
到上一个句子的开头 (
到下一个句子的开头 )
查找上一个匹配项 *
查找下一个匹配项 #
匹配括号移动 %
删除直到下一个单词前 dw
自动补全 ctrl+n
对整数加一 ctrl+a
修改双引号内的所有文字 f”ci”(那个i表示inside)

编辑当前行

命令名称 快捷键
在本行第一个非空格字符处插入 I
在本行最后一个字符之后插入 A
删除当前行 dd
删除本段光标(及)右侧所有字符 d}
移动到字母x前 fx
粘贴 p
在当前行后插入一个新行 o
在当前行前插入一个新行 O
到行头 0
到本行第一个不是空字符的位置 ^
到本行行尾 $
复制当前行 yy

编辑整个文章

命令名称 快捷键
到第n行 :n或nG
到第1行 gg
到最后一行 G
删除直到最后一行 dG
page up ctrl+b
page down ctrl+f
将光标移到屏幕上的第一行 H
将光标移到屏幕上的最后一行 L
将光标移到屏幕上的第二行 2H

程序功能

命令名称 快捷键
帮助 :help
打开一个文件 :e
另存为 :saveas
保存并退出 :x或ZZ
切换下一个或上一个文件 :bn和:bp
移动 hjkl
搜索 /pattern,反向搜索用?
替换(替换全部) :s/pattern/replacement
撤销 u
重做 Ctrl+r
继续搜索下一个 n
搜索上一个 N
以root权限保存 :w !sudo tee %
分屏,之后按两次ctrl+w或一次加上方向可以切换 :split

可视化选择

  • 按v之后移动光标可以选择。选好后按d删除,按gU改成大写,按gu改成小写。
  • 按V是选择一行。
  • 按ctrl+v开始块操作。之后: J:把所有的行连接起来(变成一行) < 或 >:左右缩进
  • 格式化代码(自动缩进):gg到第一行,V行选择,G移动到最后一行,按=进行缩进

重复

  • .可以重复上一次的命令
  • N:重复某个命令N次

行尾格式/删除^M

https://www.zhihu.com/question/22130727

  • 查看行尾格式::set ff?;或者用file命令
  • 以某种行尾格式保存::set ff=unix/dos;以某种行尾格式打开::e ++ff=unix/dos
  • 经过实验,如果全文都是CRLF结尾的,vim可以正常识别;只有当有些以CRLF结尾,有些以LF结尾,又以LF模式打开的时候,vim才会出现^M(或者主动以另一种方式打开)
  • 两种格式的转换可以用dos2unix这个程序,它同时会附带unix2dos命令;处理多个文件可以用find+xargs
  • 使用%s/^M//g清除掉^M,其中^M可用ctrl + v,ctrl + m按出来

正则表达式和magic

http://qianjigui.iteye.com/blog/368449

vim中有个magic的设定。设定方法为:
:set magic ” 设置magic
:set nomagic ” 取消magic

vim毕竟是个编辑器,正则表达式中包含的大量元字符如果原封不动地引用(像perl那样), 势必会给不懂正则表达式的人造成麻烦,比如 /foo(1) 命令, 大多数人都用它来查找foo(1)这个字符串, 但如果按照正则表达式来解释,被查找的对象就成了 foo1 了。

于是,vim就规定,正则表达式的元字符必须用反斜杠进行转义才行, 如上面的例子,如果确实要用正则表达式,就应当写成 /foo\(1\) 。 但是,像 . * 这种极其常用的元字符,都加上反斜杠就太麻烦了。 而且,众口难调,有些人喜欢用正则表达式,有些人不喜欢用……

为了解决这个问题,vim设置了 magic 这个东西。简单地说, magic就是设置哪些元字符要加反斜杠哪些不用加的。 简单来说:

  • magic (\m):除了 $ . * ^ 之外其他元字符都要加反斜杠
  • nomagic (\M):除了 $ ^ 之外其他元字符都要加反斜杠

 

设置编码

https://www.zhihu.com/question/22363620

  • 查看编码::set fenc?;或者使用file命令可以查看文件编码
  • 自动检测编码(写进.vimrc)::set fileencodings/fencs=ucs-bom,utf-8,utf-16,gbk,big5,gb18030,latin1
  • 按指定编码保存::set fileencoding/fenc,如果写进.vimrc就是创建文件的默认编码
  • 按指定编码打开::e ++enc=someencoding somefile(重新打开当前文件,省略somefile即可)
  • 不要改encoding这个设置,它是vim的内部编码

其他设置

  • 配置一个tab为4个空格:https://blog.csdn.net/jiang1013nan/article/details/6298727
  • 设置默认编辑器:select-editor或者update-alternatives --config editor,然后进行选择

设定好的配置

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com 徽标

You are commenting using your WordPress.com account. Log Out /  更改 )

Google+ photo

You are commenting using your Google+ account. Log Out /  更改 )

Twitter picture

You are commenting using your Twitter account. Log Out /  更改 )

Facebook photo

You are commenting using your Facebook account. Log Out /  更改 )

Connecting to %s