如何编写Vim映射调用Tabular插件对齐LaTeX表格全部行内容
问题解决方法
错误原因
你现有映射的写法不符合Vim普通模式映射的语法规则::V ii 不是合法的命令序列,你需要先在普通模式触发可视化选择,再调用对齐命令。
正确映射写法
nnoremap <Leader>at Vii:Tabularize /&<CR>
映射逻辑说明
V:进入行可视化模式,确保选中完整的表格行,避免半行选中的问题ii:调用vim-indent-object插件的等缩进文本对象,自动选中当前光标所在层级相同缩进的所有行,刚好匹配tabular环境内的表格内容范围,不会误选\begin{tabular}、\end{tabular}等外层行:Tabularize /&<CR>:针对可视化选中的所有行,按&符号执行对齐操作,和你手动操作的逻辑完全一致
使用方法
将上述映射写入你的vim配置文件(~/.vimrc 或init.lua的vim.cmd块中),重载配置后,把光标放在LaTeX表格的任意一行,按下<Leader>at即可完成包括表头在内的全表格列对齐。
内容的提问来源于stack exchange,提问作者bmurauer
相关产品推荐
相关产品推荐

