一. VIM
高亮
进入
vim
后,在普通模式下输入如下命令,开启
php
代码高亮显示
:syntax enable
:source $VIMRUNTIME/syntax/php.vim
二. VI
常用命令
__________________________________________________________
一般模式
光标移动
__________________________________________________________
h
或
向左方向键
光标向左移动一个字符
j
或
向下方向键
光标向下移动一个字符
k
或
向上方向键
光标向上移动一个字符
l
或
向右方向键
光标向右移动一个字符
Ctrl + f
屏幕向前翻动一页
(
常用
)
Ctrl + b
屏幕向后翻动一页
(
常用
)
Ctrl + d
屏幕向前翻动半页
Ctrl + u
屏幕向后翻动半页
+
光标移动到非空格符的下一列
-
光标移动到非空格符的上一列
n<space>
接下数字后再按空格键,光标会向右移动这一行的
n
个字符,例如
20<space>
,则光标会向右移动
20
个字符
0 (
这是数字
0)
移动到这一行的第一个字符处
(
常用
)
$
移动到这一行的最后一个字符处
(
常用
)
H
光标移动到这个屏幕最上方的那一行
M
光标移动到这个屏幕中央的那一行
L
光标移动到这个屏幕最下方的那一行
G
移动到这个文件的最后一行
(
常用
)
nG
移动到这个文件的第
n
行
.
例如
20G
,则会移动到这个文件的
第
20
行
(
可配合
:set nu)
n<Enter>
光标向下移动
n
行
(
常用
)
________________________________________________________________
一般模式
查找替换
________________________________________________________________
/word
在光标之前查找一个名为
word
的字符串
?word
在光标之前查找一个名为的
word
字符串
:n1,n2s/word1/word2/g
在第
n1
与
n2
行之间查找
word1
这个字符串
,
并将该字符串替换
为
word2(
常用
)
:1,$s/word1/word2/g
从第一行到最后一行查找
word1
字符串,并将该字符串替换
为
word2(
常用
)
:1,$s/word1/word2/ge
从第一行到最后一行查找
word1
字符串,并将该字符串替换
为
word2,
且在替换前显示提示符让用户确认
(confirm)(
常用
)
__________________________________________________________________
一般模式
删除
复制与粘贴
__________________________________________________________________
x,X x
为向后删除一个字符
,X
为向前删除一个字符
(
常用
)
nx
向后删除
n
个字符
dd
删除光标所在的那一整行
(
常用
)
ndd
删除光标所在行的向下
n
行,例如,
20dd
则是删除
20
行
(
常用
)
d1G
删除光标所在行到第一行的所有数据
dG
删除光标所在行到最后一行的所有数据
yy
复制光标所在行
(
常用
)
nyy
复制光标所在行的向下
n
行,例如,
20yy
则是复制
20
行
(
常用
)
y1G
复制光标所在行到第一行的所有数据
yG
复制光标所在行到最后一行的所有数据
p,P p
为复制的数据粘贴在光标下一行,
P
则为粘贴在光标上一行
(
常用
)
J
将光标所在行与下一行的数据结合成一行
u
恢复前一个动作
(
常用
)
____________________________________________________________________
编辑模式
___________________________________________________________________
i,I
插入:在当前光标所在处插入输入的文字,已存在的字符会向后
退
(
常用
)
a,A
添加:由当前光标所在处的下一个字符开始输入,已存在的字符
会向后退
(
常用
)
o,O
插入新的一行:从光标所在处的下一行行首开始输入字符
(
常用
)
r,R
替换:
r
会替换光标所指的那一个字符:
R
会一直替换光标所指的
文字,直到按下
Esc
为止
(
常用
)
Esc
退出编辑模式,回到一般模式
(
常用
)
___________________________________________________________________
命令行模式
___________________________________________________________________
:w
将编辑的数据写入硬盘文件中
(
常用
)
:w!
若文件属性为只读,强制写入该文件
:q
退出
vi(
常用
)
:q!
若曾修改过文件,又不想保存,使用!为强制退出不保存文件
:wq
保存后退出,若为
:wq!,
则为强制保存后退出
(
常用
)
:w [filename]
将编辑数据保存为另一个文件
(
类似另存新文档
)
:r [filename]
在编辑的数据中,读入另一个论据的数据,亦即将
filename
这
个文件内容加到光标所在行的后面
:set nu
显示行号,设定之后,会在每一行的前面显示该行的行号
:set nonu
与
set nu
相反,为取消行号
n1,n2 w [filename]
将
n1
到
n2
的内容保存为
filename
这个文件
|