Hacking Vim: bookmarks(06)
来源:互联网 发布:淘宝wap访客是什么意思 编辑:程序博客网 时间:2024/06/05 11:42
摘要
本文介绍一个可视化的书签插件 —— vim-bookmarks, 支持高亮、跨文件、书签持久化、预览所有书签、书签注解等功能.
简介
vim-bookmarks 插件旨在解决 Vim
自带书签无法高亮、无法持久化、难于记忆的问题,而且解决的非常漂亮. 下面列出其主要特性:
- 单行书签切换
⚑
- 单行的注释(说明)书签
☰
- 在
quickfix
窗口中访问所有书签 - 书签自动保存,下次开启自动加载
- 针对工作目录的独立书签(可选)
- 高度可定制
- 可以和
Unite
插件的quickfix
结合 - 不依赖
Vim
自身的marks
先睹为快
下面是官网的演示,这里盗个图 XD
安装
Note: 请确保已经正确安装了 Pathogen
插件,如果没有安装,请参考 Hacking Vim: 插件管理器Pathogen(02)
本篇文章的代码在 https://github.com/NsLib/blog-vim-proj/tree/bookmarks
cd ~/.vim/bundlegit clone git@github.com:MattesGroeger/vim-bookmarks.git --depth=1rm -rf ~/.vim/bundle/vim-bookmarks/.git
配置
在 ~/.vimrc
中添加如下配置:
" vim-bookmarkslet g:bookmark_highlight_lines = 1 " 高亮显示书签行
配置颜色(根据自己的喜好,替换掉 whatever
)
highlight BookmarkSign ctermbg=whatever ctermfg=whateverhighlight BookmarkAnnotationSign ctermbg=whatever ctermfg=whateverhighlight BookmarkLine ctermbg=whatever ctermfg=whateverhighlight BookmarkAnnotationLine ctermbg=whatever ctermfg=whatever
更多配置(基本上不会更改):
let g:bookmark_sign = '>>'
⚑ 书签符号 let g:bookmark_annotation_sign = '##'
☰ 注释(说明)书签符号 let g:bookmark_save_per_working_dir = 1
0 是否针对工作目录保存书签 let g:bookmark_auto_save = 0
1 是否自动保存书签 let g:bookmark_auto_save_file = '/bookmarks'
$HOME .’/.vim-bookmarks’ 存储书签的文件(bookmark_save_per_working_dir开启后此配置将被忽略) let g:bookmark_auto_close = 1
0 在 quickfix
窗口选中书签后,是否自动关闭 quickfix
窗口 let g:bookmark_highlight_lines = 1
0 是否高亮书签行 let g:bookmark_show_warning = 0
1 删除所有书签时,是否显示警告信息 let g:bookmark_center = 1
0 是否跳转后的书签行居中 let g:bookmark_no_default_key_mappings = 1
0 是否使用默认的快捷键基本用法
mm
:BookmarkToggle
添加/编辑/删除当前行注释书签 mi
:BookmarkAnnotate <TEXT>
跳转到当前 buffer
的下一个书签 mn
:BookmarkNext
跳转到当前 buffer
的前一个书签 mp
:BookmarkPrev
在 quickfix
窗口中列出所有书签(toggle) ma
:BookmarkShowAll
清除当前 buffer
内的所有书签 mc
:BookmarkClear
清除所有 buffer
内的书签 mx
:BookmarkClearAll
保存书签到文件 :BookmarkSave <FILE_PATH>
从文件加载书签 :BookmarkLoad <FILE_PATH>
下面是一个简单的演示:
结语
这里简单说下我的应用场景,剩下的同学们就发挥自己的想象力吧 XD
- 最基本的书签功能,写代码的时候可能要在几个点相互跳转
- 读源码的时候,
ctags + cscope
有时候回调比较麻烦,这时候书签就派上用场了 - 做代码
review
的时候,可以预先把审查点标记出来
0 0
- Hacking Vim: bookmarks(06)
- bookmarks in VIM
- BOOKMARKS
- Bookmarks
- Bookmarks
- Bookmarks
- Bookmarks
- Bookmarks
- Bookmarks
- How To Add Bookmarks Inside Vim Editor
- Hacking Vim: startify(05)
- 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)
- 多级ztree
- CodeForces 507E Breaking Good(最短路)
- Android开源项目分类汇总
- strftime、strptime和stime的使用
- git的使用方法
- Hacking Vim: bookmarks(06)
- 珍爱生命,使用python
- 纯虚函数
- Extjs视频教程_Extjs5.0从入门到实战开发信息管理系统
- Hacking Vim: UltiSnips(07)
- IaaS, PaaS和SaaS
- hdu 2084 数塔
- java.lang.OutOfMemoryError: unable to create new native thread
- ZendStudio调试配置(XDebug)