Hacking Vim: startify(05)
来源:互联网 发布:淘宝wap访客是什么意思 编辑:程序博客网 时间:2024/06/04 19:27
摘要
本文介绍一个 Vim
的起始页插件 —— startify,可以显示最近使用的文件列表、书签和存储在指定文件夹中的 session
.
简介
startify 是一个 Vim
起始页插件,提供文件列表、书签、session
管理. 不指定任何文件打开 Vim
时,它可以显示如下内容:
- 自定义 Header: 自定义的
ASCII Header
,默认为空. - 最近使用的文件: 最近使用过的文件,支持使用过滤器,默认开启.
- 当前文件夹最近使用的文件: 类似于最近使用的文件,但是限定在当前文件夹内,同样支持过滤器,默认开启.
- Session: 列出指定目录的
session
,默认是~/.vim/session
. - 书签: 可以自定义一些始终需要列出的文件列表,默认为空.
- 自定义 Footer: 类似于
Header
,但是出现在底部,默认为空.
安装
Note: 请确保已经正确安装了 Pathogen
插件,如果没有安装,请参考 Hacking Vim: 插件管理器Pathogen(02)
本篇文章的代码在 https://github.com/NsLib/blog-vim-proj/tree/startify
cd ~/.vim/bundlegit clone git@github.com:mhinz/vim-startify.git --depth=1rm -rf ~/.vim/bundle/vim-startify/.git
基本用法
基本用法1
如果直接打开 Vim
而不指定文件名,startify 会显示一个小巧但精致的窗口,默认包含最近打开的文件列表(使用 viminfo
)和 session
. 另外,你也可以定义书签,这样这些文件列表会始终显示在启动页.
你可以在显示的列表中浏览,并按回车键打开指定文件. 如果你开启了 Vim
的鼠标支持,也可以双击鼠标左键打开. 更强大的是,还可以直接输入序号来打开指定条目(推荐),一步到位.
请看基本的使用演示:
等等,这还不够,你还可以一次打开多个文件. 你可以在列表项按 b
(在同一个窗口打开), s
(水平切分窗口), v
(垂直切分窗口), t
(在tab中打开). 可以同时选择多个条目后,按回车键一起打开. 请看下面的演示.
Note: 使用
b
,s
,v
,t
来进行标记时,是相对于前一个窗口而言,因此第一个选中的并不重要.
可以使用 :Startify
重新打开起始页.
基本用法2
可以针对指定文件夹建立 session
,其支持一下操作
:SLoad load a session:SSave save a session:SDelete delete a session:SClose close a session
Note: 这个我基本不用,有兴趣的同学可以自行研究 XD
配置
由于这个插件配置比较多,我只列出常用选项.
" 设置书签let g:startify_bookmarks = [ \ '~/Code/blog/startify/1.txt', \ '~/Code/blog/startify/2.txt', \]" 起始页显示的列表长度let g:startify_files_number = 20" 是否自动加载目录下的Session.vim, 很好用let g:startify_session_autoload = 1" 过滤列表,支持正则表达式let g:startify_skiplist = [ \ '\.vimgolf', \ '^/tmp', \ '/project/.*/documentation', \ ]" 自定义header,见下面的博文
个性化
" 自定义Header和Footer, 如果你熟悉vimscript,也可以编程实现 XDlet g:startify_custom_header = [ \ '+------------------------------+', \ '| Welcome to my blog. |', \ '| |', \ '| http://hackers-delight.com/ |', \ '+----------------+-------------+', \]let g:startify_custom_footer = [ \ '+------------------------------+', \ '| 1.01 ^ 365 = 37.78 |', \ '+----------------+-------------+', \]
效果如下:
结语
除了最基本的最近打开文件功能,我最常用的是使用 Bookmark
跟 vimwiki
进行配合; 比如最近在读一本书,需要经常打开同一个 wiki
页做读书笔记,这时候配置一个书签就非常好用了.
至于 Session
这个东西,我比较习惯用 NerdTree
的书签来代替 : )
- Hacking Vim: startify(05)
- Vim插件之startify
- Hacking Vim: bookmarks(06)
- Hacking Vim: UltiSnips(07)
- Hacking Vim: rainbow(09)
- [Hacking VIM]之VIM简介
- Hacking Vim: calendar.vim(04)
- Hacking Vim: 基础配置(01)
- Hacking Vim: Task List(03)
- Hacking Vim: Conque-Shell(08)
- 《Hacking Vim》读书笔记:Vim中高级技巧
- 《 Hacking Vim 》读书笔记: Vim 中高级技巧
- 《Hacking Vim》读书笔记:Vim中高级技巧
- [Hacking VIM]之定制:改变字体
- [Hacking VIM]之定制:改变颜色
- [Hacking VIM]之定制:自定义高亮
- [Hacking VIM]之定制:自定义状态栏
- Hacking Vim 中文翻译 -- 前言
- Emacs的ASCII图模式
- iOS面试题
- mysql赋权与收回权限(grant&revoke) 删除权限
- 客户端apache配置
- 微软BI 之SSIS 系列 - ErrorOutput 错误输出与处理
- Hacking Vim: startify(05)
- 欢迎使用CSDN-markdown编辑器
- Xamarin.Forms探索--使用 Xamarin.Forms 来创建跨平台的用户界面
- QPS 与 TPS 简介
- 多级ztree
- CodeForces 507E Breaking Good(最短路)
- Android开源项目分类汇总
- strftime、strptime和stime的使用
- git的使用方法