IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    每日vim插件--文件浏览器NERD Tree以及git-nerdtree,vim-nerdtree-tabs

    foocoder发表于 2014-04-22 19:43:00
    love 0

    今天介绍一个必备插件——NERD Tree。这个插件基本用vim的都会知道吧。看图就知道了:

    用它可以让vim像其他大多数编辑器或者IDE一样,打开一个分割窗口显示文件树,在这个文件树上可以通过j,k上下浏览以及其他一些快捷键进行快速文件导航。按回车就直接打开该文件,当然还可以通过i,s,t在分隔窗口或者在新标签页打开.

    NERD Tree还支持书签。所谓书签,就是标记该文件或文件夹会优先显示在最上方。如前面图中的_posts文件夹。只要光标在该文件上输入命令:Bookmark .非常方便

    NERD Tree不想介绍过多,使用非常简单。在NerdTree窗口按下问号就会有帮助信息介绍所有的操作和对应的快捷键,常用下很快就很熟了。

    NERD Tree有个问题在于和大多数IDE或者编辑器不同的是,在新的Tab中,NERD Tree默认是不打开的。不同的tab不能共享一个NERD Tree窗口,有人对这种方式可能就比较别扭。这时候就诞生了vim-nerdtree-tabs.该插件就解决了这个问题,它让每个tab都有相同的NERD Tree,看起来就像NERD Tree固定在最左一样。按下:NERDTreeTabsToggle就可以打开或关闭所有窗口。关闭文件窗口的时候,对于tab的NERD Tree窗口也会自动关闭。

    接下来介绍的git-nerdtree是来自@Xuyuanp的作品,通过微信公众号介绍给我。也是对NERD Tree的增强修改,增加了文件的git状态显示,和昨天的gitgutter类似,Gitgutter显示文件内的git diff,而git-nerdtree为NERD Tree增加了文件git状态的显示:

    相对应的标识如下:

    • ✭ / * : Untracked
    • ✹ / ~ : Modified in the working tree
    • ✚ / + : Staged in the index (Exclude Renamed status)
    • ➜ / » : Renamed
    • ═ / = : Unmerged
    • ✖ / - : Deleted (This indicator can’t be shown, as NERDTree doesn’t display deleted files. I have no prefect idea to solve this problem currently.)
    • ✗ / × : Dirty (Only for directory)
    • ✔ / ø : Clean (Only for directory)

    标识方式和我之前介绍的zsh配置对git库状态的处理类似(可以查看我之前的博客)。

    同时还支持和gitgutter一样的快捷键在各个有状态的文件之间跳转[c,]c.我只能说太棒了,再次感谢@Xuyuanp。

    今天就介绍到这里,任何问题都可以直接回复。



沪ICP备19023445号-2号
友情链接