![](https://img-blog.csdnimg.cn/20200925101920585.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Vim
文章平均质量分 76
Vim
大胃粥
掘金https://juejin.im/user/2805609401693943/posts
展开
-
vim 的 markdown 预览
vim 实现 markdown 实时预览原创 2022-06-27 12:25:33 · 3310 阅读 · 0 评论 -
vim插件auto-pairs,实现引号、括号自动补全
用 vim 写代码时,我们会遇到这样的情况: 当输入一个前括号后,后面的相对应的括号不会自动补全。这个问题其实可以通过vim的映射做到,在 ~/.vimrc 中配置如下inoremap ' ''<ESC>iinoremap " ""<ESC>iinoremap ( ()<ESC>iinoremap [ []<ESC>iinoremap { {<CR>}<ESC>O配置这些之后,我们还会遇到另外一个问题,例如,当我们在双引原创 2020-12-11 14:02:09 · 2830 阅读 · 0 评论 -
vim中令人头疼的缩进该怎么配置
你应该遇到过在VIM中写代码,但是在其它编辑器中显示错乱的情况,这是因此没有对VIM进行正确的配置。高级语言配置首先介绍在VIM中写高级语言(c, c++, java)的配置。首先这些高级语言都是使用空格进行缩进的,因此需要在VIM中设置set expandtab把tab键转换为空格。其次,这些高级语言的代码中,一个tab键是代表4个空格的,所以需要设置set tabstop=4。最后,这些高级语言的自动缩进,也是使用4个空格,因此需要设置set shiftwidht=4。因此把这些设置项添加到原创 2020-09-25 14:03:58 · 1139 阅读 · 0 评论 -
Vim注释插件vim-commentary
在Vim中注释代码没有非常方便的快捷键,vim-commentary 提供了注释代码的操作符,它支持普通模式,可视模式,命令行模式。普通模式vim-commentary 所提供的注释操作符命令为 gc,那么就可以有如下的操作gcc注释光标所在的当前行。gcap注释段落。如果函数之间是用空行分隔的,那么gcap会注释光标所在整个的函数。可视模式使用可视模式选中几段代码,然后使用gc就可以注释选中的代码。命令行模式通过gc来注释代码,最常用的模式为普通模式和可视模式。作者为了插件功能的全面性原创 2020-09-01 17:34:44 · 1921 阅读 · 0 评论 -
Vim标记
标记可以让我们进行快速跳转,例如当我们正在写代码,此时发现需要复制一段代码过程,那么我们会先退出插入模式,然后复制需要的代码,最后可以通过 `. 跳转到最后一次修改的位置,使用p把代码粘贴过来。设置标记通过如下命令在光标的位置设置标记m{a-zA-Z}m就是mark的意思,后面跟大写字母还是小写字母,功能是不同的。m{a-z} 只能在文件内标记,并且只适用于文件内跳转。m{A-Z} 标记文件,用于在不同文件之间跳转。跳转到标记位置跳转到标记位置也有两种方式`{mark} : 光标跳原创 2020-08-28 15:17:38 · 1183 阅读 · 0 评论 -
Vim插件之vim-surround
在Vim中,如果想对一个单词上加上引号,那么是相当麻烦的,恰好Github上有一个Vim插件 vim-surround ,它可以处理诸如括号(小,中,大括号),引号(单引号,双引号,反引号),XML标签的添加、删除、修改。添加添加命令的形式为ys + 动作命令 + 待添加的符号命令文本Helloysiw"“Hello”ysiw"命令,其中ys是添加动作,iw是一个就让文本对象,表示当前单词,"表示要添加的符号。添加标签,比较特殊,也举个例子命令文本原创 2020-08-28 13:33:20 · 1030 阅读 · 0 评论 -
Vim文本对象
文本对象(text object),在Vim中并没有给出明确的定义。不过当我们知道文本对象该如何使用时,自然就明白什么是文本对象。Vim把文本对象分为了两类 ,一类是块文本对象,另一类是非块文本对象。非块文本对象什么是非块文本对象呢?Vim没有给出明确定义,但是划分了哪些命令属性非块文本对象。命令如下非块文本对象说明aw当前单词及单词前面或者后面的空格iw当前单词aW当前字串及字串前面或者后面的空格iW当前字串as当前句子及句子前面或后面的空格原创 2020-08-27 17:44:45 · 905 阅读 · 0 评论 -
Vim移动命令(2)基于单词/字串的移动命令
Vim移动命令(1)基本移动命令 讲解了基本的移动命令,对于左右的移动,使用h, l来进行移动,但是它的粒度太细了,一次只能移动一个字符位置。Vim提供了基于单词/字串的移动命令,能让我们在一行中,每次移动一个单词/字串。单词和字串的定义首先我们得知道什么是单词(Vim中用word表示),什么是字串(Vim中用WORD表示)。单词的定义有两种方式,如下由字母,数字和下划线组成的字符序列,例如 66hello就是一个单词。如果没有字母,数字或下划线,仅通过非空白字符组成的字符序列,也是一个单词。原创 2020-08-27 14:00:41 · 1009 阅读 · 0 评论 -
Vim移动命令(1)基本移动命令
前言刚开始学Vim移动命令的时候,最快上手的就是h, j, k, l命令。但是Vim提供了非常多的移动命令,用于处理实际中的需求,例如移动到行首,或者以单词为单位进行左右移动,等等。一次性记住所有的移动命令很难,但是如果如果我们把它们分类来记忆,那就相对简单多了。本文就是通过分类这种方式来总结移动命令的。左右移动命令左右移动命令有很多种,例如面向字符的移动命令,面向行的移动命令, 等等。面向字符的移动命令首先说下最简单的h, l命令移动命令说明h向左移动一个字符l原创 2020-08-26 17:38:42 · 4199 阅读 · 0 评论 -
Vim操作符命令
普通操作符在普通模式下,最常用的操作符命令如下操作符命令说明c修改d删除y复制到寄存器例如,在普通模式下,ciw可以修改一个单词,daw可以删除一个单词,yiw可以复制一个单词到寄存器。大小写操作符操作符说明gu转化为小写gU转化为大写g~大小写相互切换使用IDE写代码时,常量名通常会全部大写,但是呢,我在写代码的时候,通常在刚开始会把常量名全部小宝,然后通过快捷键转换为大写,这样就不用来回切换大小写。如果用原创 2020-08-26 12:54:48 · 504 阅读 · 0 评论