Vim高手,从来不用鼠标2——替换、撤销、缩进、查找

本文章原创首发于公众号:编程三分钟

vim 替换、撤销、缩进、查找

上一次我们掌握了移动、跳转、定位、操作(删除、复制、粘贴),基本使用vim脱离鼠标完全是可以做到的了。速记如下:

移动: h,l,j,k,w,b

跳转:G nG f/F+字母

定位:G代表尽头, $代表行尾,^代表行首,w代表下一个单词,b上一个单词,e当前单词末尾

操作:y d p

知识点

  • 字符替换
  • 缩进与调整文本位置(居左、居中、居右)
  • 字符查找

字符的替换及撤销

查找和替换是编辑器中最常用的功能之一,在普通编辑器当中查找替换时,你可能需要先移动鼠标在菜单中点击查找的功能,输入查找内容,再点击确认查找。而在vim中,所有的操作只需要敲击几下键盘就行了,手不用离开键盘区域,速度自然会快很多很多。

替换和撤销(Undo)

替换和Undo命令都是针对普通模式下的操作,这次用到三个字母,r/R,c/C,u/U

r+<待替换字母> ? ?将游标所在的一个字母替换为其他字母(如下#替换成i)

当然了,一个一个替换甚是麻烦,不妨使用R连续替换

R ? ?连续替换,直到按下Esc

cw ? 删除一个单词,并进入插入模式

C ? 删除从游标处开始到当前行尾,并进入插入模式

u ? ?撤销一次操作(如下,粘贴了Internet单词三次,按u三次,撤销粘贴操作)

U(大写) ? ?无论当前行修改了多少次,撤销当前行的所有修改

Ctrl+r ? ?redo,即撤销undo的操作(如下,删除一个单词,写入123,之后交替u和Ctrl+r,可以观察到重复撤销123输入,再恢复123输入)

快速缩进

快速缩进在编辑代码时极其有用,快速调整代码缩进非常的爽,缩进操作均在普通模式下有效

使用命令进行快速调整缩进操作

>> 整行将向右缩进

<< 整行向左回退

设置缩进字符数

命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数 (可以简写成sw,下面我都用简写)

获取目前的设定值

:set shiftwidth?

设置缩进为n个字符

:set shiftwidth=n

输入 ESC 回到普通模式,再次尝试 >> 看缩进量是否变化

调整文本位置

命令行模式下输入:le(left)命令使本行内容靠左

:le

命令行模式下输入:ce(center)命令使本行内容居中

:ce

命令行模式下输入:ri(right)命令使本行文本靠右

:ri

查找

快速查找

普通模式下输入 / 然后键入需要查找的字符串 按回车后就会进行查找。 输入nN 可以继续查找。 n是查找下一个内容,N查找上一个内容。

?/ 功能相同,只不过?是向上而 / 是向下查找。 :noh退出查找模式

高级查找

普通模式下输入\*寻找游标所在处的单词
普通模式下输入\#同上,但 \#是向前(上)找,\*则是向后(下)找

以上查找n,N 的继续查找命令依然可以用

小结

这一节学习了替换,撤销操作及快速查找,其中替换和文档内快速查找的功能十分实用,希望能够熟练掌握。

速记如下:

替换:r+<待替换字母>,R

删除并插入:cwC

撤销:uUctrl+r

调整文本位置::le:ce:ri

查找:\文本?文本nN

原文地址:https://www.cnblogs.com/pzqu/p/11477891.html

时间: 2024-11-09 00:32:47

Vim高手,从来不用鼠标2——替换、撤销、缩进、查找的相关文章

Vim高手,从来不用鼠标

“平时不可缺少的会用到vim,但是避免不了鼠标,事实上,省略鼠标是完全可以的,没有想像中那么难,看我短短几行带大家一起省略鼠标.——编程三分钟” Vim脱离鼠标 对了,vim有三种模式,基本模式就是用来输入命令的,比如删除跳转等操作就是在基本模式下面:插入模式不用说:命令模式就是按Esc+:进入的模式,之间的切换很容易我就废话了.下面几乎都在基本模式操作. 基本操作 移动 h,l,j,k    左右下上w,b    移动到下/上一个单词 快速退出 普通模式下输入Shift+zz即可保存退出vim

Vim ---- 简单好用的 vim 配置文件,不用插件

set hlsearch set backspace=2 set ruler set showmode set nu set bg=dark syntax on set shiftwidth=2 set tabstop=4 set softtabstop=2 set expandtab set autoindent set smartindent Vim ---- 简单好用的 vim 配置文件,不用插件

不用鼠标也能处理outlook for mac邮件?Mac电脑Outlook轻扫手势处理邮件教程

不用鼠标也能处理邮件?在日常邮件处理中,大多数工作所需的都是点触摸触控板或魔术鼠标,今天小编带您学点不一样的,Outlook 2019 for mac只需轻扫手指即可删除电子邮件或标记一个用于后续操作.接下来小编为您演示苹果电脑手势处理outlook邮件的具体操作步骤.Outlook 2019 for mac如何打开手势一.在页面左上角打开Outlook "首选项",选择偏好设置选项,如下图所示:二.在Outlook偏好设置页面,点击电子邮件下的阅读图标,如下图所示:三.在阅读选项的页

解决vi/vim中粘贴会在行首多很多缩进和空格的问题

解决vi/vim中粘贴会在行首多很多缩进和空格的问题 secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器.所以当你的服务器上的vim设置为autoindent的话,在i模式下,那么它会将secureCRT传输而来的这些字符串再进行一下缩进.若你拷贝的文本中已经有表示缩进的空格或者制表符的话,它们也会被当成字符串,而被缩进.解决办法:1. 在拷贝前输入:set paste (这样的话,vim就不会启动自动缩进,而只是纯拷贝粘贴)2. 拷贝完成之后,输入:set nopaste

vim(5):全局替换

vim全局替换文件: 语法为 :[addr]s/源字符串/目的字符串/[option] 全局替换命令为::%s/源字符串/目的字符串/g [addr] 表示检索范围,省略时表示当前行. 如:"1,20" :表示从第1行到20行: "%" :表示整个文件,同"1,$": ". ,$" :从当前行到文件尾: s : 表示替换操作 [option] : 表示操作类型 如:g 表示全局替换; c 表示进行确认 p 表示替代结果逐行显示

设置Chart.js默认显示Point点的值不用鼠标经过才显示

Chart.js默认的显示方式是鼠标经过Point点的时候才会显示这个点的值,代码如下: var testdata: { periodNum: ["2018121","2018122","2018123","2018124","2018125","2018126","2018127","2018128","2018129",&q

Vim编辑器的基本使用和多行缩进

1.vim基本使用 在终端键入vim命令和要编辑的文件的名字就可以启动vim编辑器(如在启动vim时未指定文件名,或是这个文件不存在,vim会开辟一段新的缓冲区域来编辑).vim编辑器有两种操作模式: 普通模式 插入模式 刚启动vim编辑器,默认进入普通模式,在这个模式下,vim编辑器会将按键解释成命令(这也是vim特殊的地方,很多没有使用过vim的人刚开始打开vim时会被这个模式吓倒,毕竟在键盘上按键但一点反应都没有的编辑器实在是少见).在普通模式下键入i可进入插入模式(insert.事实上,

VIM技巧之去除代码行号并缩进代码

从网上找源代码时经常会发现代码虽然排版很好,但是前面带着行号,直接复制粘贴得将前面的行号去掉才能编译,而更糟糕的是前面带行号,而代码又没排版,简直是噩梦.在VIM中可以轻易地解决这个问题. 这里将网上的一段代码粘贴到VIM中时的截图: 图1 网上的代码粘贴到VIM中 是不是相当糟糕,使用正则表达式替换(前头的:表示输入模式) :%s/[ \t]*\d\{1,4\}/ 立马得到如下结果 图2 替换后的结果 现在效果好了不少,不过还有个问题,缩进有的不正确,OK. 进入Normal模式,通过(命令右

centos 中设置 vim的配置高亮、行号、缩进

在centos 中vim的配置文件存放在/etc/vim目录中,配置文件名为vimrc在终端 输入以下命令来编辑vimrc配置文件:sudo vim /etc/vim/vimrc或者 sudo gedit /etc/vim/vimrc 1.显示行号    在文件末端添加一新行,输入 set nu 2.语法高亮在文件中找到 "syntax on   这一行,去掉前面的双引号",双引号是注释的意思 3.自动缩进在文件末尾添加一行,输入  set autoindent在添加一行,输入