The meaning of life is challenging yourself constantly.
在工具上磨刀耗费了不少的时间,是时候提升个人能力和领域知识,积累和效率同样重要。
从Sublime转用VIM作为编辑器
放弃Sublime的原因主要有三:1.最主要的原因,从事无人机开发,在单片机上没有图形界面一说,所以Sublime也无法使用,通常使用ssh进行远端控制和开发,而且使用VIM有助于远距离开发,只从命令行便完成一切控制任务 2.真正解放鼠标,而且具有完备的教程和社区,相信如果一生与编程为伴的我会感谢现在的我所作出的决定 3.真正意义上从习惯以及Linux使用者的角度去理解Linux,可以加深和了解很多关于Shell的用法,以及约定俗成的用户习惯
VIM的快捷键图
这里放上VIM的经典快捷键图,感谢博主原文链接CENALULU
附带一个清晰的快捷键链接站点
经典版
入门版
进阶版
阅读Manual的快捷键Remind总结
前12节
左下上右:hjkl | 删改:x d c D C s S r R | 查找:F f T t / ? |
快速位移:gg G [Num]G [Num]% H M L zz | 复制黏贴:y Y p P | 寄存器复制:”[a-z]Y |
对应补粘:”[A-Z]Y | 模式:i a o q(record) R(replace) v(visual) ctrl+v(coloum visual) | 范围改动: :[range]s/from/to[gc] \n :global/place/{cmd} |
排版:gq | 大小写:~ guu gUU g~~ | 多文件:vim -o vsplit ctrl+w :edit :read :write |
标记:m[a-z] | 跳转: ‘[a-z] 和 `. | 单词统计:g CTRL-G |
单词替换: :%s/\<four\>/4/gc
多个文件替换单词(记录-回放):1.vim *.cpp 2.qq :%s/\<GetResp\>/GetAnswer/g 3.:wnext 4.q 5.999@q
使用man查询: K 1.:runtime! ftplugin/man.vim 2.:Man csh
至此,阅读了usr_01 ~ usr_12.txt,下一节继续学习余下部分。
余下部分
usr_20 命令行:
命令行状态,左移一个单词:Shift+Left 或 Ctrl+Left ,删除单词:Ctrl-w ,删除全部文字:Ctrl-u.
“:”命令通常具有缩写,但对应只有一个命令,可查看帮助以便记忆使用
Tab自动补全,Ctrl+p返回补全上一个选项,Ctrl+d可以显示目录候选文件
q: 进入命令行窗口,进行修改历史命令并执行; 用:!执行shell命令
usr_21 记录和会话(没大懂,回头看):
关于viminfo存储状态信息以及重返VIM中断处:oldfilesi
关于会话session,主要用于建立自定义窗口布局
usr_22 编辑指定文件
:pwd :cd 查找文件gf 加入头文件目录:set path+=~/proj/include
find 缓冲区列表 :hidden :bnext :bfirst :bdelete [Num]
usr_23 编辑其他文件
识别文件类型:set fileformat
加密:vim -x filename 撤销密码:set key=
读取二进制文件: vim -b filename
字节位置: g Ctrl+g
usr_24 快速插入
更正: Ctrl+w Ctrl+u
补全: Ctrl+p Ctrl+n
从下列文件搜索补全词:1.当前文件 2.其他窗口文件 3.其他载入文件(隐藏缓冲区) 4.未载入文件(非激活缓冲区) 5.标签文件 6.被当前文件以#include语句包含的所有头文件
可以用’complete’调整搜索顺序,用‘ignorecase’忽略大小写
输入上次编辑模式的内容:Ctrl+a
逐个重复输入上一行的字符:Ctrl+y Ctrl+e(下方)
插入寄存器内容:Ctrl-r {register}
使用abbreviate缩写来简化输入,纠正错误:iabbreviate teh the 和:iabbrev #b /* (i表示仅输入模式有效)
删除缩写:unabbreviate {name} 和 :abclear
避免缩写再映射: :noreabbrev @a adder (防止:imap dd disk-door的干扰)
插入特殊字符: Ctrl-v
二合字母:Ctrl-k
usr_26 重复
改动多个文件: :args *.c
在shell脚本里使用vim, vim写了命令,用shell调用执行
usr_27 查找命令及模式(方便快速查找)
usr_28 折叠
zf 创建折叠 zo 打开折叠 zc 关闭折叠 zr 减少折叠数 zR 打开所有 zM 折叠所有
usr_29 代码间移动
标签 ctags -R
Ctrl+] 跳转 Ctrl+t 返回
Ctrl+w ] 切换窗口并跳转
题外话,如何选书
出版社->作者->版次->印次->印数->著->编->参考引用->索引->不看译作->书评->牛人在读->网上内容审核
二合字母:Ctrl-k