Skip to content

Latest commit

 

History

History
115 lines (71 loc) · 2.59 KB

tricks.md

File metadata and controls

115 lines (71 loc) · 2.59 KB

小技巧

缩进

当前行向左缩进:<, 向右缩进:>

多行缩进:选中多行V + {h,j,k,l}, 然后执行上面操作

也可以用命令:

  • :2,$-1>,第二行到倒数第二行之间右移一个tab
  • :4,6<,第四行到第6行左移一个tab
  • :$-3,$-1>,倒数第四行到倒数第二行右移一个tab

插入

  • o, 在光标的下一行插入
  • i, 在光标所在字符的前面插入
  • a, 在光标所在字符的后面插入
  • O, 在光标的前一行插入
  • I, 在光标所在行的行首插入
  • A, 在光标所在行的末尾插入

删除技巧

  • diw 或者 daw,删除当前光标所在单词
  • diW 或者 daW,删除当前光标所在字符串,直到遇到空格
  • de, 功能同 diw
  • di(, 删除该括号内的内容,保留括号。di{, di[, di<, di"功能相同
  • da(, 删除该括号内的内容,包括括号一同删除。其他括号引号功能相同。
  • dab, 等同于 da(。操作起来更方便。
  • daB, 等同于 da{
  • ., 在执行完一个命令后,按句号符,可以重复上一步命令操作

剪切技巧

使用方式同删除技巧,只不过将 d 改为 c

将光标所在当前行出现屏幕中间显示

命令:zz

找到匹配的括号

光标放在一个括号上,然后执行命令 %,可以找到另一个相匹配的括号,并将光标移至此处。

创建该文档的html版本

命令::%TOhtml

交互当前行与下一行

命令: ddp

将光标回到之前的位置

命令:g;

拷贝整个文件

ggyG 或者 :%y

字符查找

f{character}

如,查找当前行内光标所在位置的下一个字母 d

fd

大写的 F 可以实现反向查找,即,查找当前行内光标所在位置的前一个字母。

搜索当前词

* 即可搜索当前光标所在的词(word),再次按 * 搜索下一个。 按 # 搜索上一个。

命令行粘贴

如果希望全局查找替换当前光标所在的单词,我们可能需要手动地在命令模式下敲出:

:%s/foo/bar/g

但如果当前光标就在那个单词上的话,可以在敲完 :%s/ 之后将它粘贴到命令里:

ctrl + r
ctrl + w

执行shell命令

:!<command>

插入执行的shell命令

:.!<command>,比如插入时间::.!date

插入的内容会覆盖当前行的内容,所以要在空白行进行

linux下中文乱码

在 ~/.vimrc 中新增如下配置:

set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8