vim简单用法

某一路径下,按ls查看所有文件,有一文件filename,vim+"filename"进入vim

普通模式

vim按esc进入普通模式,这个模式下可以进行dd,u等操作:


1.删除操作
a.删除整行

dd 删除光标下1行

5dd 删除光标下5行

D 从当前位置删除到行尾

b.d+移动位置

dgg 删除到文件开头(gg会直接到开头)

dG 删除到文件末尾 (caps+g也就是G会直接到末尾,shift+g也可以)

ggdG删除全文 就是先去开头,再删除到末尾

de 删除当前位置到当前单词完(e是到达当前单词末尾)

diw 删除当前单词

di" 删除下一个个""里面的内容

di{ 删除下一个{}里面的内容

c.删除直到指定字符

dt +单个字符,删除到字符处,字符不删

尽在本行生效


2.撤销

u 撤销

ctrl+r 重做撤销操作


3.选中文本

先把光标调整到开始选中的位置,在普通模式下按

v    从光标当前位置开始,光标所经过的地方会被选中,再按一下v结束。

V    从光标当前行开始,光标经过的行都会被选中,再按一下V结束。

ggVG  选中全部的文本。


4.复制
剪切板

1.Vim 通过“寄存器”机制实现剪切板操作。寄存器是 Vim 内部用来存储文本的结构,可以用于复制剪切粘贴

按:reg 查看寄存器内容

" 默认寄存器,ctrl+shift+c 储存到这

0 上次复制(yank)的内容

1-9 删除操作历史

+ 系统剪切板

部分指令

y/ctrl +shift+c 储存到默认寄存器,只能ubuntu内部使用

"+y 储存到系统剪切板(需开启),全局使用。

似乎开启后第一个指令也能在全局使用??


跳转

1.到行尾:A,顺带进入insert模式

或者$进入行尾

2.到指定行

50G 到50行

3.+数字,当前行数向下

4.组合使用

:[行号]s/old/new 在指定行替换文本
:[行号]d 删除指定行
:[行号1],[行号2]d 删除行号范围内的内容

5.特殊命令

''两次'跳转到最后修改

'.跳转到最后修改


插入模式:

i/a/o:插入模式,i光标前插入(当前光标),a光标后插入(没鸟用),o下方插入新行

光标移动:箭头或jkhl,上下左右gg 文件开头,G 文件末尾 :n第n行 w下个单词开头,b上个单词开头,%匹配括号跳转

复制:yy复制当行yw复制一个单词yG复制光标到结尾

删除:x:删除光标所在字符。dd:删除当前行。dG:删除光标到文件末尾的所有内容

粘贴p

命令模式

另外在普通模式下按 : 进入命令模式,这个模式下可以执行保存退出等操作


1.打开内置终端
打开不同位置终端

:terminal 或者:term 在上面打开一个终端

:rightbelow vert term在右边打开终端

在终端里面输入exit关闭终端

设置终端大小

有时候会发现vim的位置太窄不舒服,在vim里面输入:

:vertical resize 50(将当前窗口宽度设置为 50 个字符宽度)

ctrl+w+-或者ctrl+w++字体大小调整

终端复制

按ctrl \ ctrl n进入普通模式,此时按V进入可视模式或者鼠标直接复制都可以


终端切换

鼠标点击vim后无法选中term?

同时按住ctrl w,不要放,按hjkl切换窗口

比如我喜欢用:rightbelow vert terminal ,进入vim后同时按ctrl w l就可以进入term

2.保存退出

:q!强制退出,:wq保存并退出 :q退出


3.文本替换

😒/old/new/:替换当前行第一个匹配项。

😒/old/new/g:替换当前行所有匹配项。

:%s/old/new/g:替换全文所有匹配项。

这里%代表全文

posted @ 2025-04-01 19:24  hardestnut  阅读(6)  评论(0)    收藏  举报