使用vim画表格
使用vim画表格
在markdown时,可以方便、漂亮的画出表格
使用的插件
安装
使用pathogen安装
1 | cd .vim/bundle |
如果有洁癖,把tabular和table-mode目录下的.git和.gitignore删除
装好以后,cygwin下的vim使用正常,gvim下不生效!!!用set rtp查看,发现两个新增目录after下插件没有包含在rtp中。顺便说一下,可以在这里了解一下vim的目录结构。
table-mode基于tabular插件,所以table-mode将主要程序放在after目录下,以确保tabular插件可以先加载。
这里要说明一下,为了保证windows下和cygwin下使用同一套.vim文件,我的$HOME目录下没有windows gvim所需要的vimfiles目录,而是使用同一个.vim目录。
查看pathogen源码,里面有一段是这样的
1 | for dir in pathogen#split(&rtp) |
只有在系统默认的rtp目录包含after目录时,才加载这个目录下的bundle的after目录。
而windows gvim默认的rtp只包括$HOME/vimfiles/after,不包含$HOME/.vim/after。
找到原因后,解决起来很简单,在.vimrc文件中,调用pathogen之前,增加
1 | if has("win32") |
配置
GFW markdown的表格是这样的
1 | | 表头1 | 表头2 | 表头3 | |
需要配置table-mode的表格转角、分隔符的字符,以符合GFW markdown的要求
1 | let g:table_mode_corner = '|' |
使用
有两种使用方式,第一种:任何|起始的行,默认激活table-mode,可以一边编辑一边生成表格,第二种:使用g:table_mode_delimiter指定的字符做分隔符,先生成表格内容,再用:Tableize命令将表格内容格式化成表格
由于|的键位比较远,用第一种方法试了几次,小指头也抽筋了,所以用第二种方法,使用空格做分隔符,比较方便
配置
1 | let g:table_mode_delimiter=' ' |
使用演示,先生成表格内容,用空格分隔。
1 | 表头1 表头2 表头2 长表头1 长长表头2 |
然后选中上述内容,再: Tableize,漂亮的表格就出来了。由于不是等宽字符的原因,表格线没有对齐,而在vim中表格线都对齐,很漂亮。
1 | | 表头1 | 表头2 | 表头2 | 长表头1 | 长长表头2 | |
html的样子
| 表头1 | 表头2 | 表头2 | 长表头1 | 长长表头2 |
|---|---|---|---|---|
| 内容1 | 内容2 | 长内容1 | 长长内容2 | 短1 |
| 长长内容3 | 短3 | 短4 | 短5 | 短6 |
| 短2 | 内容5 | 内容6 | 内容7 | 内容8 |