Vim实用技巧3
Vim实用技巧3背景今天偶然看到本书中一个灰常牛皮的技巧,光看其名称就能知晓该玩意儿异乎寻常:宏。宏乃vim自动化的巅峰之作,能够将原本重复机械的操作录制下来,作用于其他符合条件的地方。除此之外,今天对查找命令/和替换命令:s/{string}/{string}/{option}做一些记录
内容宏命令宏命令让我们可以拥有属于自己的自动化员工。
123456789101112131415# 录制宏命令的标志是q, 后面跟随的是对应的寄存器q{register}# 停止录制q# 如:qa --> 录制宏并保存进a寄存器中# 调用指定寄存器中的宏@{register}# 如:@a --> 调用a寄存器中的宏命令# 调用最近一次执行的宏命令@@
当我们需要这个员工反复工作100的时候。
1234# 执行指定数目的任务[num]@{register}# 如:100@a --> 执行100次a寄存器中的宏
又或是我们需要这个员工在指定的范围内才工作,这是就 ...
Vim实用技巧-2
Vim实用技巧-2背景继昨天vim实用技巧-1以后,今天看的还是vim模式下光标的移动、选择、内容的快捷修改,毕竟在vim中,快速定位和编辑修改是其操作的核心。
内容光标移动vim中,将行分为实际行和屏幕行两种,hjkl操作的是实际行,这对于实际使用中操作屏幕换行存在问题,为此vim也提供了操作屏幕行的方式
123456# 操作屏幕行的以g开头gk --> 屏幕行的上一行gj --> 屏幕行的下一行g0 --> 屏幕行的行首g$ --> 屏幕行的行尾g^ --> 屏幕行的第一个非空字符
在基础篇中,我们常用的是w,b,e这样操作单词的跳跃方式,抑或是W、B、E这样操作字符串的跳跃方式,你会发现其本身同样,对于e而言也有会跳的方案
12ge --> 回跳到上一个单词的末尾gE --> 回跳到上一个字符串的末尾
同样,在同一行中,vim还提供了另一种跳转的方式,它更加的灵活:f/F、t/T
1234567# 直接跳转到单个字符的位置,直达f{char} --> 向后跳转到查询的字符处F{char& ...
Vim实用技巧-1
Vim实用技巧-1背景时光荏苒,转眼又回到了Vim的世界里,我决心将此前《Vim实用技巧》一书看完,以慰寡淡之生活,读本书之开始,是基于此前所定计划「深度Vim工作者」,尽管Python的学习步履维艰,但还是知道没得办法,迟早又要回头,既然实在不想看,那么就值此反感之间隙,摸一摸别的。
内容vim中显示行号12345678# 在文件中执行命令:set number# 或者执行命令:set nu# 或者修改home下的配置文件.vimrc,追加内容set nu
撤销修改1Ctrl + r
修改大小写vim中当一个操作符命令被连续调用两次时,它会作用于当前行,但是有一个除外,即gU。
1234567gU: 将指定区域全部转换为大写gu:将指定区域全部转换为小写g~:将指定区域的大小写进行转换如:gUaw:表示将当前光标的单词全部转化为大写gUU:表示将当前光标所在行单词全部转换为大写
你也会发现,上述的操作并没有作用到最小单元:字母。
12# vim使用~可以将当前光标所在的字符转为其对应的大/小写~
屏幕绘制除了寻常的H、M、L切换光标在窗口的位置方式外,还可以重回当前窗口的内容 ...
vim使用教程
Vim知识点vim [文件名] +[行数]:打开文件并且快速定位到指定行
行内移动
命令
含义
w
向后移动一个单词
b
向前移动一个单词
0
跳转到行首
^
跳转到第一个非空白字符位置
$
跳转至行尾
%
括号匹配及切换
行数移动
命令
含义
gg
跳转至文本顶端
G
跳转至文本最后
行数 + G
跳转至指定的行数位置
屏幕移动
命令
含义
Ctrl + b
向上翻页
Ctrl + f
向下翻页
H
屏幕顶端
M
屏幕中间
L
屏幕底端
段落移动
命令
含义
{
上一个段落
}
下一个段落
标记123# 标记名称可以是a-z、A-Z之间的任何一个字母# 添加标记的行被删除,则标记同时被删除# 如果在其它位置使用了相同的标记名称,则之前添加的标记会被替换掉
命令
含义
m + [标记字母]
添加标记
‘ + [先前标记的字母]
直接定位到之前标记的位置
文本选择1# 选择模式可以和之前的所有的移动命令联合使用
命令
含义
v
从光标模式开始正常模式 ...