`

Vim 编辑器

阅读更多
一,光标移动
回车:移到下一行起始位置
Ctrl+u:往上移动半屏
Crtl+d:往下半屏
Ctrl+f:  往下一屏
Ctrl+b:往上一屏
shift+h:移到本屏幕第一行开头第一个非空白字符
shift+m:移到本屏幕中间行第一个非空白字符
shift+l: 本屏幕最后一行第一个非空
w:右移一个单位  可+数量 
b:左移一个单位   可+数量
(:移到完整句子的句首
):移到完整句子的句尾
0 移到当前行最前字符
$ 移到当前行最后一个字符
G 档案最后一行  
nG     n为数字,移到第几行
gg  档案第一行
n回车   向下移动n行
n空格    空格n个字符

二,进入insert模式
o:在光标下面一行插入数据
O:在光标上一行插入数据
i 在光标处 
I 在行首插入
a 光标下一个字符处
A 在行尾处
o 光标下一行新起一行  
O 当前行新起一行
r 替换光标文字     
R 连续取代,替换完当前就替换下一个

三,复制,删除
复制行: yy 然后 p (小写p是粘贴在当前行的下面,大写p是上面)  +数量
多行复制::1,5 co 12 把1到5行复制到12行的后面去, 此外 . 代表当前行 ,$代表最后一行

删除行: dd    删除3行就用 3dd
删除行: :1,5 d 删除1到5行
移动行: :1,5 m 12 ,同复制一样,只是中间换成m
删除单词:dw   可+数量
x 删除后面一个字符 
X 向前删除
nx   删除多个
ndd   删除多行
d1G    删除当前行到第一行
dG     删除当前到最后一行的

u:撤销之前修改,可以连续使用
U:仅仅撤销最近一次,来来回回
:e!还原到原始状态

四,检索和替换
/字符串       向下搜索字符串
?字符串      向上搜索字符串
n             继续向下找
N             反向
检索字符串::/\<WORD\>  若要只匹配开头或结尾 那么单独只需要<或者>部分 即可.

:n1, n2s/w1/w2/g   n1到n2行之间的全部w1换成w2,g
:1,$s/w1/w2/g     第一行到最后一行全部w1 w2
:1,$s/w1/w2/gc    加个c表示 替换前提示用户
:%s/w1/w2/g   全文替换

五,保存退出
ZZ:如果此时文件被编辑过,那么把编辑的内容暂时写到vim启动文件中,下次启动的时候恢复; 如果没有内容的更新,那么直接退出;
w:filename 将内容写到指定文件中;(加上感叹号表示覆盖已有文件)
q!:强制退出 不保存
wq!:强制保存退出
. 表示重复执行上次的命令
:n1,n2 w file   将n1到n2行另存为一个file
: x 保存后退出
:r file   将file的内容读到光标所在行的后面
:set nu   显示行号
:set nonu    不显示行号
:!command   暂时离开vi到指令模式下执行command

六, 其他功能
- vim的附加功能:
v 将光标经过的地方反白选择
V   行反白
Ctrl+v   长方形选择
y 复制反白地方
d 删除反白
- 多文件编辑
:n 编辑下一个文件
:N 编辑上一个
:files 列出当前打开的所有文件  (vim可使用)
- 多窗口功能 (vim可用)
:sp file  打开新窗口,并在新窗口打开一个新文件, 否则新窗口也是打开相同文件
Ctrl+w放开后按j   移动到下方窗口
Ctrl+w放开后k     ....上方窗口
Ctrl+w放开后q   保存退出

Extra:
设置vim编辑器
所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:
$vi ~/.vimrc
设置完后
$:x 或者 $wq
进行保存退出即可。

1,“去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
2,“显示行号
set number
3,“检测文件的类型
filetype on
4,“记录历史的行数
set history=1000
5,“背景使用黑色
set background=dark
6,“语法高亮度显示
syntax on
7,“下面两行在进行编写代码时,在格式对起上很有用;
“第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;
“第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编写上很有用
set autoindent
set smartindent
8,“第一行设置tab键为4个空格,
第二行设置当行之间交错时使用4个空格
set tabstop=4
set shiftwidth=4
9,“设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch
10,“去除vim的GUI版本中的toolbar
set guioptions=T
11,“当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声
set vb t_vb=
12,“在编辑过程中,在右下角显示光标位置的状态行
set ruler
13,“默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
set nohls
14,“查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
“个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
“次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
“时,别忘记回车
set incsearch
15,“修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀
if has(“vms”) //注意双引号要用半角的引号" "
set nobackup
else
set backup
endif
xxx,如果去除注释后,一个完整的.vimrc配置信息如下所示:
set nocompatible
set number
filetype on
set history=1000
set background=dark
syntax on
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
if has("vms")
set nobackup
else
set backup
endif

解决突然显示空格的颜色的问题:
执行替换的时候,高亮显示了空格,hlsearch 是高亮选择搜索的关键字;
而set nohls,则以后的搜索都不会高亮所有搜索的关键字。所以空格也不会有颜色了
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics