Skill of vim
用vim也有一段时间了,谨以此记下一些有意思的技巧。
- 跳转
- hjkl,左下右上。
- b/e跳转到上/下一个单词
- ^/$跳转到行头/尾
- 从{,[,(,相应的},],)相互跳转。能够用%
- 跳转到局部变量的定义gd,跳转到全局变量的定义gD
- 跳转到上一个改动过的地方 g; 注意是g+分号
- 跳转到下一个改动过的地方 g, 注意是g+逗号
- :N ,跳转到N行
- 匹配的符号('', "", (), {}, [], <>)操作
- ci?,di?,yi?,?为上述的匹配符号。则能够改动,剪切,复制。当中的内容。不包含?
- ca?,da?,ya?,?为上述的匹配符号。则能够改动,剪切,复制。当中的内容,包含?
- 举个样例,删除()的内容不包含括号,仅仅须要di?
- 复制一个字符串"abcde",仅仅须要光标移到当中,ya"
- 缩进代码
- 自己主动缩进 =,假设从头到尾缩进就是gg=G
- 指定区域缩进 >,< ,能够配合可视模式,C-v进入批量操作缩进。
- 折叠函数
- 移动到{,zf%。
- 折叠还能够zfN,这样就能够折叠N行
- 打开折叠,zo
- 实用的替换
- 最基础的替换 :A,Bs/X/Y/g ,从A行到B行,将X替换成Y,没有g仅仅替换每行的第一个。
- 全局替换: %s/X/Y/g
- 删除仅仅有另个以上空格的空行 :g/^\s*$/d
- 删除行尾的空格 :%s= *$==
- 批量凝视
- Ctrl-v 进入可视模式。之后I(shift I),插入凝视符。再按Esc(基本功)
- 从A到B行最左边增加凝视 :A,Bs/^/#/ (python,php,shell等等),可是。凝视都插在最左边
- 从A到B行第一非空字符前插入凝视 :
- %s/([^ ]+)/#\1/
- :%s/[[:graph:]]\@=/#
- 搜索
- 自光标向前搜索 /pattern
- 自光标向下搜索 ?pattern
- 仅搜索行首,/^pattern,或者行尾/pattern$
- 自光标向前搜索光标所在单词 #
- 自光标向后索索光标所在单词 *
- 另外。搜索的。跳转到前一个N,下一个n。
- 关闭高亮是 :noh
- 好用的多标签
- 开启多标签 tabe 文件名称字
- 移动到下一个tab,gt或者:tabn
- 移动到上一个tab,gT或者:tabp
- 移动到第n个标签, n gt ,注意n gt间要由空格
- 关闭标签 tabc,用退出也能够
- 另外多窗也是非常好用的在启动时候 vim -O2 file1 file2 ,注意是字母O,不是数字
- 有趣的计算器
- 在插入模式时候,按Ctrl r =,输入表达式,就会在光标上出现了。
- 推荐一些有趣的站点
- 配置插件的好站点: http://vimawesome.com/
- 一个入门,练习操作的好站点: http://www.openvim.com/
- 很多其它的待补充
Skill of vim的更多相关文章
- VIM HML
D:\skill\Apps\Vim\vim80\defaults.vim "set scrolloff=5 设置为默认值0即可
- [skill] vim 操作多个window
前言: 分辨率越来越高,屏幕越来越大,行最长80不变,屏幕利用空白越来越大. 开多个window吧! 开window的命令: 平行开一个window:split <//path/file> ...
- [skill][vim] 常用技巧与配置
一: 光标行列高亮 可以使用 :help highlight 查看相信帮助可颜色配置. set cursorline set cursorcolumn highlight Cursorline ct ...
- Java Software Engineer Skill Map
# Java Software Engineer Skill Map## Basic### Core Java- Java The Complete Reference Ninth Edition.p ...
- 如何创建Vim Dotfile?
Dotfile是电脑系统里的隐藏文件,它是专门给更高级的用户,如开发者.程序员或工程师使用的,让他们用来调整系统.如何创建Vim-Dotfile? 可以参考以下步骤: 1. 首先,你要检查一下.vim ...
- 玩转Vim 编辑器
一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...
- vim安装中文帮助手册
安装方法: 在下面的网站下载中文帮助的文件包:$wget http://nchc.dl.sourceforge.net/sourceforge/vimcdoc/vimcdoc-1.5.0.tar. ...
- vim环境变量配置、背景色配置
我们使用vi或者vim的时候,如果想要显示行号,可能会这样做:切换到命令模式,然后输入set nu,再按回车键就显示了:还有就是咱们在编写程序的时候,有的时候会希望按下回车键后,光标不是每次都在行首, ...
- vim+vundle配置
Linux环境下写代码虽然没有IDE,但通过给vim配置几个插件也足够好用.一般常用的插件主要包括几类,查找文件,查找符号的定义或者声明(函数,变量等)以及自动补全功能.一般流程都是下载需要的工具,然 ...
随机推荐
- 逆波兰表达式解数学运算(c#)
逆波兰表达式解数学运算 感谢作者 http://blog.csdn.net/liuyuxusuixiang/article/details/25289715 public class TCalcula ...
- 7.包含(ng-Include)
转自:https://www.cnblogs.com/best/tag/Angular/ 获取.编译并引用一个外部HTML片段(也可以是内部的) 默认情况下,模板URL被强制为使用与应用文档相同的域名 ...
- 记录一下Memcached的用法:
首先就是先要配置Memcached,这个回头再写. https://zhidao.baidu.com/question/809745125827797732.html https://www.cnbl ...
- 新手教程:电信+广电(或其他运营商)双WAN设置
由于国内不同运营商之间互联互通存在问题,假如用联通的线路去访问电信的站点那么会比较卡,反之亦然:所以如果两个WAN的线路不是同一个运营商,一般都是建议用户双WAN模式选为“智能路由”.经过本人测试发现 ...
- UVC和V4L2的关系(转载)
UVC是一种usb视频设备驱动.用来支持usb视频设备,凡是usb接口的摄像头都能够支持 V4L2是Linux下的视频采集框架.用来统一接口,向应用层提供API UVC: USB video clas ...
- python数据处理技巧一
字符串赋值(传参)技巧 Python中一般的字符串赋值的方式如下: variable = "Test" print "I just [%s] unit"%var ...
- cz.msebera.android.httpclient.conn.ConnectTimeoutException: Connect to /192.168.23.1:8080 timed out(Android访问后台一直说链接超时)
明明之前还是可以运行的练习,过段时间却运行不了,一直说访问后台超时, 对于这个问题我整整弄了两天加一个晚上,心酸...,上网找了很多但是都解决不了,我就差没有砸电脑了. 首先 : 第一步:Androi ...
- 洛谷 P2171 Hz吐泡泡
P2171 Hz吐泡泡 题目背景 Hz大大是一种可爱的动物(神).他很喜欢吐泡泡(更喜欢写作业). 题目描述 这天,Hz大大心血来潮,吐了n个不同的泡泡玩(保证没有重复的泡泡).因为他还要写作业,所以 ...
- 从零開始的Android新项目7 - Data Binding入门篇
Data Binding自从去年的Google I/O公布到至今,也有近一年的时间了.这一年来,从Beta到如今比較完好的版本号.从Android Studio 1.3到如今2.1.2的支持,能够说D ...
- hdu4565---So Easy!(矩阵)
Problem Description A sequence Sn is defined as: Where a, b, n, m are positive integers.┌x┐is the ce ...