Tag: vimscript

在markdown中快速进行表格对齐

在markdown中的表格格式对齐是比价麻烦的,有了tabular这个vim插件之后,简单了许多,用法如下:

1
:45,67 Tab /|

这样就可以将表格按竖线进行对齐了,比较简单。不过经常修改表格时,每次都要输入这样一个命令还是挺麻烦的,故实现成快捷键的形式,如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
" align
" markdown table align by "|"
nmap tab\| :call CyyAlignBy("\|")<CR>
nmap tab, :call CyyAlignBy(",")<CR>
nmap tab= :call CyyAlignBy("=")<CR>
nmap tab=> :call CyyAlignBy("=>")<CR>
" 根据某字符串对齐
func CyyAlignBy(string)
let __lineno = line('.')
let __begin_ln = __lineno
let __end_ln = __lineno
" 向前搜索,直到空行
while "" != getline(__begin_ln)
let __begin_ln -= 1
if __begin_ln < 1
break
endif
endwhile
" 向后搜索,直到空行
while "" != getline(__end_ln)
let __end_ln += 1
endwhile
let __exec = printf('%d,%d Tab /%s', __begin_ln, __end_ln, a:string)
echo __exec
exec __exec
endfunction

说明:

vim脚本vimscript

Vim的脚本语言被称为Vimscript,是典型的动态式命令语言,提供一些常用的语言特征:变量、表达式、控制结构、内置函数、用户自定义函数、一级字符串、列表、字典、终端、文件IO、正则表达式模式匹配、异常和集成调试器等。
在学习Vimscript时,你可以学习Vim自带的Vimscript文档,打开Vim自带的Vimscript很简单,只需在Vim内部执行:help vim-script-intro(Normal模式下)

READ MORE