首页
学习
活动
专区
圈层
工具
发布

Vim基本命令

当然man vim 是一个不错的选择,不过他主要是基于在bash中使用,而不是在vim界面中的使用。非常感人的是,vim有一个自带的中文教程(中文!),讲的非常清楚(不过我没耐心看完)。...替换字符串: :s/old/new/ 这里表示在当前行用new来替换old字符第一个匹配到的字符 如果需要全局替换,需要输入: :s/old/new/g g表示全局替换 匹配的串可以用正则来表示,而且s...可以替换为一个区间,比如: :10,20 s/^/haha/g 表示在10到20行的行首添加haha,非常好理解。...注意,Vim默认的替换方式是单行替换,也就是说上面的所有替换方法都是对于单行,是指定行的替换,/g也是指在选定行下进行的全局替换,如果是要在全文中进行替换,则需要用%s参数,比如: :%s/old/new...宏 vim竟然可以实现宏功能,微醺。 在指令模式下按p再按一个字母比如a,然后输入想要的指令最后再按q即可录制出宏,保存在的@a里。下次想用的时候只需要在指令模式下按@a即可使用宏。

70820

2018-09-03 简单问题:VIM中 查找 “上一个” 的快捷键是什么?G 移动光标到指定行#. 例如: 5G-> 光标下反向搜索关键词 (search the word under cursor

要使每次打开vim时折叠都生效,则在.vimrc文件中添加设置,如添加:set fdm=syntax,就像添加其它的初始化设置一样。 2....10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。 在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],等)。...ZZ 退出vim并保存文档 ---- esc 切换命令模式 (距离太遥远了,用 Ctrl+C 代替吧). i 插入模式. I 在当前行开头插入. R 替换模式. a 在光标后插入....例如: 5G % 跳转到配对的括号去 [[ 跳转到代码块的开头去(但要求代码块中’{‘必须单独占一行) gD 跳转到局部变量的定义处 ” 跳转到光标上次停靠的地方, 是两个’, 而不是一个” mx...例如: 3,5d D 当前光标开始删除到行尾 ndd 从当前行开始向后删除n行 d1G 删除第1行到当前行的数据 dnG 删除第n行到当前行的数据 dG 删除当前行到最后一行的数据 x 向后删除1个字符

6.7K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    IDEA + Vim,竟可以这么牛逼!!

    本教程并不是单纯的vim操作介绍,更多的是与Intellj Idea进行配合。需要同时具备Intellj Idea和vim使用基础的同学学习。...常用的有: o -在当前行下方插入新行并自动缩进 O -在当前行上方插入新行并自动缩进(普通模式下的大写字母命令用shift+字母键输入,下同) i -在当前字符左方开始插入字符 a -在当前字符右方开始插入字符...但只有删除超过1行时才会影响寄存器1至9,行内的删除内容则会被存入寄存器-(减号)。如果用q命令录制宏时不涉及跨行删除,可以在宏中直接使用这9个寄存器来暂存文本。...需要注意的是宏和复制粘贴共用一套寄存器,因此在录制宏时就注意不要把当前宏正在使用的寄存器用来复制了。寄存器内容是自动保存的,重启Idea仍然生效。但IdeaVim没有导出宏独立保存的功能。...我的习惯是键盘左手区用来保存一些长期使用的宏(比如说我有一个宏专门用来把pom.xml中的版本号抽取到property区域,原来的位置则改用${property}引用)。

    4.5K10

    Mac之vim普通命令使用「建议收藏」

    大家好,又见面了,我是全栈君。 高级一些的编辑器,都会包括宏功能,vim当然不能缺少了,在vim中使用宏是很方便的: :qx 開始记录宏。...这个在文本的批处理中是很实用的。 同一时候编辑多个文件 在vim众多的插件中。有一个叫minibuffer的插件。就是以下所说的标签页功能了,能够支持同一时候编辑多个文件。...垂直切割窗体 其它 vim在保存之前不会对文件做实际的改动,仅仅是载入到缓冲区中。...替换为new,每次都要你确认是否替换 复制粘贴 dd 删除光标所在行 dw 删除一个字(word) x 删除当前字符 X 删除前一个字符 D 删除到行末...并置光标于行首 a     追加模式,置光标于当前光标之后 A     追加模式,置光标于行末 o     在当前行之下新加一行,并进入插入模式 O     在当前行之上新加一行,并进入插入模式 Esc

    2.7K31

    sed & awk 第二版学习(四)—— 基本 sed 命令

    \n:匹配第 n 个子串(n 是一个数字),这个子串以前在 pattern 中用“\(”和“\)”指定。 \:当在替换部分包含“与”符号(&),反斜杠(\)或替换命令的定界符时可以用 \ 转义它们。...第二个替换删除了引号。最后一个命令匹配模式空间中的行的结尾(不是嵌入的换行符),并在它后面添加一个换行符。...实际上,它删除当前行并且在该位置放置所提供的文本。当想要匹配行并且整体取代它时可以使用这个命令。...实际上,next 命令导致输入的下一行取代模式空间的当前行。脚本中的后续命令应用于替换后的行。如果没有抑制默认输出,那么在替换发生之前会打印当前行。...,而不是等到到达脚本的结尾时才进行写操作。

    1.1K10

    python中的ideavim有什么作用_IdeaVim插件施用技巧

    常用的有:o – 在当前行下方插入新行并自动缩进O – 在当前行上方插入新行并自动缩进 (普通模式下的大写字母命令用 shift+字母键 输入,下同)i – 在当前字符左方开始插入字符a – 在当前字符右方开始插入字符...但只有删除超过1行时才会影响寄存器1至9,行内的删除内容则会被存入寄存器-(减号)。如果用q命令录制宏时不涉及跨行删除,可以在宏中直接使用这9个寄存器来暂存文本。...需要定义全局书签可以使用Idea原本的 F11 + 数字 方式13 文本替换使用 :s/正则表达式/替换文本/ 可在本行内替换首次出现的匹配使用 :s/正则表达式/替换文本/g 在本行内替换所有出现的匹配使用...需要注意的是宏和复制粘贴共用一套寄存器,因此在录制宏时就注意不要把当前宏正在使用的寄存器用来复制了。寄存器内容是自动保存的,重启Idea仍然生效。但IdeaVim没有导出宏独立保存的功能。...我的习惯是键盘左手区用来保存一些长期使用的宏(比如说我有一个宏专门用来把pom.xml中的版本号抽取到property区域,原来的位置则改用${property}引用)。

    2.1K30

    vim简单使用教程

    在开始学习以前,我需要给你一些警告: 学习vim在开始时是痛苦的。 需要时间 需要不断地练习,就像你学习一个乐器一样。 不要期望你能在3天内把vim练得比别的编辑器更有效率。...事实上,你需要2周时间的苦练,而不是3天。 第一级 – 存活 安装 vim 启动 vim 什么也别干!请先阅读 当你安装好一个编辑器后,你一定会想在其中输入点什么东西,然后看看这个编辑器是什么样子。...键) 各种插入模式 a → 在光标后插入 o → 在当前行后插入一个新行 O → 在当前行前插入一个新行 cw → 替换从光标所在位置后到一个单词结尾的字符 简单的移动光标 0 → 数字零,...在Windows下的vim,你需要使用  而不是  , 是拷贝剪贴板。...@a → 在1下面写下 2 @@ → 在2 正面写下3 现在做 100@@ 会创建新的100行,并把数据增加到 103. ?

    1.6K30

    程序员必备vim编辑器命令,你想要的我都整理好了(建议收藏)

    前言 上个月组内来了一个新的小伙伴,赶巧那个时候我休假了!当我休完假来的时候,这个新小伙伴成了我同桌,然后就是一起做项目咯。...以在最底一行输入命令 dd 移动光标到某一个位置,删除一整行数据命令 o 在当前行的下面另起一行,并变为输入模式 shift+g 跳转到文件末尾 gg 跳转到文件首行g 下图所示是vim处于命令行模式的状态示意图...光标右侧文本向右移动 I 在光标所在行的行首输入文本,相当于在行首执行了i命令 a 在光标的右侧输入文本 A 在光标所在行的尾部进行输入文本,相当于在光标行尾执行a命令 o 在光标所在行的下一行增添新的一行...,光标停留在新行的行首 O 在光标所在行的上一行增添新的一行,光标停留在新行的行首 下图所示为vim处于输入模式模式下的示意图: 2021-05-29 12.00.55.gif 02.3 vim底线命令模式...将光标跳转到当前或下一个单词的词尾 2021-05-29 14.07.10.gif ③ 首尾行移动命令 ① $ 将光标移动到当前行的尾部 ② 0 将光标移动到当前行的行首 -- 0 表示数字零 不是字母

    1.4K40

    Vim大揭秘:Linux下编辑之道

    这将重复录制宏时的操作。 重复执行宏: 输入 @@ 来重复执行上一次使用的宏。 执行宏多次: 输入 3@a 来执行宏 a 三次。可以根据需要更改数字。 这些技巧可以使你更高效地处理文本。...替换指定范围: 例如,使用 :10,20s/old/new/g 替换第 10 行到第 20 行之间的匹配项。 这些是基本的搜索和替换命令,根据需要可以进行更高级的操作。...这些是在 Vim 中进行多文件编辑时使用的一些基本命令。你可以根据需要选择窗口或标签页来组织你的编辑环境。如果需要更多信息,可以查阅 Vim 的帮助文档。...A - 在行尾进入插入模式 o - 在当前行下方插入新行 O - 在当前行上方插入新行 复制、粘贴和删除: y - 复制选中文本 p - 粘贴文本 dd - 删除当前行 dw - 删除一个单词...配置 Vim 的显示和行为: 显示行号: 在 ~/.vimrc 文件中添加以下行来显示行号: set number 显示当前行和列: 在 ~/.vimrc 文件中添加以下行来显示当前行和列: set ruler

    80300

    Linux如何通过命令查看日志文件的某几行(中间几行或最后几行)「建议收藏」

    3.1 sed命令 命令 功能 a\ 在当前行后添加一行或多行。多行时除最后一行外,每行末尾需用“\”续行 c\ 用此符号后的新文本替换当前行中的文本。...第二重编辑将出现的所有My替换为Your。因为是逐行进行这两项编辑(即这两个命令都在模式空间的当前行上执行),所以编辑命令的顺序会影响结果。 6.5 r命令 r命令是读命令。...,只保存最近一次执行h时保存进去的模式空间的内容。...而H命令则把每次匹配hrwnag的行都追加保存在暂存缓冲区。...而G命令则把暂存缓冲区的内容追加到了模式空间的当前行后。此处即追加到了末尾。

    11.7K60

    【Linux基础知识】Linux文件编辑器:Vim与Emacs的使用技巧

    )、o(在光标所在行的下一行插入新行)等键。...在末行模式下,可以执行保存文件、退出Vim、查找替换等操作。例如,输入:w保存文件,:q退出Vim,:wq保存并退出。...yy命令复制当前行,nyy复制从当前行开始的n行。...例如,3yy复制当前行及下面两行。 粘贴:使用p命令将复制的内容粘贴到光标后,P粘贴到光标前。 删除:dd命令删除当前行,ndd删除从当前行开始的n行。例如,4dd删除当前行及下面三行。...使用qa命令开始录制宏,q结束录制(a可以替换为其他字母,用于区分不同的宏)。录制完成后,使用@a(这里的a与录制时的字母一致)回放宏。

    76300

    Linux:sed命令详解

    3.1 sed 命令 命令 功                能 a\ 在当前行后添加一行或多行。多行时除最后一行外,每行末尾需用“\”续行 c\ 用此符号后的新文本替换当前行中的文本。...第一重编辑删除第1-3行。第二重编辑将出现的所有My替换为Your。因为是逐行进行这两项编辑(即这两个命令都在模式空间的当前行上执行),所以编辑命令的顺序会影响结果。...,只保存最近一次执行h时保存进去的模式空间的内容。...而H命令则把每次匹配hrwnag的行都追加保存在暂存缓冲区。  ...而G命令则把暂存缓冲区的内容追加到了模式空间的当前行后。此处即追加到了末尾。 7.  sed 脚本 sed 脚本就是写在文件中的一列 sed 命令。脚本中,要求命令的末尾不能有任何多余的空格或文本。

    8.8K60

    说实话,Intellij IDEA 自带的 Vim 插件真心不错。。。

    常用的有: o - 在当前行下方插入新行并自动缩进 O - 在当前行上方插入新行并自动缩进 (普通模式下的大写字母命令用 shift+字母键 输入,下同) i - 在当前字符左方开始插入字符 a - 在当前字符右方开始插入字符...但只有删除超过1行时才会影响寄存器1至9,行内的删除内容则会被存入寄存器-(减号)。 如果用q命令录制宏时不涉及跨行删除,可以在宏中直接使用这9个寄存器来暂存文本。...需要定义全局书签可以使用Idea原本的 F11 + 数字 方式 13 文本替换 使用 :s/正则表达式/替换文本/ 可在本行内替换首次出现的匹配 使用 :s/正则表达式/替换文本/g 在本行内替换所有出现的匹配...需要注意的是宏和复制粘贴共用一套寄存器,因此在录制宏时就注意不要把当前宏正在使用的寄存器用来复制了。 寄存器内容是自动保存的,重启Idea仍然生效。但IdeaVim没有导出宏独立保存的功能。...我的习惯是键盘左手区用来保存一些长期使用的宏(比如说我有一个宏专门用来把pom.xml中的版本号抽取到property区域,原来的位置则改用${property}引用)。

    14.8K42

    第三章 —- 了解各种 Linux 文本编辑器

    常用命令 光标移动命令 高级读取和保存命令 插入和替换命令 词移动命令 删除和修改命令 复制行的命令 样式查找命令 开始使用 Vi vi niit.txt :如果 niit.txt 文件存在,就进入命令模式...I:在光标的行首插入文本 o:在光标所在的行下插入一行文本 O:在光标所在的行上插入一行文本 r:修改当前光标所在的字符 R:替换文本 退出模式:按键 shift + :,由命令模式进入退出模式...A 附加于行末 i 在当前字符前插入 I 在行首插入 o 在下面插入空白行并允许插入 O 在上面插入空白行并允许插入 rx 用字符 x 代替当前字符 Linux 还支持在键入单词的初始字符时自动显示该单词...cw 更改词 cc 更改当前行 x 删除当前光标位置的字符 j 连接行 u 撤销上次更改 U 撤销当前行的所有更改 ....(开启区分大小写) 样式查找指令 命令 操作 fx 在当前行上的当前光标位置后查找字符 x Fx 在当前行的当前光标位置前查找字符 x /pattern + Enter 查找包含的给定样式的下一行 ?

    2.8K30

    新手不放弃系列-循序渐进-教你快速入门Vim

    a : 在光标后插入 o : 在当前行后插入一个新行 O : 在当前行前插入一个新行 cw : 替换从光标所在位置后到一个单词结尾的字符 简单的移动光标 0 : 数字零,到行头 $...path/to/file> : 另存为 :x, ZZ 或 :wq : 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车) :q!...Ctrl f : 向下翻一页 Ctrl b : 向上翻一页 NG : 到第 N 行 (注:注意命令中的G是大写的,另我一般使用 : N 到第N行,如 :137 到第137行) gg :...") # print("hello world") print("hello world") print("hello world") 在 Windows 下的 Vim,你需要使用 而不是...@a : 在 1 下面写下 2 @@ : 在 2 正面写下 3 现在命令行键入 100@@ 会创建新的100行。

    71620

    【Linux】Linux开发必备六大工具之代码、编译、多人协作开发工具

    :进入底行模式 插入模式:用户所有的输入都会被认为是文本输入,按esc切换到命令模式 底行模式:用户用来进行文件保存或退出,进行文件替换,找字符串,列出行号等操作,按esc切换到命令模式 以下是vim的所有模式...、汇编、链接四个部分,这里我们可以穿插新内容简单回忆一下,有兴趣大家可以看看我以前写的有关这部分的blog C语言预处理~ C语言编译和链接~ 预处理阶段主要就是进行宏替换,生成.i文件 编译阶段检查代码规范性...,这就是宏替换,大量头文件的包含引入,然后经过编译,文件大小变小,然后汇编,由汇编代码生成二进制编码,大小变大,再然后就是链接库生成可执行文件 这里的库是函数库,因为像printf这样的函数,在我们的C...这意味着开发者可以在本地进行完整的开发流程,包括提交、暂存等操作,而无需依赖网络连接到中心服务器 git采用了一种称为 “快照” 的方式来存储版本信息,它会在每次提交时为整个项目创建一个快照,记录下所有文件的状态...,我们自己也可以开源项目共其他人查看,Github作为一个外国网站,本身访问不太稳定,需要借助一定的“技术”才能使用,所以我们在这里展示一下Gitee的使用 新增仓库时下方三个按钮都是可选可不选的,一般来说

    93110

    ChatGPT与Excel结合_编写VBA宏

    案例1 比如我的需求是:写一个基本的Excel vba宏,用于将表格中的第3行到第9行每一行数据转换为一个新的工作簿 VBA宏如下: Sub SplitRowsToNewWorkbooks()..."已将行数据分割为新的工作簿并保存。"...End Sub 请将代码中的"路径\文件名.xlsx"替换为你希望保存的路径和文件名。运行该宏后,会将第3行到第9行的每一行数据复制到一个新的工作簿,并将其保存在指定的路径下。...操作如下: 1️⃣ 2️⃣需要注意修改代码的行数列数表格数,确定没啥问题 3️⃣ 4️⃣在这里需要注意“将代码中的"路径\文件名.xlsx"替换为你希望保存的路径和文件名”...5️⃣改完路径就会弹窗(要关闭这个弹窗才可以打开新的excel表格文件哦) 6️⃣执行完,打开刚刚设置的路径文件,程序执行pass~~ 虽然chatGPT没有理解我的命令是“每一行

    4.4K10

    ChatGPT与Excel结合_编写VBA宏

    案例1 比如我的需求是:写一个基本的Excel vba宏,用于将表格中的第3行到第9行每一行数据转换为一个新的工作簿 VBA宏如下: Sub SplitRowsToNewWorkbooks()..."已将行数据分割为新的工作簿并保存。"...End Sub 请将代码中的"路径\文件名.xlsx"替换为你希望保存的路径和文件名。运行该宏后,会将第3行到第9行的每一行数据复制到一个新的工作簿,并将其保存在指定的路径下。...操作如下: 1️⃣ 2️⃣需要注意修改代码的行数列数表格数,确定没啥问题 3️⃣ 4️⃣在这里需要注意“将代码中的"路径\文件名.xlsx"替换为你希望保存的路径和文件名”...5️⃣改完路径就会弹窗(要关闭这个弹窗才可以打开新的excel表格文件哦) 6️⃣执行完,打开刚刚设置的路径文件,程序执行pass~~ 虽然chatGPT没有理解我的命令是“每一行

    4.1K20

    vim配置即.vimrc文件的配置及vim操作技巧

    :%s/^/xxx/g - 在每一行的行首插入xxx,^表示行首。 :%s//xxx/g - 在每一行的行尾插入xxx,表示行尾。 所有替换命令末尾加上c,每个替换都将需要用户确认。...特别提示∶切记您要在使用中学习,而不是在记忆中学习。...在一行内替换头一个字符串 old 为新的字符串 new,请输入  :s/old/new在一行内替换所有的字符串 old 为新的字符串 new,请输入  :s/old/new/g在两行内替换所有的字符串...old 为新的字符串 new,请输入  :#,#s/old/new /g在文件内替换所有的字符串 old 为新的字符串 new,请输入  :%s/old/new/g进行全文替换时询问用户确认每个替换需添加...为了在光标 *上方* 打开新的一行,只需要输入大写的 O 而不是小写的 o就可以了。请在下行测试一下吧。当光标处在在该行上时,按 Shift-O可以在该行上方新开一行。

    5.2K11

    linux下vim命令详解

    高级一些的编辑器,都会包含宏功能,vim当然不能缺少了,在vim中使用宏是非常方便的: :qx 开始记录宏,并将结果存入寄存器x q 退出记录模式 @x 播放记录在x寄存器中的宏命令...,只是加载到缓冲区中,对文件的编辑其实是对缓冲区的编辑,直到:w时才会存入物理文件。...new,每次都要你确认是否替换 复制粘贴 dd 删除光标所在行 dw 删除一个字(word) x 删除当前字符 X 删除前一个字符 D 删除到行末 yy...a `a 跳转到标签a处 编辑 r 替换一个字符 J 将下一行和当前行连接为一行 cc 删除当前行并进入编辑模式 cw 删除当前字,并进入编辑模式 c$...A 追加模式,置光标于行末 o 在当前行之下新加一行,并进入插入模式 O 在当前行之上新加一行,并进入插入模式 Esc 退出插入模式 可视模式 标记文本 v 进入可视模式

    3.3K30
    领券