vim

思想

对程序员来说vim是最优秀的文本编辑器,核心思想就是所有的操作通过键盘实现。

纵向编辑

进入纵向编辑模式:ctrl + v

修改

  • 切换模式:ctrl + v
  • 移动到某行,比如最后一行:G,第五行:5G
  • 修改字符r,或者删除字符d

列前添加

  • 光标定位到指定的列
  • 进入纵向编辑模式,移动光标到指定的列
  • 输入I进入指定的插入点,输入要插入的字符串
  • 按esc退出即可

列后添加

  • 光标定位到指定的列
  • 进入纵向编辑模式,移动光标到指定的列
  • 输入A进入指定的插入点,输入要插入的字符串
  • 按esc退出即可

历史修改

放弃最近的修改(undo):u
回复最近的修改(redo):ctrl + r

替换

idea中的vim能力有限,尽量在terminal下执行,在mac环境中;%代表整个文件中起作用;

#保留匹配的行:
v/<string to match>/d

#删除匹配的行:
g/<string to match>/d

#删除空行:
g/^$/d

#mac下删除换行:
%s/\n//g

#替换第一行到最后一行所有匹配:
1,$s/<match string to be replaced>/<new string>/g

配套工具vimdiff

可以通过两种方式启动:vimdiff等价vim -d

光标移动

  • 文件之间切换光标:control + w,w
  • 差异点之前移动光标:
    向上:[c
    向下:]c

内容折叠

  • 展开文件内容:zo
  • 折叠文件内容:zc

文件合并

  • 拷贝差异点的内容到另外一个文件中,可能有多行:dp(diff put)
  • 获得另外一个文件中的内容到差异点处:do(diff get)
  • 撤销修改,光标必须在修改的文件中,类似vim的redo和undo

同时操作

  • 如果文件都没有修改,同时关闭即可:qa
  • 如果有文件修改,强制放弃,并全部关闭:qa!
  • 如果有文件修改,同时写入并关闭:wqa
  • 如果有文件修改,同时写入:wa

配套工具NERDtree

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前天晚上,我发烧了,妈妈起来了好多次,给我弄冲剂喝。昨天早上我和二哥和,妈妈去医院拿药。小朋友听完这个故事以后一定...
    小宝妮子阅读 170评论 0 1
  • 首先,当你去一家公司进行面试之前,要先了解该公司的企业文化,根据所要应聘的职位进行选择合适的着装。在心理学里面...
    简单恋阅读 251评论 0 0
  • "让对方能够感受到你对她的爱,如果跟着你,不但没有爱,反而要受到你很多的负面情绪,那谁还愿意跟着你呢?对,她有很多...
    清心0606阅读 227评论 2 6

友情链接更多精彩内容