vim reference

一.常用编辑
1.  删除一行 dd
2.  合并一行(删除回车) J
3.  撤销 u ,撤销一整行的改变 U,如果撤销的太多,可以使用Ctrl+r来恢复
4.  e!强制从新加载当前文件
5.  移动光标 可以使用数字+方向,如向上移动5行可以使用5k
二.移动
1.   [n]w 光标移动后面第n个单词的首字母
2.  [n]b  光标移动到前面第n个单词的首字母
3.  [n]e 光标移动到后面第n个单词的尾字母
4.  [n]ge 光标移动到前面第n个单词的尾字母
5.  [n]$光标移动到行尾
6.  [n]^光标移动到行首
7.  [n]f[x] 向光标后面查找字母x,并使光标移动到该字母的位置
8.  [n]F[x]向光标前面查找字母x,并使光标移动到该字母的位置
9.  %   如果光标在(上,使用%那么光标将会定位到和该左括号匹配的右括号上
10.   gg 光标移动到文件开始位置
11.   G 光标移动到文件结尾位置
12.    [n]G  光标移动到第n行
13.   [n]%移动光标到文件的某个位置,如50%,移动光标到文件中间位置
14.   在可视的区域移动光标 H  M  L分别代表 Home   Middle  Last
15.  Ctrl+g 显示光标所在位置
16.  Ctrl+u 向上翻半屏   u指up
17.  Ctrl+d 向下翻半屏  d指down
18.  Ctrl+f  向下翻一屏  f指forward
19.  Ctrl+b  向上翻一屏  b指backward
20.   zz  当光标所在行位于屏幕最下端,按下zz可使当前行向上移动到屏幕中间位置
21.   /word  向后搜索和work匹配的单词,使用n向后查找,N向前查找
22.   ?word  向前搜素
23.   \<  匹配单词的开头  \>匹配单词的结尾
24.   /\<word\>  完全匹配
25.   * 当程序中定义的变量 nr,将光标移动到nr上,按*,即可高亮所有nr
26.   /the$ 匹配以the结尾   /^the 匹配以the开头
三.修改
1.   d[n]w 删除n个单词
2.   [n]x 删除n个字符
3.   d$ 从光标位置删除到行尾
4.   d^ 从光标位置删除到行首
5.   c[n]w 改变n个单词,其实是删除n个单词,然后进入insert模式
6.   cc改变一整行
7.   c$改变到行尾
8.   dh删除光标左侧的一个字符
9.    s 相当于c1,改变一个字符
10.   S相当于cc 改变一行
11.   r替换一个字符
12.   '.' 重复最后一次命令
13.   v可视模式 ,vjj选择两行
14.   y[n]w 复制n个单词
15.   daw 光标即使在单词中间,也能删除该单词,aw指A Word,aw是一个文本对象
16.   dG 从光标位置一直删除到文件末尾
17.   dgg  从光标位置一直删除到文件开始
四.set命令
设置都在 vimrc文件中,使用:version命令可以查看vimrc文件的位置
set number显示行号
set nonumber 不显示行号
set hlsearch 设置搜素高亮
set nohlsearch  取消搜素高亮
set autoindent 自动缩进
set backup 设置备份
set nobackup 取消自动备份
syntax enable 自动语法着色
set background=dark  设置背景色(必须确保syntax 是enable)
set tabstop=4
set shiftwidth=4
set guifont=Consolas:h12
set cindent
五.编辑多个文件
1.  edit foo.txt   vim将会关闭当前窗口,开启一个新的窗口,如果当前窗口没有保存,则会提示
2.  vim one.c two.c three.c 打开文件队列,完成一个后使用:next命令完成下一个,使用:previous回到上一个文件3.   vs  foo.txt竖直分割窗口,并将foo.txt置于左边的窗口进行编辑4.   s  foo.txt水平分割窗口,并将foo.txt置于上边边的窗口进行编辑

六.分割窗口
1.   :split 分割后,光标位于第一个窗口
2.    Ctrl+w  在分割后的不同窗口之间相互切换
3.    :close 关闭一个窗口
4.    :only  关闭其他窗口,只保留当前窗口
5.    :split newfile  在分割窗口中打开其他文件
6.     :new  打开一个新的窗口,并开始编辑一个空白文件
7.     :vsplit  竖直分割窗口
8.     :vnew   打开一个新的窗口,并开始编辑一个空白文件
9.     :qall 如果要同时退出多个窗口 qall 指 quit all
10.   :wall  保存所有  可以这样写:wqall
七.高级应用1.%s 替换:
:%s/class/four     其中%指的是范围(所有的行),s指substitute替换的意思,即将文件中所有的匹配class替换为four
:%s/class/four/g   其中g指的是一行中如果出现多次class,都将被替换
:%s/\<four\>/class/g  完全匹配替换
:%s/class/four/gc  其中c标记指的是每次替换都将会提示2.  ppd 上下行对换
2.统计单词  g  Ctrl+g 
八.常用配置
set tabstop=4
set shiftwidth=4
set cindent

set guifont=Consolas:h12

set nobackup
syntax enable
set number

set hlsearch
set encoding=utf-8

在window下设置 set encoding=utf-8会导致菜单栏乱码,解决办法:

set langmenu=zh_CN
let $LANG = 'zh_CN.UTF-8'
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值