【工匠大道】一些Vim(Linux)不常见但很逼格的命令(不断更新中)
分享提纲:
普通的vim的移动,编辑等命令就不再赘述。这里主要是记录一些不常见但是很逼格的命令,使你瞬间感到精神为之一振的命令
1. :Tlist
1)该命令是列出当前文件中的类名,变量名和函数名,移动时还会有提示。
2. :colorscheme desert
1)设置vim的界面风格,类似的还有 :colorscheme blue等
3. :set cursorline
1) 设置vim有下划线
4. ma :添加名称为a的标签
1)`a :跳转到 a标签处
2):marks -> 显示系统全部书签 (show all bookmarks)
5. vim -x :
1)加密文件,密码错误看到将是乱码
6. CTRL-] -> 跟着link/tag转入 (follow link/tag)
1)太奇妙了,一堆可以去的地方
7. 折叠
1)[z 到当前打开的折叠的开始处
2)]z 到当前打开的折叠的末尾处
3) zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
4) zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。
8. 向别的用户终端写信息(linux)
2) pkill -kill -t pts/0 踢出别的登录用户(who命令查看)
9. 一些Linux命令
1)alias 显示所有的命令别称
2)env 显示所有的环境变量
3)du -sh dir 文件夹大小, -h 人类可读的单位, -s 只显示摘要
4)kill %job 杀死job任务 (jobs -l)
5)sftp ID@host sftp登录,可以使用 get put等文件传输的命令( lcd # 在本地主机更改当前路径)
6) :sh 从vim进入到 shell界面, exit 则返回到 vim界面
10. 可视模式
标记文本
v 进入可视模式,单字符模式
V 进入可视模式,行模式
ctrl+v 进入可视模式,列模式,类似于UE的列模式
o 跳转光标到选中块的另一个端点
U 将选中块中的内容转成大写
O 跳转光标到块的另一个端点
aw 选中一个字
ab 选中括号中的所有内容,包括括号本身
aB 选中{}括号中的所有内容
ib 选中括号中的内容,不含括号
iB 选中{}中的内容,不含{}
11. 宏录制
宏录制: qa 操作序列 q, @a, @@
qa把你的操作记录在寄存器a。- 于是
@a会replay被录制的宏。 @@是一个快捷键用来replay最新录制的宏。
示例
在一个只有一行且这一行只有“1”的文本中,键入如下命令:
qaYp<C-a>q→
qa开始录制Yp复制行.<C-a>增加1.q停止录制.@a→ 在1下面写下 2@@→ 在2 正面写下3- 现在做
100@@会创建新的100行,并把数据增加到 103.

12. 目录操作
1):E 或者 :Sex 都可以查看当前的目录内文件, 也可以跟着 要打开的目录,参考
2):ls 打开缓冲区 :buffer 4 打开某一个缓冲文件 \be 也可以
3):He :Ve 分屏并查看目录
4):Te 分tab页(gt gT :tabs :q)
13. 移动类
1)zz 将光标所在行变成屏幕中间
2):ju -> 显示所有的可以跳跃的地方 (print jump list)
14. 文件对比
1)【colordiff】svn diff时带颜色对比 -- colordiff :
a)安装colordiff
sudo yum install colordiff
b)修改配置
vim ~/.subversion/config
在# diff-cmd下添加如下代码
diff-cmd = colordiff c)修改颜色:
sudo vim /etc/colordiffrc
-newtext=darkblue
+newtext=darkgreen
=================
-diffstuff=darkgreen
+diffstuff=darkblue
:ab asap as soon as possible
//会把你输入的 “asap” 替换为 “as soon as possible”
4)【在你忘记用 root 方式打开文件时的文件保存】
:w !sudo tee %
这会直接以 root 方式保存。
5)【实时加密】
可视模式选中字符,g? 使用 ROT13 对整个区域进行编码。
使用 u 回退还原
6)【自动补全】
ctrl + m
7) 【比较两个文件的不同】
除了 vimdiff 还有 :diffthis
具体如下:
:diffthis )首先在 Vim 中打开原始文件。然后使用分离模式带来第二个文件: :vsp [文件2] )最后在第一个缓冲区里输入:
:diffthis )通过 Ctrl+w 来切换缓冲区并再次输入:
:diffthis )这样两个文件中不同的部分就会被高亮。 (译者注:可以直接在一个缓冲区里使用命令 :windo diffthis,而不用输入 :diffthis 两次) 要停止比较,使用:
:diffoff
8) 【按时间回退文件】
:earlier 1m 回到1分钟之前
:later 相反的操作
9)【删除标记内部的文字】
di[标记]
-- di( 删除括号里的文字
--di{ 删除大括号里的文字
--di' 删除单引号里的文字
10)【把当前文件转化为网页】
:%TOhtml
转化成的 html网页显示的代码,看着跟 shell界面似的,很爽!
11) less filename
一个1G的文件可以秒开,G到文件末尾,比用vim快
16.插件类
1)【php-doc.vim】
- 下载php-doc.vim(http://www.vim.org/scripts/script.php?script_id=956);
- 放到相应的vim_rt/plugin目录下;
- 把下面的代码放到vim的配置文件里(vim_rt/_vimrc):
inoremap <C-P> <ESC>:call PhpDocSingle()<CR>innoremap <C-P> :call PhpDocSingle()<CR>vnoremap <C-P> :call PhpDocRange()<CR> |
现在,你就可以把光标放在方法或者类名上,然后control + p 就可以自动生成注释格式了。
附录:1. 强大的vim配置文件,让编程更随意
2. vim 常用快捷键 二
3. vim 参考手册
4. 每天一个linux命令目录 - peida - 博客园 http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html
5. 【好】简明 Vim 练级攻略 | 酷 壳 - CoolShell.cn http://coolshell.cn/articles/5426.html
6. 无插件Vim编程技巧 | 酷 壳 - CoolShell.cn http://coolshell.cn/articles/11312.html
7. VIM英文注解图
8. vim操作全面讲解 - Barret Lee - 博客园
10.(好好) 一些不起眼但非常有用的 Vim 命令 - 文章 - 伯乐在线

【工匠大道】一些Vim(Linux)不常见但很逼格的命令(不断更新中)的更多相关文章
- Linux系统常见的压缩与打包命令
常见的压缩文件扩展名 1.*.Z compress程序压缩的文件 2.*.gz gzip程序压缩的文件 3..bz2 bzip2程序压缩的文件 4..t ...
- Linux 系统化学习系列文章总目录(持续更新中)
本页内容都是本人系统化学习Linux 时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接 ...
- linux上常见的压缩解压缩的命令
压缩 tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.ta ...
- linux下vim常用命令 (更新中...)
1.注释多行 1). 首先按esc进入命令行模式下,按下Ctrl + v,进入VISUAL BLOCK模式; 2). 在行首使用上下键选择需要注释的多行; 3). 按下键盘(大写)“I”键,进入插入模 ...
- linux非常用但很有用的命令
查找指定目录下包含指定字符串的所有文件 grep -rl 'abc' / top查看命令的完整启动路径 top 按c top以MB为单位显示内存信息 top -M 查看内存top io趋势 pidst ...
- linux不常用但很有用的命令(持续完善)
Linux登录后设置提示信息: /etc/issue 本地端登录前显示信息文件 /etc/issue.net 网络端登录前显示信息文件 /etc/motd 登陆后显示信息文件 可以添加以下几个常用选项 ...
- Android开发面试经——6.常见面试官提问Android题②(更新中...)
版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客:http://blog.csdn.net/fi ...
- Linux 基础命令 持续更新中...
1.ls 显示当前文件/文件夹 显示文件大小: ls -lh 显示隐藏文件: ls -a 显示文件详细信息: ls -l (ll)2.pwd 显示当前所在路径 cat 显示当前文件下所有内容3.cd ...
- linux嵌入式大神的博客文章---持续更新中
linux kernel子系统相关博客:http://www.wowotech.net/ 经典博文: http://blog.csdn.net/zqixiao_09 http://blog.china ...
随机推荐
- Module Zero之Nuget包
返回<Module Zero学习目录> ABP module-zero已经发布在了nuget上了.这里是所有的包列表. Abp.Zero module zero的核心包. Abp.Zero ...
- 【Prince2是什么】PRINCE2认证之PRINCE2的思维结构
前两讲我们介绍了PRINCE2衡量绩效的六大要素和四大管理步骤,今天我们继续进行PRINCE2思维结构的介绍. PRINCE2自身有一个非常强大且坚固的思维结构,这个结构有四大元素组成.分别是1原则, ...
- iOS—Xcode 7真机测试
Xcode 7真机测试详解 1.准备 注意:一定要让你的真机设备的系统版本和app的系统版本想对应,如果不对应就会出现一个很常见的问题:could not find developer disk im ...
- easyui datagrid cell title换行
" " title="' +row.TaskName + "
- C++中static数据成员详解
本文和大家分享的主要是c++中static数据成员的相关用法及源码示例,希望能帮助大家更好的学习C++. static(静态存储)数据成员 StaticTest.cpp : 定义控制台应用程序 ...
- Android Studio安装以及Fetching android sdk component information超时的解决方案
转载:http://www.cnblogs.com/sonyi/p/4154797.html 在经过两年的开发之本后,Google 公司终于发布了 Android Studio 1.0,喜欢折腾的童鞋 ...
- Hibernate注解
前言: 最近正在学习Hibernate通过注解(annotation)来管理映射关系,以前都是通过XML映射文件.下面拿个小例子说一下. 数据库物理模型: 数据库的描述: 一篇博客随笔可以分到不同的类 ...
- 优化javaScript代码,提高执行效率
今天看完书,总结了一下可以如何优化 JavaScript . 1.合并js文件 为优化性能,可以把多个js文件(css文件也可以)合并成极少数大文件.跟十个5k的js文件相比,合并成一个50k的文件更 ...
- Angular 结合RequireJs实现模块化开发
angular的指令是模块化很好的一个体现,下面我将只使用指令(不用控制器),结合requirejs,实现模块化开发. 模块化关系图:
- IOS开发之自动布局显示网络请求内容
在上一篇博客中详细的介绍了IOS开发中的相对布局和绝对布局,随着手机屏幕尺寸的改变,在App开发中为了适应不同尺寸的手机屏幕,用自动布局来完成我们想要实现的功能和效果显得尤为重要.本人更喜欢使用相对布 ...