VIM实现文件快速跳转插件详解

 更新时间:2018年04月22日 10:21:42   作者:始于珞尘  
这篇文章主要给大家介绍了关于VIM实现文件快速跳转插件的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用vim具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

前言

日常使用 VIM 的时候经常有跳转到特定目录下某个文件的需求:

  • 使用 vimwiki 记笔记时会默认把所有笔记保存在目录 ~/vimwiki 下, 当我们想查看某个笔记时就打开那个目录下的某个文件;
  • 我平时会写一些 shell 工具, 保存在 ~/bin 目录下, 就会有在这个目录下创建或者打开文件的需求;
  • 如果你用 ultisnip 之类的插件的话, 就需要经常编辑不同类型文件对应的 snippets 文件;

根据我个人的使用经验, 在特定目录下打开某个文件 的需求还是很多的, 于是便写了插件 FileJumper 来实现这个需求.

这个插件提供了下面这些功能:

  • 通过一行配置能快速定义和某个目录绑定的 command;
  • 通过执行 command filename 能快速打开对应目录下的某个文件, 能通过 tab 键补全文件名;
  • 能通过指定不同的 vim 命令以不同的模式打开文件, 如 command filename vnew 等;

下面就会介绍如何安装, 配置已经使用这个插件.

安装和配置

可以通过 vim-plug 进行安装:

Plug 'https://github.com/hiberabyss/FileJumper'

安装完成后通过配置变量 g:file_jumper_command 来定义不同的 command, 下面是插件默认的配置:

let g:file_jumper_command = {
   \ "Gbin": {'dir': expand("$HOME/bin"), 'extension': ''},
   \ "Gwiki": {'dir': g:myvimwikidir, 'extension': '.wiki', 'keymap': '<Leader>wg'},
   \ }
  • Gbin 之类的是命令名;
  • dir 表示和这个命令绑定的目录;
  • extension 表示对应目录下的文件的默认后缀名, 在打开文件时会被自动添加上去;
  • keymap 表示给这个命令映射一个快捷键;

如何使用

执行 Gbin pyserver 就会默认通过 tabnew ~/bin/pyserver 来打开对应的文件:

在上面的演示中, 我们只输入了 py 然后按 tab 键就可以自动补全文件名 pyserver.

我们也可以通过添加 vim 命令来决定文件的打开方式:

从上面的演示中可以看出在使用了 vnew 或者 e 之后, vim 打开文件的方式会和默认的不一样. 我们也可以使用 bot vnew 之类的复合命令.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • ubuntu系统theano和keras的安装方法

    ubuntu系统theano和keras的安装方法

    这篇文章主要介绍了ubuntu系统theano和keras的安装方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • 手把手教你配置一台Linux虚拟机

    手把手教你配置一台Linux虚拟机

    这篇文章主要手把手教你配置一台Linux虚拟机,具有一定的参考价值和实用价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • Apache下ModSecurity的安装启用与配置

    Apache下ModSecurity的安装启用与配置

    这篇文章主要介绍了Apache下ModSecurity的安装启用与配置,需要的朋友可以参考下
    2018-10-10
  • 如何用logrotate管理每日增长的日志

    如何用logrotate管理每日增长的日志

    这篇文章主要介绍了如何用logrotate管理每日增长的日志问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 关于Linux下conda安装caffe与pb转caffe问题

    关于Linux下conda安装caffe与pb转caffe问题

    这篇文章主要介绍了关于Linux下conda安装caffe与pb转caffe问题,文中以图文说明了conda安装caffe的方法,需要的朋友可以参考下
    2023-03-03
  • 比较详细的基于CentOS的WWW服务器架设指南

    比较详细的基于CentOS的WWW服务器架设指南

    本文参考了网上高手的教程和结合自己的实践经验而来。网上关于LAMP安装配置的教程虽然很多,但长篇大论的让你抓不到重点,短小精悍的对新手来说又难了点,所以初次配置时最容易在某个环节卡住,从而打击了学习的激情或者耽误了宝贵的时间。于是就整理出这个学习笔记。如果文中有错误的地方,恳请大家指正,不要误导了初学者。
    2008-06-06
  • Centos安装MYSQL8.X的教程

    Centos安装MYSQL8.X的教程

    这篇文章主要介绍了Centos安装MYSQL8.X的教程,本文以CentOS版本为7.6,安装的MySQL版本为8.0.17,感兴趣的朋友跟随小编一起看看吧
    2019-10-10
  • 详细部署阿里云服务器全过程(图文教程)

    详细部署阿里云服务器全过程(图文教程)

    这篇文章主要介绍了详细部署阿里云服务器全过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Linux系统中的软连接管理详解

    Linux系统中的软连接管理详解

    在 Linux 系统中,软连接(或称符号链接)是一种重要的文件系统功能,它允许用户创建指向其他文件或目录的快捷方式,通过软连接,用户可以方便地访问常用文件、程序或目录,而无需每次都输入完整路径,本文将详细给大家介绍了Linux系统中的软连接管理
    2024-11-11
  • Linux监视进程之ps命令详解

    Linux监视进程之ps命令详解

    ps命令日常工作中最常用的命令行工具之一了,每天敲了那么多次的ps,你真的了解你的命令行输出信息中的每一行含义吗?下面这篇文章主要给大家详细介绍了Linux中监视进程之ps命令,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01

最新评论