怎样让 Vim 帮助你阅读和理解文档 - Jacky Liu's Blog

怎样让 Vim 帮助你阅读和理解文档

Jacky Liu posted @ 2010年10月09日 21:31 in Vim with tags color highlight syntax vim 按键映射 颜色 高亮 key mapping 语法 , 4302 阅读

Vim 是一款高效的文本编辑器,许多人对它强大的编辑功能都有体会,而实际上 Vim 能做的不仅仅是编辑,它还能使原本枯燥的文档变得“鲜活”起来:
 

 

这个图显示了 gvim 对普通的 txt 文本的显示效果,内容是 Python 的帮助文件。里面的颜色,缩进和标题是阅读时根据自己的理解随手加上去的。在 vim 里进行这些编辑操作并不麻烦,甚至比较享受。最为关键的是,一切都由自己控制,文档像这样读过一遍以后,就会印象比较深,而且只读一遍就好,以后回头找起来,因为有先前的注释在,就会非常快。我发现这样对于快速地掌握文档的内容特别有用。所以,现在我最喜欢的文档格式不是 pdf 或 html,而是 txt。

    看一下背后所用到的特性: 实际上也不复杂,就是些 Vim 的基本特性:

    首先是颜色。Vim 支持多少种颜色? 对 GUI 版来说,是 256 x 256 x 256 种,这跟 html 的颜色特性是完全一样的,包括颜色的定义方式。比如 #000000 代表纯黑,#ffffff 代表纯白,等等。(建议不要拿纯白或者其它很亮的颜色当背景色,看久了眼睛受不了)。实际当然用不到这么多,就在几个主要色系里面选些典型的就好了。颜色选定了以后就可以跟格式结合起来,定义成一些语法项,用在平时的文档里面。这个主要在 Vim 的文档 "syntax.txt" 里有讲。下面是我自己定义的一些语法项,主要用于一般的文档:
 

    接下来需要用到的特性是自定义按键。因为时常需要添加一些自己定义的格式字符,所以最好把这些操作映射到一些快捷键上。比如在 Visual 模式下选中一段感兴趣的文本,再按一两个键,就能给它加上格式/颜色,这样的操作用起来感觉很爽。

    如果想要更高级些的功能,那就需要了解更复杂的特性了: Vim Script。在第一个图中,左侧的窗口里加载的是 CustomTextIndexer 功能模块,这是用 Vim Script 写的一个插件,用来提取主窗口内的标题形成文档目录,并且具有简单的跳转功能。实际上背后的操作主要是文本匹配和字符串处理 ———— 都是 Vim 的本职工作,平时使用时也经常碰到。

 

Avatar_small
bigzhu 说:
2010年10月12日 17:50

我在用vim的帮助文档格式学英语。加上StarDict,很方便。

Avatar_small
蓝色基因 说:
2010年10月12日 18:21

@bigzhu:
确实用现成的比较好。这些都是以前闲着没事折腾出来的,现在没这功夫了。

Avatar_small
w 说:
2013年3月16日 11:33

请问:“里面的颜色,缩进和标题是阅读时根据自己的理解随手加上去的。” 你是怎么加进去操作的? 没看懂

Avatar_small
Jacky Liu 说:
2013年3月16日 16:06

@w: 用 vim 的 语法定义 配合 按键定义。比如按 \\ 是加段落标记,按 \a 加标题,按 ,f 加引号。只对 txt 有效。

Avatar_small
Mizoram Board Questi 说:
2022年9月05日 15:01

Mizoram Board HSLC Previous Question Paper 2023 are very important for the Preparation of Public Exam of MBSE for the Students. HSLC Students of can easily get their Latest and most valuable Mock Test Paper from this website. Mizoram Board Question Paper Students only have to Download the Meghalaya Board HSLC Mock Test Paper 2023 for all the important subjects are available Including the English, Mathematics, Social studies, Hindi, Urdu etc. Mizoram Board HSLC Model Paper 2023 has announced State Governmental Board of Education.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter
Host by is-Programmer.com | Power by Chito 1.3.3 beta | © 2007 LinuxGem | Design by Matthew "Agent Spork" McGee