现在的位置: 首页 > 综合 > 正文

Vim基本使用

2018年02月11日 ⁄ 综合 ⁄ 共 1934字 ⁄ 字号 评论关闭
Better,
Stronger, Faster.——
Vim the
Six Billion Dollar editor

模式切换:
插入模式——>ESC——>普通模式
命令模式——>ESC——>普通模式
普通模式——>  :  ——>命令模式
Ctrl + z 表示为 <C + z >
初级

i                                     切换到插入模式
o(小写)                       向下插入一行
O(大写)                       向上插入一行
dd                                   剪切一行
p                                     黏贴
Y                                     复制
yy                                    拷贝当前行,相当于ddP  
w                                    保存 
q                                     退出
!                                    强制,常用组合q!    
saveas <path/file/>          存储到 path/file/
x                                     删除当前光标所在字符
u                                     撤销
<C + r >                          重做
.                                      重复上一个操作
n<command>                  command指令重复n次
hjkl                                  (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
0                                     跳到行头
$                                     跳到行尾
^                                     跳到本行第一个非blank的位置。(blank 是指 空格、tab、回车、换行等)
g_                                    调到本行最后一个非blank的位置。
gg                                   置顶
G                                     跳到最后一行 

w                                     到下一个单词的开头 

e                                      到下一个单词的结尾
 
/pattern                            正则表达式,搜索,按 n 跳转到下一个
:n                                     跳到第n行
%                                     匹配括号移动( [ { ,  前提是光标在该字符中
*                                      匹配光标所在单词的下一个位置
#                                      匹配光标所在单词的上一个位置
fa                                     到下一个a(可换)的位置
nfa                                   到下面第n个a(可换)的位置
t,                                      到下一个,(可换)前的位置
F                                      与f功能一样,但是反向
T                                      与t功能一样,但是方向
<C+n>                             自动提示
v                                      可视化选择
V                                      可是还选择一行
:help [command]               查询command指令的意义+用法,输入:q,返回
       
进阶:

Ps:很多命令是跟光标移动组合,有必要记住光标移动的命令
<start position><command><end position>
0y$     
先到行头           复制           到行尾
<action>a<object>
<action>可以是 v , d , y
<object>可以是 " , '  , ( 之类
假设你有一个字符串 (map (+) ("foo")).而光标键在第一个 o 的位置。
vi" → 会选择 foo. 
va" → 会选择 "foo".
vi) → 会选择 "foo". 
va) → 会选择("foo").
v2i) → 会选择 map (+) ("foo") 
v2a) → 会选择 (map (+) ("foo"))
块可视化操作:< C+ v >
一般使用组合   < C + v > < C + d >I -- ESC            // -- 为块需要插入的字符·
宏录制,经常使用的操作可以录制成宏
步骤2:操作 
步骤3: (命令模式)q
宏的使用
@a          // 调用宏a(可替换)
@@          //调用最新的宏
可视化+操作
J          把所有行连接在一行
<或>    向左或向右缩进
=          自动缩进
A[pattern][ESC]   所选择区域加入字符[pattern]
分屏:
split(水平)
vsplit(垂直)

抱歉!评论已关闭.