rst_tables 是一个用来创建和格式化 rst(reStructuredText)格式文档中的表格用的。此文档里的表格得画成表格的样子,囧死了……比如(网页上显示的可能没对齐,在 Vim 里应该很齐的www):
+----------+----------+-----------------------------------------+ | 格式名称 | 使用频率 | 使用场景 | +==========+==========+=========================================+ | markdown | 非常高 | 简单的文字,如博客、简单文档 | +----------+----------+-----------------------------------------+ | rst | 较低 | 较复杂的文档,如包含表格或者描述性列表。| | | | 以及 Python 库的文档。 | +----------+----------+-----------------------------------------+
所以,作为编辑器之神的 Vim,当然会有更方便的创建这种非人道的表格的办法啦。(其实我是看到 Vimwiki 的表格挺不错的 n(≧▽≦)n
略作搜索,找到了 rst_tables。它是这样子写的(墙外视频演示):
格式名称 使用频率 使用场景 markdown 非常高 简单的文字,如博客、简单文档 rst 较低 较复杂的文档,如包含表格或者描述性列表。以及 Python 库的文档。
每行的单元格间空两格,然后光标放在光标上,按\\c(其实是<leader><leader>c,create),就创建好啦。如果后期又修改了,按\\f(format)就可以重新格式化啦。
rst 的表格里可以写多行文字,就如前边所示那样。修改表格第一行那些减号的数量后再按\\f,可以调整栏宽。
好啦,rst_tables 本身的介绍至此结束。下面讲讲我作出的改进:
- 去除对 vim_bridges Python 库的依赖。根本没大量使用的东西,也没省下几行代码,何必用呢。
- 正确对齐和排版中文。官方版考虑了中文字符的宽度,但是用 Python 的 textwrap 来排版,造成各种混乱。我给改成用 Vim 原生排版功能排了。
- 使用 Python 3 接口,免得非 UTF-8 'encoding' 时出问题。同时使用了 Vim 7.4 新添加的 Python 接口。
- 如果没有 Python 支持,不要载入。
- 键映射局部于缓冲区。
-
放到
plugin
目录下,因为那些 Python 函数定义不需要载入多次。