尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
vim使用手册
让光标停留在单词的第一个字母上 然后输入yw拷贝该单词 然后输入 / (Ctrl R) 0 即 /0回车 就查找到了第一个匹配的单词 并且通过 n 或 N 进行上一个或下一个的匹配。打开文件后想跳转到上次关闭文件时的位置 0在选中文本中替换某个词:,s/替换项/替换为/g/\%Vhello 在上次选中文本中搜索某个词hello:reg 查看寄存器内容无名寄存器() 默认的p是调用无名寄存器复制专用寄存器(0) 只有y才是复制寄存器删除专用寄存器(1-9) 调用d或x等删除操作命名寄存器(a-z) 可以用来放某些内容除了esc键可以从编辑模式进入命令模式外还可以按ctrl[或者ctrlc进入_ 黑洞寄存器即删除不放进寄存器如_d块模式下按o可以实现光标在所选块开始和结束之间跳转i 在光标前插入一个小技巧按8再按i进入插入模式输入 按esc进入命令模式就会出现8个。 这在插入分割线时非常有用如30iesc就插入了36个组成的分割线。:sy on和:sy clear 语法高亮/取消:colorscheme evening 设置背景颜色替换命令的 源字符串 部分用于指定搜索目标要在替换命令的源字符串部分匹配行尾需要使用 \n替换命令的 目标字符串 部分用于指定要替换出的目标如果要通过替换命令插入新行需要使用 \r。在“以下是……”前面加回车于是 :%s/以下是/\/r/gc在命令行按下:后再按一下↑可以看到历史命令dab 删除括号和括号内容dib 删除括号内容:qall 关闭所有窗口退出vim:wall 保存所有修改过的窗口:wqall 保存并退出:only(ctrl-w o) 只保留当前窗口关闭其它窗口:close(ctrl-w c) 关闭当前窗口:x 保存并退出; 配合ft使用重复一次, 配合ft使用反向重复一次H 把光标移到屏幕最顶端一行M 把光标移到屏幕中间一行L 把光标移到屏幕最底端一行或Enter 把光标移至下一行第一个非空白字符/xxx*xxx 匹配0到多个字符/xxx\?xxx 匹配0到1个字符:g/xxx/d 删除包含xxx的行:v/xxx/d 删除不含xxx的行:%s/xxx//gn 统计xxx个数n表示只报告匹配的个数而不进行实际的替换zz 将当前行移动到屏幕中央zt 将当前行移动到屏幕顶端zb 将当前行移动到屏幕底端hlsearchhlsset hls 设置高亮搜索set nohls 取消高亮搜索set incsearch 打开显示查找匹配过程set noincsearch 关闭显示查找匹配过程q{register} 开始录制宏串行方式5[a-z] 宏内包含向下一个目标行进行移动的指令如果出现错误宏会停止执行并行方式:normal [a-z] 在高亮区域的每一行上并行执行宏某一行出现错误不影响其他行如果你只想修改包含特定关键词的行可以用:g命令结合:normal。例如:g/function/normal a这会在所有包含 function 的行“并行”执行宏a效果如同“筛选后批量处理”。:g/foo/s/bar/baz/g:g/foo/说把所有包含 foo 的行筛选出来:s/bar/baz/g说在这些被选中的行里把 bar 替换成 bazgv 重选上次高亮区gp 粘贴文本光标移到粘贴文本的最后一行p则是粘贴不移动光标xp 调换两个字符的顺序匹配时 \C强制区分大小写、\c不区分大小写、\V会使得其后的模式中只有反斜杠有特殊的意义cit 修改html标签内容ci 修改引号内容ab 一对圆括号ib 圆括号内容aB 一对花括号iB 花括号内容:marks 取得所有标记的列表m小写字母 标记当前文件有效m大写字母 标记全局有效标记字母 跳到标记行首标记字母 跳到标记x 删除当前光标下的字符s 正常模式下删除一个字符并进入插入模式g_ 到本行最后一个不是blank字符的位置:put 在下一行粘贴S 删除光标所在的行并开始插入diw 删除单词不包括空白字符daw 删除单词包括空白字符dw 删除自当前光标至下一个word的开头db 删除自当前光标至前一个word的开始dw 从当前位置删除到下一个单词词首d$(D) 删除光标之后的该行剩余部分包括光标dd 删除当前行。dG 删除当前行至文件尾的内容dgg 删除当前行至文件头的内容cw 会删除从光标位置到当前词结尾处的文本并切换到插入模式C 修改到行尾的内容cc(S) 修改当前一整行A 当前行行尾插入并进入插入模式I 当前行行首插入ctrlr 取消撤消d 剪切ge 前一个单词的最后一个字符e 这个单词的最后字符b 这个单词的第一字符dt{char} 删除到字符{char}之前ctrl-y 向上滚屏(yǎng 仰头)ctrl-e 向下滚屏(en 摁下去)ctrl-u 向上滚动半屏(up)ctrl-d 向下滚动半屏(down)ctrl-b 向上滚动整屏(backward)ctrl-f 向下滚动整屏(fordward)所有选项只有在wrap关闭的时候才有效set nowrap10zl 向右滚动10个字符10zh 向左滚动10个字符zL/zH 向右滚动半个屏幕向左滚动半个屏幕zs/ze 视图滚动到最左侧/最右侧zo 打开折行zc 关闭折叠ZZ 保存当前文件妆退出vimZQ 不保存退出,q表示放弃vit 选中标签内的文本G 增加加从当前行文档末尾处的缩进层级dap 删除一个段落viw 选中一个单词g~、gU、gu 大小写转换可以用CTRL-O和CTRL-I可以跳转到较早的位置和靠后的某位置180C-x 180C-a 减去或增上180f[char]/t[char] 重复;回退:/html/,/\/html/d 删除html到/html的行: 重复ex命令 重复上次命令vim普通模式下按Q进入命令模式下按进入命令模式下按i 进入文字插入模式 按CC 退回到命令模式这一点不同于的ESC 显示总行数 . 显示当前行号 /pattern/显示地一个与模式pattern想匹配的行号3, 18 d删除3~18行11, 15 m 23把1115行移动到23行下面。23, 29 co 100复制2329行并把它们粘贴到100行下面:t. :t.yyp 但不会覆盖寄存器中的内容:!{shell命令} 执行shell命令d/xxx 从当前位置删除到单词xxx之前yw yb 复制单词右侧左侧viw 选中整个单词重复替换是编辑另一个文件用命令:edit foo.txt也可简写为:e foo.txt在命令状态下对当前行用 连按两次, 或对多行用nn是自然数表示自动缩进从当前行起的下面n行。你可以试试把代码缩进任意打乱再用n排版相当于一般IDE里的code format。使用ggG可对整篇代码进行排版。ggVG 选中全部的文本 其中gg为跳到行首V选中整行G末尾在Vim中你可以把两行合并为一行也就是说两行之间的换行符被删除了命令是Jy 表示从vim复制到系统剪切版p 表示从外部文件(系统剪切版)粘帖到vim,d 表示剪切gp 粘贴并且移动光标到粘贴内容后0或功能键[Home] 移动到这一行的最前面字符处$或功能键[End] 移动到这一行的最后面字符处G 移动到这个文件的最后一行gg 移动到这个文件的第一行相当于1Gddp 交换当前行和其下一行m 创建标记 移动到标记的文本行首 移动到标记的光标位置 当前文件中上次跳转动作之前的位置. 上次修改的地方^ 上次插入的地方,上次退出插入模式时光标所在的位置gi gi^并且进入插入模式p 等同插入模式下的C-r:marks 列示所有标记:delmarks 删除指定标记::delm a-zA-Z0-9 删除所有标记:m 27 移动当前行到27行:5,7m 21 移动move lines 5, 6 and 7 to after line 21guu 行小写gUU 行大写1.多行注释a. 按下Ctrl v进入列模式;b. 在行首选择需要注释的行;c. 按下“I”进入插入模式d. 然后输入注释符“//”、“#”等;e. 按下“Esc”键.2.删除多行注释a. 按下Ctrl v, 进入列模式;b. 选定要取消的注释符;c. 按下“x”或者“d”.3.多行删除1.首先在命令模式下输入“set nu”显示行号 2.通过行号确定你要删除的行 3.命令输入“32,65d”,回车键32-65行就被删除了很快捷吧打开多个文件一、vim还没有启动的时候1.在终端里输入vim file1 file2 ... filen便可以打开所有想要打开的文件2.vim已经启动输入:e file可以再打开一个文件并且此时vim里会显示出file文件的内容。输入:e .可以查看目录文件查看目录树的标准做法:Ex 在当前窗口打开目录树:Vex 在竖直分割窗口打开目录树:Sex 在水平分割窗口打开目录树通过按键i可以得到文件目录树的不同视图3.同时显示多个文件:sp //水平切分窗口:vs //垂直切分窗口二、在文件之间切换输入:ls可查看vim打开的文件1.文件间切换Ctrl6 //两文件间的切换:bn //下一个文件:bp //上一个文件:bf //第一个文件:bl //最后一个文件:ls //列出打开的文件带编号:b1~n //切换至第n个文件对于用(v)split在多个窗格中打开的文件这种方法只会在当前窗格中切换不同的文件。set hidden可以在不存在当前buffer时切换到其它buffer:e#编号 切换至:ls中查看到的某个文件2.在窗格间切换的方法Ctrlw方向键——切换到前下上后一个窗格Ctrlwh/j/k/l ——同上Ctrlww——依次向后切换到下一个窗格中连续的十几行到50行内的左右移动1. 第m行到第n行右移一个tabm,n2. 第m行到第n行左移一个tabm,n连续的I行的左右移动I 100向左1.移动到要处理的首行输入ma2.移动到要处理的尾行输入a向右即将第二个命令中的 改为 即可比如想跳转到文本的第12行可以执行如下命令112gg / 12G2:123打开文件时输入vim 12 filename$:移动光标到行尾 n$:移动到第n行的行尾0Num移动光标到行首^:移动光标到行首第一个非空字符上去:s/oldword/newword:%s/oldword/newword:%s/oldword/newword/g代码模式匹配补全 ctrln或ctrlpset incsearch 边查询边显示ex常用编辑命令d(delete) 删除行m(move) 移动行co(copy) 复制行t复制行和co同义方法1强烈推荐915 copy 16 或 915 co 16由此可有915 move 16 或 :9,15 m 16 将第9行到第15行的文本内容到第16行的后面方法2光标移动到结束行ma光标移动到起始行,输入ya光标移动到需要复制的行输入p,行前复制则输入大写P1. vim有12个粘贴板分别是0、1、2、...、9、a、、用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到双引号)粘贴板里同样用p粘贴的也是这个粘贴板里的内容2. 要将vim的内容复制到某个粘贴板需要退出编辑模式进入正常模式后选择要复制的内容然后按Ny完成复制其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y)例如要把内容复制到粘贴板a选中内容后按ay就可以了有两点需要说明一下* 号粘贴板临时粘贴板比较特殊直接按y就复制到这个粘贴板中了直接按p就粘贴这个粘贴板中的内容* 号粘贴板是系统粘贴板用y将内容复制到该粘贴板后可以使用CtrlV将其粘贴到其他文档如firefox、gedit中同理要把在其他地方用CtrlC或右键复制的内容复制到vim中需要在正常模式下按p3. 要将vim某个粘贴板里的内容粘贴进来需要退出编辑模式在正常模式按Np其中N为粘贴板号如上所述可以按5p将5号粘贴板里的内容粘贴进来也可以按p将系统全局粘贴板里的内容粘贴进来。g*(g#) 此命令与* #命令相似, 只不过它不完全匹配光标所在处的单词, 而是匹配包含该单词的所有字符串.% 本命令查找与光标所在处相匹配的反括号, 包括 () [] { }.删除所有空白行(^是行的开始\s*是零个或者多个空白字符$是行尾) :g/^\s*$/d把当前行反斜杠\替换为正斜杠/ :s/\\/\//g 或:s,\\,/,g插入模式下 ctrlshiftd 减少缩进ctrlshiftt 增加缩进在Normal Mode下 命令将对当前行增加缩进而命令则将对当前行减少缩进12345678910:tabnew [opt选项] cmd 文件 建立对指定文件新的tab:tabc 关闭当前的tab:tabo 关闭所有其他的tab:tabs 查看所有打开的tab:tabp 前一个:tabn 后一个标准模式下gt , gT 可以直接在tab之间切换。[n]gt 向下 转到第n个tab[n]gT 向上转到第n个tab:n 跳至下一个文件也可以直接指定要跳的文件如:n c可以直接跳到c文件:e# 回到刚才编辑的文件gd: 跳转到局部变量的定义处gD: 跳转到全局变量的定义处从当前文件开头开始搜索g;: 上一个修改过的地方g,: 下一个修改过的地方[[: 跳转到上一个函数块开始需要有单独一行的{。]]: 跳转到下一个函数块开始需要有单独一行的{。[]: 跳转到上一个函数块结束需要有单独一行的}。][: 跳转到下一个函数块结束需要有单独一行的}。[{: 跳转到当前块开始处]}: 跳转到当前块结束处[/: 跳转到当前注释块开始处]/: 跳转到当前注释块结束处%: 不仅能移动到匹配的(),{}或[]上而且能在#if#else #endif之间跳跃。] ] to the last character of the previous yanked text. to go to the last line/character of the just yanked visual selectionwhen yank, ] ] To the last character of the previously changed or yanked text. {not in Vi}While you are in Visual Selection click o. It will change position of cursor to other end of selection. Then O to jump back.插入模式c-h 删除前一个字符c-w 删除前一个单词c-u 删至行首插入模式只专注于做一件事输入文字 普通模式是我们大部分时间所使用的模式c-o 进入插入-普通模式插入模式下 C-r0 插入寄存器0的内容google浏览器vimium插件ctrln 跳转到第n个标签页chrome vimiumf 在当前标签打开链接F 在新标签打开链接j,k 滚动换行J,K 上下标签u,d 上下翻半页h向左细微滚动窗口。l向右细微滚动窗口。zH一直移动到左部。zL:一直移动到右部。r 刷新页面H,L 历史记录前进、后退gi 聚焦到当前页面的第一个输入框比如??栏等gg 跳到页首G 跳到页尾t 打开新标签重复查找f{char}, 反方向查找f{char}x 关闭当前标签X 恢复刚才关闭的标签b 在当前标签打开书签B 在新标签中打开书签?,shift/打开Vimium帮助设置。「Control T」可以新建标签页「Control N」可以新建窗口T显示当前所有的标签页并快速切换o Open URL, bookmark or history entryO Open URL, bookmark or history entry in a new tabb Open a bookmark 配合tabB Open a bookmark in a new taba-f Open multiple links in a new tabn向下查找匹配内容N向上查找匹配内容p:在当前标签页中打开剪切板中的链接P:在新的标签页中打开剪切板中的链接^ Go to previously-visited tabalt-f:在当前页面打开多个链接As I am a user of vimium, it turns out I had the capabilities already shipped with it even though I wasnt aware that it existed.Search the starting point by: /yourSeachPress enter.Enable visual mode via: v, and visual mode on a line basis via Shift VSelect text by vim navigation keys, aka: h, j, k, l, b, e, w, $ (I especially like shift w, as it goes to the end of the next word)Yank via yYou now can switch the context and paste the text via CtrlVThere also seems to be a caret mode, yet as of yet I somtimes dont see the current place of the cursor, which is why I prefer the search-first approach as of now.CtrlP:CtrlN vim自带补全Ctrl] 跳到定义处相当于ctrl鼠标左键
RELATED

相关推荐

华为EC6108V9A免拆机刷机全攻略:从ADB连接到固件安装

华为EC6108V9A免拆机刷机全攻略:从ADB连接到固件安装

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/25 1:01:04
Mixly图形化编程入门:从安装到点亮LED的完整实战指南

Mixly图形化编程入门:从安装到点亮LED的完整实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/25 1:01:04
深度学习新闻分类推荐系统:从TextCNN到个性化推荐

深度学习新闻分类推荐系统:从TextCNN到个性化推荐

简介:这份基于深度学习的新闻分类推荐系统Python实现源码,是专为课程设计与期末大作业准备的高分项目,下载后无需修改即可运行,适用于需要快速交付完整课题的高校学生。系统涵盖新闻数据预处理、文本分类模型训练、推荐逻辑展示等…

📅 2026/9/25 0:01:01
MORE NEWS

更多资讯

📰

MOS管防反接电路设计从选型到调试全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

模拟IC设计入门指南:从CMOS反相器到PDK与EDA全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

Etherpad标题插件ep_headings2:原理、安装配置与避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

Windows XP离线激活原理与18KB实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

NE555呼吸灯电路设计:从PWM原理到双555方案实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

MCU选型实战指南:从需求分析到国产替代的完整流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬