资讯专栏INFORMATION COLUMN

Vim贴士集锦

Cciradih / 849人阅读

摘要:前言我使用也有一段时日了,但依然还有许多强大的功能没有用上。我把自己平时发现的一些使用的细节记录在此帖里,供自己与诸君翻阅,持续更新。无名寄存器,命令粘贴的内容,保存最近一次删除或复制的内容。所有不包含换行符的删除都会保存在此寄存器中。


前言

我使用vim也有一段时日了,但依然还有许多强大的功能没有用上。中间也曾尝试过emacs和sublime,可能是先入为主了,总是感觉有些别扭,又回到vim。我把自己平时发现的一些使用的细节记录在此帖里,供自己与诸君翻阅,持续更新。

快捷键拾遗

数字0,普通模式下快速移动到行首

-复制粘贴

shCtrl+V可视模式选择复制区域
2y #追加到2号寄存器
*y #复制到系统寄存器
+y #复制到剪切板
2Y #覆盖到2号寄存器
#注意大小写啊,一个是追加,一个是重写

*p#将*寄存器的内容粘贴出来
ex命令
sh:m,n s/pattern/dest/g
#将m-n行里地pattern换为dest
:% s/pattern/dest/g
#%代表全局
:map
#可以查看配置的快捷键键位,配上了airline之后再也不用担心记不住键位了
缓冲区 基本
shell:ls #查看打开的所有缓冲区
缓冲区的跳转

vim有多个缓冲区,可使用它们打开不同的文件并跳转

shell:bnum #跳到第num号缓冲区
:bdelete num #关闭第num号缓冲区
:bn(next) #跳到下一个缓冲区
:bp(previous) #跳到上一个缓冲区
缓冲区间的复制粘贴
shell:m,ny num #通过复制到指定寄存器来完成
缓冲区的保存
:wall #保存所有缓冲区的内容
寄存器

vim共有9个寄存器,可以通过

:reg 
或者
:dis
#查看所有寄存器信息

数字寄存器会根据你做的操作而改变,但是字母寄存器则不会,所以若长期需要复制某内容,保存在字母寄存器中

寄存器的规则

数字寄存器有十个,分别是:"0,"1,"2... "9(注意:数字前有个双引号),寄存器"0保存上一次复制(y)操作的文本,"1到"9寄存器保存最近9次删除的文本行(注意这个“行”字),"1保存的内容是最最近一次删除的内容(也就是说最后一次执行删除命令保存的内容)"2保存的是倒数第二次删除的内容,依此类推,直到"9,如果又有新的操作,那么"9的内容将会被"8的内容替换,先前”9的内容将被丢弃。
"":无名寄存器,p命令粘贴的内容,保存最近一次删除或复制的内容。
“-:(-是个减号)小删除寄存器(small delete register),前面说过要您注意这个”行“字,也就是说并不是所有删除的文本都会保存在数字寄存器中,如果你删除的只是一个单词或字母: dw或者x,那么这个单词并不会保存在"1寄存器中,而是保存在"-寄存器里面。所有不包含换行符的删除都会保存在此寄存器中。
“*:系统寄存器
(寄存器规则部分内容转载@_zhijun新浪博客)

寄存器的操作
ayy#复制改行到a寄存器中
#记住字母寄存器为大写时是追加模式
:m,ny num #将m至n行的内容复制到num号寄存器
"ap #将a寄存器内容粘贴到光标处
像变量一样操作寄存器

寄存器是特殊的变量,只要在寄存器名字前面加一个@就可以操作了

js:let @1="" #清空1号寄存器
:let @1=@2 
:echo @1+4
可视化模式 可视化模式下的插入删除
Ctrl+V进入可视化模式
移动光标选择行和区域
删除:选中区域后按d即可
插入:选中区域后按I(大写),插入字符后按ESC

插件 插件管理

我使用Vundle插件来管理插件

安装插件
shvim ~/.vimrc.bundles
//insert the follow
Bundle "githubUsername/pluginName"
//quit & vim
:BundleInstall
卸载插件
shvim ~/.vimrc.bundles
//desert the same line
:q 
vim
:BundleClean
状态栏增强

airline,可以提示模式,当前行百分比,已键入命令等,很好很强大

快速编辑

nerdcomment 快速注释的利器

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24794.html

相关文章

  • Vim与Python真乃天作之合:打造强大的Python开发环境

    摘要:编辑器安装完成后,我们来看看如何将其设置为开发的强大环境。开始打造吧本文不可能列举的全部功能,只能快速介绍一些自带的强大功能,它们对于开发来说是非常有用的。其次,更好地处理自动缩进。 本文由编程派-EarlGrey翻译,原文出自realpython,是Vim的爱好者专门针对利用Sublime Text 3设置Python IDE一文所写。译者本人也是依照Sublime Text那篇文章...

    longshengwang 评论0 收藏0
  • Vim与Python真乃天作之合:打造强大的Python开发环境

    摘要:编辑器安装完成后,我们来看看如何将其设置为开发的强大环境。开始打造吧本文不可能列举的全部功能,只能快速介绍一些自带的强大功能,它们对于开发来说是非常有用的。其次,更好地处理自动缩进。 本文由编程派-EarlGrey翻译,原文出自realpython,是Vim的爱好者专门针对利用Sublime Text 3设置Python IDE一文所写。译者本人也是依照Sublime Text那篇文章...

    voyagelab 评论0 收藏0
  • 一个以用户为中心的vim包管理软件:VimApt

    摘要:中文版是一个的软件包管理器软件包管理软件其中是的缩写特性基于的软件包仓库一个软件包,一个配置文件使得的软件包更易于管理,更容易分享配置和更容易备份从软件打包到软件安装的全系列支持工具,让使用者非常容易使用获取你可以从上下载安装提供了自动安 中文版 README: https://github.com/howl-ander... Vimapt Vimapt是一个Vim的软件包管理器/软件...

    megatron 评论0 收藏0
  • 【译】确保网站性能的5个小贴士

    摘要:定期进行负载测试负载测试显示您的网站在一定数量的用户访问时的表现。如果负载测试显示的页面加载时间比预期的要长,那么网站设计的小改动就能带来所需的改进。 确保网站性能的5个小贴士 翻译:疯狂的技术宅作者:Jennifer Oksnevad英文标题:5 Tips to ensure website performance英文原文:https://www.catswhocode.com/b....

    ls0609 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<