vim 高级编辑技巧
- 建议参考IBM官方文档
https://www.ibm.com/developerworks/cn/linux/l-cn-tip-vim/ - 重新输入以前输入过的某条命令
Ctrl + r - 全局替换
格式:
":%s/要替换字符/替换为新字符/g"
:%s/old/new/g
指定行替换
格式: ":起始行,终止行s/要替换字符/替换为新字符/g"
:1,5 s/old/new/g - 多文件替换
多文件替换,比如要替换所有.c文件中a_value为b_value,可以使用如下方法:
vi *.c
:argdo %s/a_value/b_value/ge | update
其中update是直接替换覆盖原文件,若需要确认,则可使用
:argdo %s/a_value/b_value/gec | update - 多行注释:
首先按 esc 进入命令行模式下,按下 Ctrl + v,进入列(也叫区块)模式;
在行首使用上下键选择需要注释的多行;
按下键盘(大写)"I" 键,进入插入模式;
然后输入注释符("//"、"#" 等);
最后按下 "Esc" 键。
注:在按下 esc 键后,会稍等一会才会出现注释,不要着急~~ 时间很短的 - 删除多行注释:
首先按 esc 进入命令行模式下,按下 Ctrl + v, 进入列模式;
选定要取消注释的多行;
按下 "x" 或者 "d".
注意:如果是 "//" 注释,那需要执行两次该操作,如果是 "#" 注释,一次即可 - 删除行首的多字符
首先按 esc 进入命令行模式下,按下 Ctrl + v, 进入列模式, 按"右箭头"选择要删除的字符长度;
按"向下"箭头选择要删除多少行
按下"d",即可删除 - 其他
显示行号: set nu
取消显示行号: set nonu
回到句尾: shift + $
回到句首: shift + ^
段首 : {
段尾 : }
前一修改处 : g,
后一修改处 : g;
删除光标之后的单词剩余部分 : dw
删除光标之后的该行剩余部分 : d$
把下一行合并到当前行尾 : J
撤消更改: u
自动补全: Ctrl-p
显示当前编辑文件名及行数: Ctrl-g
按住ctrl + alt 选块复制粘贴
vim 高级编辑技巧的更多相关文章
- [转]基于Protel DXP软件的PCB高级编辑技巧大全
来源:基于Protel DXP软件的PCB高级编辑技巧大全 一.放置坐标指示 放置坐标指示可以显示出PCB板上任何一点的坐标位置. 启用放置坐标的方法如下:从主菜单中执行命令 Place/Coordi ...
- vim高级编辑(一)
本文出自 http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...
- vim 高级使用技巧
前言:逃离windows有很长时间了,特别是当今android盛行的时代,我们没有理由不选择ubuntu作为编译开发android之首选.其实操作系统只是我们使用的一个工具, windows也好lin ...
- vim 高级使用技巧第二篇
上篇我贴上了我使用的vim配置及插件配置,有这些东西只能是一个脚本堆积,无从谈高效的代码阅读开发. 下面我们就来写经常使用的命令,就从配置F系列快捷键开始吧. F+ n 快捷键配置 F1基本上时帮助, ...
- vim编辑技巧
算上大学上课linux接触四年了,可惜除了工作接触的那些,其他地方还是很水的,都不精通,今日翻来看了看以前过目即忘的vim技巧,发现,如无几年操作经验,这些技巧很难领悟的.这里写下来,以备后查. 区块 ...
- vi/vim系统编辑命令使用技巧
01前言 在Linux系统中会有很多的文件信息,这些文件的内容如果需要编辑,就必须借助vi或vim编辑命令. vi是Linux命令行界面下的重要文字编辑器.vim是vi命令的增强版. [语法格式] v ...
- vim常用操作技巧与配置
vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中 ...
- Vim实用小技巧
Vim实用小技巧 一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为 ...
- vi/vim高级命令集粹
vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...
随机推荐
- 1. FPGA内部的逻辑资源
CLB(包括LUT.加法器.寄存器.MUX(多路选择器)) 时钟网络资源(全局时钟网络,区域时钟网络,IO时钟网络),理解时钟网络的本质和意义 时钟处理单元(PLL,DCM),理解时钟网络资源和时钟处 ...
- c语言之字符输入输出和输入验证
单字符I/O:getchar()和putchar() #include<stdio.h> int main(void) { char ch; while ((ch = getchar()) ...
- Debian搭建WordPress
环境配置 可以使用apt-get快速安装mysql,php5:我是用源码手动安装apache服务器的.安装完mysql后,最好将字符编码设置为utf8的. 接下来就是mysql,apache,php5 ...
- DDoS攻击、CC攻击的攻击方式和防御方法
DDoS攻击.CC攻击的攻击方式和防御方法 - sochishun - 博客园https://www.cnblogs.com/sochishun/p/7081739.html cc攻击_百度百科htt ...
- python3 网页下拉框和悬浮框操作基础汇总
#悬浮定位操作 from selenium.webdrier import ActionChains #浏览器实例化 #定位移动的位置赋给一个参数 ActionChains(浏览器).move_to_ ...
- HTTL之初印象
概述 HTTL (Hyper-Text Template Language) 是一个高性能的开源JAVA模板引擎, 适用于动态HTML页面输出, 可替代JSP页面, 指令和Velocity相似. 简洁 ...
- Azure系列2.1.6 —— BlobProperties
(小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...
- JSON Support in PostgreSQL and Entity Framework
JSON 和JSONB的区别(What's difference between JSON and JSONB data type in PosgresSQL?) When should be use ...
- RBAC模型
1.RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角 ...
- Netty ByteBuf 和 String 转换
参考https://blog.csdn.net/o1101574955/article/details/81024102 参考http://youyu4.iteye.com/blog/2361959 ...