vim 基本操作


0. 基本操作

:w          // 保存当前文件
:q // 退出vim
:wq // 保存退出
:w! // 强制保存当前文件
:q! // 强制退出(可以忽略修改)
:!cmd // 执行shell命令cmd
:n1,n2 w!cmd // 将文件中第n1行至n2行的内容作为cmd输入并执行, 若不指定n1,n2, 则表示将整个文件内容作为cmd的输入 i // 在光标前进入插入模式
I // 在当前行行首进入插入模式
a // 在光标后进入插入模式
A // 在当前行行尾进入插入模式
o // 在当前行的下一行新开一行进入插入模式
O // 在当前行的上一行新开一行进入插入模式
r // 替换光标下的字符进入插入模式
s // 删除光标下字符并进入插入模式
S // 删除当前行并进入插入模式

1. 移动光标命令

nh           // 向左移n个字符
nl // 向右移n个字符
nk // 向上移n行
+j // 向下移n行
// 不加n默认n为1 space // 右移一个字符
backspace // 左移一个字符 ctrl + e // 向上滚动一行
ctrl + y // 向下滚动一行 nw(W) // 向右移动n个单词至词首
nb(B) // 向左移动n个单词至词首
ne(E) // 向右移动n个单词至词尾
// 小写: 符号分隔的为一个单词
// 大写: 空格分隔的为一个单词
// 不加n默认n为1
// # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ) // 移动至句尾
( // 移动至句首
{ // 移动至段落开头
} // 移动至段落结尾 gg // 移动至文件第一行
G // 移动至文件最后一行
nG // 移动至第n行
n+ // 向下移n行
n- // 向上移n行 H // 移至屏幕顶行
M // 移至屏幕中间行
L // 移至屏幕底行 // 移至当前行首
$ // 移至当前行尾
^ // 移至当前行第一个非空白字符 ctrl + f // 向下翻一页
ctrl + b // 向上翻一页
ctrl + d // 向下翻半页
ctrl + u // 向上翻半页 nzt // 将第n行移至屏幕顶部
nzz // 将第n行移至屏幕中间
nzb // 将第n行移至屏幕底部
// 不指定n时, 默认移动当前行
// # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

2. 搜索命令

/pattern            // 从光标处向下搜索pattern
?pattern // 从光标处向上搜索pattern
n // 在同方向重复上一次搜索命令
N // 在反方向重复上一次搜索命令 fc // 在光标位置向右搜索字符c
Fc // 在光标位置向左搜索字符c
; // 同方向重复上次搜索字符命令

3. 替换命令

:s/p1/p2/g          // 将当前行中所有p1均用p2替换
:n1,n2s/p1/p2/g // 将第n1行至第n2行中所有p1均用p2替换
:g/p1/s//p2/g // 将文件中所有p1均用p2替换
// 不加g时, 只替换匹配到行的第一个匹配项

4. 拷贝/删除

nyy         // 从当前行开始向下复制n行
ndd // 将当前行及其以下共n行内容删除, 并将删除内容放到1号删除寄存器中.
p // 粘贴(从光标位置) // 不加n表示复制(删除)一行(单词) // d(删除),y(复制)可以与移动命令组合使用
// 例如 ynw 复制光标位置向右n个单词. ynj 复制当前行至向下n行. dnk 删除当前行至向上n行 :n1,n2 co n3 // 将第n1行至第n2行的内容拷贝到第n3行下面
:n1,n2 m n3 // 将第n1行至第n2行的内容移动到第n3行下面
:n1,n2 d // 将第n1行至第n2行的内容删除

5. 参考

1. https://www.isplaying.cn/jiaocheng/vim-command-1.html

 

vim 常用基本的更多相关文章

  1. Vim 常用技巧:

    Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...

  2. Vim常用命令总结

    Vim常用命令总结: 下文是小编自己整理的关于日常linux vim编程过程中用的一些常用命令,资料参考鸟哥的 如果有需要的小伙伴可以参考一下!(底部有下载地址) 一. 一般模式可用的按钮说明 1.1 ...

  3. vim常用命令(iOS)

    iOS下vim的使用: vim 的三种模式: .一般模式(默认) .插入模式(写文字) .命令行模式(保存) 各种模式的功能区分如下: .一般模式:控制屏幕光标的移动,字符和光标的删除,移动复制某区段 ...

  4. VIM常用操作总结

    VIM常用的模式网上说法不太一样,但是大同小异,这里大致分一下,便于后面总结 1.一般模式 默认打开文件后的模式,这个时候只能移动光标,不能编辑 2.输入模式 一般模式按下i,就可以进入输入模式,输入 ...

  5. 实用手册:130+ 提高开发效率的 vim 常用命令

    Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...

  6. vim常用命令汇总

    vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...

  7. [转]vim常用命令

    [转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...

  8. vim常用命令 vim键盘布局

    vim键盘布局,vim快捷键 vim常用命令:

  9. Linux常用命令及vim的使用、vim常用插件(推荐)

    看了3篇文章,很好 vim中的区域拷贝 剪切,粘贴: 正常模式,移动光标到剪切的区域开始处,按v,进入可视模式,然后选择区域.按x键,剪切.到指定位置按p粘贴. 撤销按u 恢复按ctrl-r  简明 ...

  10. VI/VIM 常用命令

    VI/VIM 常用命令=========== 整理自鸟哥的私房菜 ---------- - 移动光标 命令                    | 描述----------------------- ...

随机推荐

  1. AGC032F One Third

    很奇怪的一个题.看见了无从下手.概率期望好题. 给一个面积为 \(1\) 的圆,经过圆心随机幅角切直径 \(n\) 次,定义 \(f(x) = \min |S - \frac{1}{3}|\),其中 ...

  2. Prime Path (POJ - 3126 )(BFS)

    转载请注明出处:https://blog.csdn.net/Mercury_Lc/article/details/82697622     作者:Mercury_Lc 题目链接 题意:就是给你一个n, ...

  3. 2017 ZSTU寒假排位赛 #6

    题目链接:https://vjudge.net/contest/149212#overview. A题,水题,略过. B题,水题,读清题意即可. C题,数学题,如果把x表示成x=nb+m,则k=n/m ...

  4. sql到python正则

    import urllib.requestimport re,timeresult=[]for i in range(100):    urls ="http://xxx.com/-1%20 ...

  5. AT3576 Popping Balls

    AT3576 Popping Balls 好题!一种以前没怎么见过的思路! %%ywy 以什么方式,什么位置统计本质不同的方案,才能不重不漏是处理所有计数问题的主心骨. 本题难以容斥.难以DP. 所以 ...

  6. csp-s模拟84

    T1: 考虑如何能按顺序生成光滑数.对每个质数用队列维护包含此质数的候选集合,每次从所有队首取出最小的作为一个光滑数,用每个质数乘上这个光滑数并加入相应候选集合.这样不会漏掉一个光滑数,但会有重复.比 ...

  7. 【零基础】一文读懂CPU(从二极管到超大规模集成电路)

    一.前言 我们都知道芯片,也知道芯片技术在21世纪是最重要的技术之一,但很少有人能知道芯片技术的一些细节,如芯片是如何构造的.为什么它可以运行程序.芯片又是如何被设计制造出来的等等.本文就尝试从最底层 ...

  8. php屏蔽电话号码中间四位

    php屏蔽电话号码中间四位 一.总结 一句话总结: 直接就是substr_replace函数:$str = substr_replace("13966778888",'****', ...

  9. vuejs2从入门到精通与项目开发实战

    vuejs2从入门到精通:一.基础部分0.课件1.介绍2.vue实例3.模板语法4.计算属性和观察者5.Class与Style绑定6.条件渲染7.列表渲染8.事件处理9.表单输入绑定10.1.组件(1 ...

  10. flutter webview_flutter 设置cookies

    WebViewController _controller; onWebViewCreated: (WebViewController wvc) { _controller = wvc; } onPa ...