vim_技巧备忘

pre_old_time:

/*** 然后按下enter按键,就可以用n来跳转 N回跳

编辑模式下 输入   【 :noh 】 可以取消高亮

  • 从当前行开始进入编辑模式 
  • vim ---- f命令可以定位到指定字符,;右重复,,向左重复
  • 移动到前一个单词的末尾:ge
  • d0:删除当前位置到行开头的所有内容,不会删除光标一开始指向的那个字符
  • d$ 会删除当前位置到行末尾的所有内容,包含行末尾在内的字符也都会被删除。

c 取 change 的首字母,这个命令的便捷之处在于将「删除操作」和「进入编辑模式」合二为一,可以少按一个键。

  • cw:更改下一个单词,等同于 dw + i
  • c2w:更改后两个单词,等同于 d2w + i
  • c$:更改从当前位置到行结束的所有内容,等同于 d$ + i
  • C-z 可以从shell中回到command line ,fg可以回到vim界面

 

执行替换     :s/target/replacement         重复: &   撤销: u

查找当前光标下的单词 *

 

数字1+ <C-a >  如果光标是在数字2字符上面,则会将数字2变为数字1+数字2

<C-x>是减1

如果光标不在数字上面,则会搜寻这一行,再加上

^到达代码行首

 

 

g~ 翻转大小写

gu  转换为小写

gU 转换为大写   gUU 作用于当前行

> 增加缩进

< 减小缩进

=  自动缩进

!   使用外部程序过滤所跨越的行

 

 

<C-h>    删除前一个字符

<C-w>     删除前一个单词

<C-u>    删除至行首

<C-r>0  把刚才复制的文本粘贴到光标所在位置'

 

SPC t S 拼写指定检查

 

V 是面向行的可视模式

 

<C-v> 面向列块的可视模式,变为对一列操作

gv  重选上次的高亮选区

 

o  切换高亮选区的活动端:高亮选区有两个端点确定,其中一段固定,另外一端可以随着光标自由移动,可以使用o来更换活动的端点

从可视模式切换到普通模式可以再按一次v

可视模式下选中文本之后,直接按下U,就可以将小写转换为大写。但是最好还是用普通模式下面的gU

 

在列表可视模式中为多行添加分号:(可以不用是正方形,即每一行的长度可以不相同)

<C-v>j j $ 

A;

 

2. 迅速跳转到某一行:  : n 】

跳转到文件末尾 【 : $ 】

迅速删除某一行【 : n d 】 

显示某一行内容【 : n p】

显示某一个区域的内容 【 : start, end p 】eg:  [ :3,5p ] 

[ . ] 代表当前行的地址,所以代表从当前位置到文件末尾间的所有行:【 :.,$p】==【:%p】[%]代表整个文件

【 :%s/Practical/Pragmatic/ 】让vim将每一行的第一个practical替换为pragmatic

用高亮选区指定范围:如果我们已经用可视模式高亮了几行文本,再按下【:】时,vim会自动填充一个范围,即高亮文本的范围

3.复制某一行,copy

【 :[range] copy {address} 】==>[ :[range] t {address} ]

eg: [ :6copy. ] 为第六行创建一份副本,并放到当前行下方。可以简化为 【:6t.】,即copy==t

 

 

yyp 和 :t. 的区别是,yyp会使用寄存器,而后者不会

4.【 :m 】命令移动行

可以先用可视模式高亮文本,然后使用命令移动文本

eg: [  :'<,'>m$ ]代表选中文本之后,将文本移动到文件末尾

 

5.在指定范围上执行普通模式命令

确定范围之后[ normal .]

 

6.[ * cw n .]的混合使用

[*]将处于当前位置的单词高亮,然后n 就能跳转到下一个单词。如果使用cw【删除下一个单词并进行修改】,然后使用n,再使用【.】 就能重复之前修改的操作。

 

7. aw

在Vim中,`aw`是一个文本对象操作符,用于选择一个词(Word)。它的作用是选择光标所在位置的当前词(包括前后空格),并将其用于执行操作,比如复制、删除、替换等。

下面是一些示例用法:

1. 复制当前词:将光标置于待复制的词上,然后按下`yaw`,即可将当前词复制到剪贴板中。

2. 删除当前词:将光标置于待删除的词上,然后按下`daw`,即可删除当前词。

3. 替换当前词:将光标置于待替换的词上,然后按下`caw`,接着输入新的文本,即可替换当前词。

这只是一些`aw`的示例用法,实际上,Vim中有许多其他命令和操作符可以与`aw`结合使用,以实现更多功能。`aw`在编辑文本时非常有用,因为它可以快速选择并操作词级别的内容。

 

除了`aw`之外,Vim还提供了许多其他常用的文本对象操作符,用于选择不同的文本对象。以下是一些常见的文本对象操作符:

1. `iw`:选择当前光标所在的内部词(Inner Word),不包括前后空格。

2. `i"`:选择双引号内的文本。

3. `i'`:选择单引号内的文本。

4. `i)`:选择圆括号内的文本。

5. `i]`:选择方括号内的文本。

6. `i}`:选择大括号内的文本。

7. `ip`:选择段落(Paragraph),即连续的文本块。

8. `is`:选择句子(Sentence),即包含在句号、问号或感叹号之间的文本。

9. `it`:选择在HTML/XML标签内的文本。

10. `i>`:选择尖括号内的文本。

 

这些是常见的文本对象操作符示例,你可以通过组合不同的操作符和动作命令来执行各种编辑操作。例如,使用`di"`可以删除双引号内的文本,`ci(`可以更改圆括号内的文本,`vi}`可以选择大括号内的文本等等。这些文本对象操作符的组合使用使得Vim在编辑和操作文本时非常灵活和高效。

 

 

8.[zz]

zz可以将当前行的代码转移到最中央。

  • zt:将当前行移动到屏幕顶部。
  • zb:将当前行移动到屏幕底部

 

9. 复制的使用

10. [ea]

在当前单词结尾后添加

11. [W]

 

12.[可视模式 + / ]

13. [d + /]

14. vim 的自动位置标记

 

15. 跳转到指定行

12G

 

16. 设置标签

[m + 字母]

返回标签:

[ `  + 字母 ]

清除标签:

:delmarks {bookmark-name}

posted @ 2023-04-04 21:00  哎呦_不想学习哟~  阅读(90)  评论(0)    收藏  举报