不知道大家在使用vim时有没有遇到这种情况,就是从windows复制粘贴到Linux下的vim时,代码的排版会很乱,然后出现各种乱码,比如每一行后面会多出一个“^M”,或者
windows下的空格在Linux下变成“?”,还有“$1”组合会变成“()”,这曾让我无比困恼,特别是在移植最小系统的时候,简直爆炸,不过现在:
进入vim文本之后,在命令模式,输入“:set paste” 进入复制粘贴模式
然后复制我们的代码,在vim中右键粘贴,这时候你复制的代码就会刷刷刷的自动排好版了,这里要注意“i”,他有可能乱入你的代码文本哦
然后输入“:set nopaste” 退出复制粘贴模式。
现在想想以前的操作真的是low,为了纪念我逝去的青春,我决定再记录一些常用的快捷键:
dd :删除一行,p:粘贴
u :撤销上一次操作
A:在行末插入
o:在当前行的下面一行另起一行,并变为插入模式
O:在当前行的上面一行另起一行,并变为插入模式
yy:拷贝当前行,p:粘贴
gg:到第一行
G:到最后一行
%:匹配任意括号移动
*/#:匹配光标当前所在单词
删除包含xxx字符串的行: :g/xxx/d
删除空行: :%s/^\n$//g
注意了:命令可以与光标移动一起用哦。
相关文章
- Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(八)
- 在centos7下安装python3的步骤
- 04.ubuntu下kvm 命令行安装64位ubuntu报"Couldn't find hvm kernel for Ubuntu tree."的问题
- 1、win10下连接本地系统上的Linux操作系统(分别以Nat方式和桥接模式实现)
- Maven支撑下的War应用依赖另外一个WAR应用的解决方案
- 在ubuntu下如何验证文件的MD5码 (转载)
- Linux下简单的socket通信实例
- 编写高质量代码改善C#程序的157个建议——建议81:使用Parallel简化同步状态下Task的使用
- 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效
- OpenGL tutorial资源在mac yosemite下的cmake生成工程问题