Vim编译器的常用使用方法与技巧
vim操作
插入模式 命令行模式
末行模式
命令行模式 -> 插入模式
i ---> 在当前光标的前一个插入
I ---> 在行首插入
a ---> 在当前的光标的后一个插入
A ---> 行尾插入
o ---> 在光标所在的这一行的下一行插入
O ---> 在光标所在的这一行的上一行插入
s ---> 删掉当前光标所在的字符并且进入插入模式
S ---> 删掉当前光标所在的这一行并且进入插入模式
命令行模式下:
dd 删除当前光标所在的这一行
yy 复制当前光标所在的这一行
p 粘贴之前复制的文本,在当前光标的下一行
P 粘贴之前复制的文本,在当前光标的上一行
连用
d + 向下键 删除当前光标所在的行及下一行 ==> dj
d + 向上键 删除当前光标所在的行及上一行 ==> dk
d + 向左键 删除当前光标前一个字符 ==> dh
d + 向右键 删除当前光标所在的一个字符 ==> dl
h j k l
左 下 上
右
ndd 删除从当前光标所在的行的以下n行
gg 跳到当前文本的第一行
G 跳到当前文本的最后一行
ngg 可以跳到当前文本的第n行
/*vim xxx.c +15 */ 打开文本并且跳到15行
D 删除当前光标之后的这一行的所有数据
dG 删除当前光标到文本结束的所有行
end 跳到行尾
home 跳到行首
W 往后跳一个单词
v 左右上下拉黑然后按d删除
r + 字符 可以将当前光标下的字符替换成该字符
n+r+ 字符 可以从当前光标开始以下的n个字符全部替换成该字符
v 拉黑之后 + r + 字符
将拉黑的区域换成该字符
u 撤消上一步的动作
ctrl + r 撤消上一次所撤消的东西
块操作
ctrl + v 进入可视块 拉黑一块区域
按d 删除此块区域
块操作 插入
ctrl + v 往下拉 按 I
进入块操作插入模式 输入完之后按esc退出
打标: 暗标
m + a --> z 在某一行打标 ' + 标码 (将光标跳到哪个标码之下)
删除
从当前的光标删除到标码 d + ' + 标码
插入模式:
ctrl + u 删除光前光标前的所有字符
ctrl + w 删除从当前光标开始的前一个单词
ctrl + p / ctrl + n 可以补全 (可以补全头文件的函数)
末行模式:
:wq w 保存 q 退出
:wq! ! 强制
:x 保存退出
:X 对文本进行密码保护 取消密码 :X
密码不写
:e! 回到最老的文件,没有改动的文件
:!sh
:!bash 创建一个新的终端去做其它事情,回来时ctrl+ d
:!command 执行该命令
ctrl + z 将vim掉到后台,然后通过fg将vim掉到前台
:e xxx.c 跳到另一个文件中 e edit 编辑 ctrl + o
返回上一次跳过去的文件
:split 将当前窗体分成两个 水平
窗体之间的跳转 ctrl + w + w
:vsplit 竖直分窗体
:n,md 从第n行删到第m行
:n,mw xxx.c 可以将该文本从第n行到m行保存到xxx.c中
:nohl 取消高亮 (查找的高亮)
其它操作:
查找
/xxx 查找xxx向下查找 n
查找下一个 N 查找上一个
?xxx 向上查找 n 查找上一个 N
查找下一个
shift + # 快速查找 当前光标所在的单词
替换:
:%s/aaaa/bbbb 全局将所有行的第一个aaaa替换成bbbb
:%s/aaaa/bbbb/g 全局将所有的行的所有的aaaa替换成bbbb
:%s/aaaa/bbbb/gc 以提问形式替换
:n,ms/aaaa/bbbb/g 从第n行到m行的所有的aaaa替换成bbbb
tab的宽度
vim /etc/vimrc
set ts=4
同时打开两个文件
vim xxx.c -O xx.c 竖直
vim xxx.c -o xx.c 水平
Vim编译器的常用使用方法与技巧的更多相关文章
- Thinkphp常用的方法和技巧(转)
2012年09月26日 Thinkphp 里一些常用方法和技巧的整理,包括常用的快捷键以及在程序开发时用到的一些实用方法,关于快捷键用得不是很熟练,总之,掌握这些方法和技巧,对于我们开发 thinkp ...
- SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧
SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧 VanDyke CRT 和 VanDyk ...
- IDEA编译器的常用快捷键
今天想简单分享一下IDEA编译器的常用快捷键 1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boi ...
- Object Pascal 方法与技巧
4 方法与技巧 4.1 设置代码模板 代码模板是Delphi 的代码感知特性的一种,通过它可以快速.高效和正确地输入代码.代码模板将一些常用的语句块保存在模板中,然后程序员只要在代码编辑器中按下“Ct ...
- Python - 集成开发环境Pycharm的使用方法和技巧
PyCharm HomePage:PyCharm 我的Pycharm,我做主 Getting Started with PyCharm Pycharm使用技巧 Documentation & ...
- 【Tips】【UE】总结自己常用的UltraEdit使用技巧
如果您问我每天都要打开的软件是什么,那毫无疑问是UltraEdit!作为一位DBA,每天都要写各种脚本,尤其是在对具有超多行行的大文件进行精心编辑时,没有一个好的文本编辑器是不成的.掐指一算,哇塞,自 ...
- 常用的UltraEdit使用技巧
Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为"她"具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个 ...
- Vim编译器的相关知识
Vim编译器相关知识 1.关于Vim编译器 在热门Linux操作系统中都会默认安装一款超好用的文本编辑器——名字叫“vim”,vim是vi编辑器的升级版. vim 具有程序编辑的能力,可以主动的以字体 ...
- 【UE】常用的UltraEdit使用技巧
Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为“她”具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个超级“赞”的功能.在 ...
随机推荐
- Java异常处理-----非运行时异常(受检异常)
非运行时异常(受检异常) 如果出现了非运行时异常必须进行处理throw或者try{}catch(){}处理,否则编译器报错. 1:IOException 使用要导入包import java.io.IO ...
- [Vim]新建python文件自动添加python header
使用vim脚本来实现的,使用了模板,几行代码就能实现很实用. ~/.vimrc 中的代码 "auto add pyhton header --start autocmd BufNewFile ...
- Dynamics CRM 视图显示列的拷贝—view layout replicator
在视图设置的时候很多人会遇到这样的问题,要设置多张视图,而这多张视图可能除了筛选条件不同外其他的均相同,手动去设置是件重复的令人非常头痛的事情,如果能够拷贝那就相当完美了. 本篇即介绍视图显示列的拷贝 ...
- shell的数值计算,小数计算
shell脚本中,可以进行数值计算, 如加减乘除,通过expr.let.(())等完成,文章介绍:http://blog.csdn.net/longshenlmj/article/details/14 ...
- 收藏了4年的Android 源码分享
Android 超过2个G的源代码集合~~几乎涵盖了所有功能效果的实现,一应俱全~~应有尽有~~ 360云盘地址:Android 各类源码集合汇总 (提取码:f930) 另外,附上Github上及自己 ...
- springMVC源码分析--国际化LocaleResolver(一)
springMVC给我们提供了国际化支持,简单来说就是设置整个系统的运行语言,然后根据系统的运行语言来展示对应语言的页面,一般我们称之为多语言.springMVC国际化机制就是可以设置整个系统的运行语 ...
- Android ListPopupWindow的使用
其实像ListPopupWindow.PopupMenu的用法大致和PopupWindow的一样!就不讲了,相信用过PopupWindow的看一下就能明白. 先上个效果图: ListPopupWind ...
- android fragement报nullexcption错误
,这题目起的够骚情了,原创傲慢的上校哦,转载请标明:http://blog.csdn.net/aomandeshangxiao/article/details/7753421 其实有些方法也是从网上找 ...
- 【一天一道LeetCode】#104. Maximum Depth of Binary Tree
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 来源:http ...
- Java实现堆的封装,进行插入,调整,删除堆顶以完成堆排序实例
简介 堆对于排序算法是一个比较常用的数据结构,下面我就使用Java语言来实现这一算法 首先,我们需要知道堆的数据结构的形式,其实就是一个特殊的二叉树.但是这个二叉树有一定的特点,除了是完全二叉树以外, ...