Vim 技巧】的更多相关文章

VIM技巧之分隔窗口 分类: 技术2010-07-08 09:57 754人阅读 评论(1) 收藏 举报   同时显示两个不同的文件, 或者同时查看同一个文件的两个不同位置, 或者是同步显示两个文件的不同之处. 所有这些都可以通过分隔窗口的功能来实现. 1. 分隔一个窗口 打开一个新窗口最简单的办法就是使用命令: (ex command):split 该命令将屏幕分为上下两个窗口并将光标定位在上面的窗口中: +----------------------------------+|/* file…
VIM技巧(2)-删除匹配行 代码如下: * @Company:中国股份有限公司 * @author ymzhao (也有zyyang的) * @Date: Jan 22, 2014 11:25:29 AM 要删除代码中类似行 * @Date: Jan 22, 2014 11:25:29 AM vim命令如下: %g/^\s*\*\s@Date:.*/d…
VIM技巧(1) 替换 36s/^\(.* = \)entity.\(.*\)$/\1this.GetShowName("\2",\2); 删除空行 %g/^$/d %g/^\s*$/d 删除多个空格+[+字符行 :%g/\s*[[].*/d 删除多个空格+/+字符行 :%g/\s*[//].*/d 替换 :%s/\(^.*=\)\s\(this.*$\)/\2\t\1 vs里面代码替换 :%s/^\s*\(.*\)=\s*\(.*\);$/\2=\1; :%s/.Trim()/ :%…
最佳vim技巧----------------------------------------# 信息来源----------------------------------------www.vim.org         : 官方站点comp.editors        : 新闻组http://www.newriders.com/books/opl/ebooks/0735710015.html : Vim书籍http://vimdoc.sourceforge.net/cgi-bin/vim…
vim技巧:折叠快捷键 以前用的挺熟的,一段时间不用了,快捷键又忘了,不得不重新再看手册,今天专门整理一下,以后查找起来也比较方便. zc 折叠,只折叠最外层的折叠zC 对所在范围内所有嵌套的折叠点进行折叠,包括嵌套的所有折叠.zo 展开折叠,只展开最外层的折叠.zO 对所在范围内所有嵌套的折叠点展开,包括嵌套折叠.[z 到当前打开的折叠的开始处.]z 到当前打开的折叠的末尾处.zj 向下移动.到达下一个折叠的开始处.关闭的折叠也被计入.zk 向上移动到前一折叠的结束处.关闭的折叠也被zd 删除…
vim技巧:如何删除/保留文本中特定的行呢? <ol><a href="/ss/ss/www"> show invisibles</a> <a href="/ss/ssg/gg/ff/"> one world one dream</a> 任务1:只保留<a>标签内的标题,而把其他行都删掉:g/re/d 知识点:使用:global与:delete命令 运行一下命令: /\v\<\ /?\w+…
Vim技巧之四大模式_普通模式 一见不钟情的普通模式 普通模式以下的强悍操作 什么是操作符 什么是动作命令 误操作怎么办 那种操作更划算 普通模式下的神奇大招 Vim技巧之四大模式_普通模式 众所周知,vim里面最具特色的东西就是它能够切换模式,那什么是模式呢?能够简单的理解为在不同的模式以下按同样的键而得到不同的效果.比方Vim在插入模式以下连按两次d,那么就会在光标位置插入两个字母d,假设在普通模式以下连按两次d.那么光标所在当前行将会被删除. 既然说是Vim的四大模式,那么Vim究竟有那四…
Vim技巧之四大模式_插入模式 在插入模式中及时更正错误 插入-普通模式 在插入模式模式以下直接粘贴指定寄存器的内容 插入模式中做运算 用字符编码插入很常使用字符 替换已有的文本 Vim技巧之四大模式_插入模式 在前面的文章<Vim技巧之四大模式_普通模式>中我们提到过四大模式之中的一个的普通模式,今天我们继续讲讲Vim四大模式里面的插入模式 普通模式好比是发动一个技能.而插入模式则好比是一般的物理攻击,可是就算是平平淡淡的物理攻击,还是有不少的技巧可言的 在插入模式中及时更正错误 在普通模式…
vim技巧总结-查找 1.查找命令1.1 执行一次查找普通模式下,/会调用查找提示符,如果vim扫描到文档尾部仍没有找到目标,会提示"search hit BOTTOM, continuing at TOP".这意味着文档会回绕至开头继续查找.如果想关闭文档回绕查找,可以关闭'wrapscan'选项::set nowrapscan1.2 指定查找方向/键查找时,执行正向扫描,?键查找时,执行反向扫描.1.3 重复上一次查找n用于跳转到下一次匹配,N用于跳转到上一次匹配.1.4 回溯之前…
会务准备期间材料准备工作具体实施总结(vim, python, microsoft word) span.kw { color: #007020; font-weight: bold; } code > span.dt { color: #902000; } code > span.dv { color: #40a070; } code > span.bn { color: #40a070; } code > span.fl { color: #40a070; } code >…
(三)多窗口操作 改变高度:res +n(增加n行的高度)n ctrlw  +/-改变宽度:vertical res +n(增加n列的宽度)n ctrl w >/< (一)缩进 vim提供4种缩排,:set indenttype.indenttyep可为autoindent.smartindent.cindent.indentexpr.其中,autoindent与vi的autoindent类似,smartindent则是对其做了点加强,可识别基础C语法,如下: a.在{后的下一行 b.以cin…
从网上找源代码时经常会发现代码虽然排版很好,但是前面带着行号,直接复制粘贴得将前面的行号去掉才能编译,而更糟糕的是前面带行号,而代码又没排版,简直是噩梦.在VIM中可以轻易地解决这个问题. 这里将网上的一段代码粘贴到VIM中时的截图: 图1 网上的代码粘贴到VIM中 是不是相当糟糕,使用正则表达式替换(前头的:表示输入模式) :%s/[ \t]*\d\{1,4\}/ 立马得到如下结果 图2 替换后的结果 现在效果好了不少,不过还有个问题,缩进有的不正确,OK. 进入Normal模式,通过(命令右…
今天和大家分享下  对于  vim 中 查找与替换方法 例如有一篇文章.中英文不限制. 用户如果想查找其中的文字或单词 在 win系统的Notepad中一般都时 ctrl + F 去查询 而在 vim 中 我们直接 /需要查询的单词 即可. 通过此命令还可以将文章中的剩余单词全部高亮显示. 用户只需要按 n 就可以下一个 按 N 就可以上一个 以上这是查找方法 -------------------------------------------- 如果想查找后替换应该怎么办呢? 其实很简单.…
VIM的匹配替换功能很快很强大,但是要显示匹配个数就很苦情,要绕个弯子实现:%s/xxx//gn关键是最后的n,代表只报告匹配的个数,而不进行实际的替换. vim v5 强大.. 另外,如果你习惯了windows上的编辑器,就需要改改习惯了,ctrl+s is the key.ctrl+s将shell锁定了. 看起来就像你的vim死翘翘了,早些时候,觉得是vim出现错误,就直接用ctrl+C将它干掉,重新开始,其中的感受是悲催啊. 这个时候请用ctrl+q解除shell锁定.…
vim:set number:set nonumbern 移动命令键8l 向右移动八个字符3j 向下移动三行3G:移动到第三行行首10$:下移到10行,并定位到行尾:n1,n2s/word1/word2/gc替换n1,n2行之间的word1为word2,并让用户确认:1$s/man/Man/gnyy复制从光标行开始的向下n行ndd:删除从光标开始的n行nX:从光标所在开始删除n个字符u撤销一次操作e!撤销全部操作:w config.bak 另存文件名为config.bak 文件在最后一行后插入当…
在正常模式下(按ESC进入)按键v进入可视化模式,然后按键盘左右键或h,l键即可实现文本的选择.其它相关命令:v:按字符选择.经常使用的模式,所以亲自尝试一下它. V:按行选择.这在你想拷贝或者移动很多行的文本的时候特别有用. CTRL+v:按块选择.非常强大,只在很少的编辑器中才有这样的功能.你可以选择一个矩形块,并且在这个矩形里面的文本会被高亮. 值得注意的是如果VIM中使用自动换行,那么直到你按ENTER换行前,VIM都会将你之前输入的内容视为一行而不是你看到的好几行,按块选择时就会按VI…
安装插件 有个很好的同志已经做了一个比较全的插件集,下载就可以用: mv ~/.vimrc ~/.vimrcbak mv ~/.vim ~/.vimbak git clone https://github.com/handy1989/vim.git mv vim/.vimrc vim/.vim ~/ 查找,替换: :1,%s/strfind/strreplace/gn 查找个数 :1,%s/strfind/strreplace/g 替换 跟踪函数: ctrl + ], 返回 ctrl + t 上…
若正在编辑文件,临时须要查看目录: (1)直接在底行模式下使用ls命令,完整的为:!ls 在我这里就显示如下的结果: functionpointer    helloWorld.s       testArray1    testPointer.c  testStruct     testStruct2.c  testStruct.c functionpointer.c  pointerfunction    testArray1.c  testRealloc    testStruct1  …
今天遇到了一种情况,就是我需要同时修改34个文件中的某些字符串的内容,如果一个个打开需改的话,那也太麻烦了.后来就想着能不能通过vim的宏命令来修改呢?现在就总结下关于宏在文件列表中的应用1.首先,我们创建一个文件夹 all 2.里面我们创建6个文件分别是 .txt,.txt,.txt,.txt,.txt,.txt 3.内容都是 aaa bbb ccc 现在我们想要把每一个文件里面的aaa都换成zhangshuli,我们可以这么做第一步:把要操作的文件,导入到缓存去列表 vim ; :args…
viw 它的作用是选取一个单词(word),无论光标在这个单词的哪个位置都能选中整个单词. 每日一Vim(18)Text-Object 前两节讲了Visual mode相关内容,这里提一个小问题,“如何选择一个单词?”3秒后...,你可能会使用命令vw,很不幸的是它会把下一个单词的首字母也选中.如果你足够细心的话,你会发现答案在之前的章节中讲过,命令是:viw.它的作用是选取一个单词(word),无论光标在这个单词的哪个位置都能选中整个单词,那么i到底有什么作用呢?这就是今天要讲解的内容. Te…
自动补齐CTRL+N/CTRL+P vim 自动补全 颜色设置 hi Pmenu ctermfg=black ctermbg=gray guibg=#444444 hi PmenuSel ctermfg=7 ctermbg=4 guibg=#555555 guifg=#ffffff…
w:向前移动,光标停留在下个单词词首,每次一个单词(单词中不含其他字符如:- \ = +等) W:向前移动,光标停留在下个单词词首,每次一个字符串(字符串可以含有其字符如:- \ = +等,is-a word/and/bog 这种都是字串) b:向后移动,光标停留在前个单词词首,每次一个单词(单词中不含其他字符如:- \ = +等) B:向后移动,光标停留在前个单词词首,每次一个字符串(字符串可以含有其字符如:- \ = +等,is-a word/and/bog 这种都是字串) e:向前移动,光…
在编辑模式或可视模式下输入的命令会另外注明.1. 查找   /xxx(?xxx)       表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示                   向上查找.其中xxx可以是正规表达式,关于正规式就不多说了.                   一般来说是区分大小写的, 要想不区分大小写, 那得先输入                   :set ignorecase                   查找到以后, 再输入 n 查找下一个匹…
参考:http://blog.chinaunix.net/uid-23381466-id-88482.html f'l ct' #fX,X可用任何字符,l表示向右移一位,ct'表示删除至引号前di'…
整页翻页 ctrl-f ctrl-bf=forword b=backward 翻半页ctrl-d ctlr-ud=down u=up 滚一行ctrl-e ctrl-y zz 让光标所在的行居屏幕中央zt 让光标所在的行居屏幕最上一行 t=topzb 让光标所在的行居屏幕最下一行 b=bottom…
在vi的命令模式下输入":set nu",就有行号了,取消行号输入":set nonu". 命令只对当前文档有效,如果想使vi打开文档时默认显示行号,可以修改vi的配置文件. # vi ~/.vimrc 在这个文件中,添加 set nu 保存即可.…
大家应该有遇到过给整篇内容增加同样的东西的经历.例如给每行结尾增加分号.冒号等内容. 今天和大家分享下 关于此场景如何快速.高效的实现. 例如 Line one Line two Line three Line four 有以上内容.每行结尾都想增加一个分号.我们可以这样做. 第一步   A   将光标定位到当前行尾部并准备添加内容 第二步    :   输入分号 增加 第三步    esc  退出  然后使用    j  光标下移一行    . 重复执行     即可 ------------…
yyp复制当前行到下一行ddp剪切当前行到下一行cw:删除当前单词并进入插入模式xp:交换当前字符和右边字符s:删除光标所在的字符并进入插入模式I:在行首开始输入文字并进入插入模式A:在行尾开始输入文字并进入插入模式O:在光标所在行的上面单独开一行来输入文字并进入插入模式S:删除光标所在行并进入插入模式 Normal模式使用命令x:删除当前光标所在的一个字符cw:替换从光标所在位置后到一个单位结尾的字符^:到本行第一个不是blank字符的位置(blank指空格.换行.回车等 )$:到本行的尾部g…
:r 文件名 导入另一文件到当前文件中 :! 命令 可以不退出当前编辑的文本而能执行系统的命令 自定义快捷键 注意这里的^P这个是ctrl + V + P :map ^P I//<ESC> 注释 :n1,n2s/^/#/g :n1,n2s/^/\/\//g 删除注释 :n1,n2s/^#//g :n1,n1s/^\/\///g 替换 ab mymail jasonxu.1990.gm@gmail.com…
1.  导入文件内容  :r  文件名 2.  插入当前日期  :r  !date 3. :!which ls 4. :r !命令…