我有一个 Theorem 环境(别名为“thm”),在 VIM 编辑器中我这样写
按“thm”后跟“F5”我得到:
\begin{thm}
\end{thm}<++>
我可以编辑宏以便得到:
\begin{thm}<++>
\end{thm}<++>
在许多定理中,我们想要添加定理的名称。例如:罗尔定理……
将光标放在开始处?
答案1
请参阅 vim 的代码片段插件:超级剪辑
然后你可以在tex.snippet
snippet thm "theorem" b
\begin{thm}{${1:name}}
$2
\end{thm}
endsnippet
在您的 tex 文件中,在行thm
首输入(b
设置仅在行首触发的代码片段),然后输入触发键,例如CTRL-J
或<tab>
。
thm
将扩大到
\begin{thm}{name}
\end{thm}
如果不更改名称,则将突出显示并选择为默认值。键入mytheorem
,然后按下触发键,光标将跳转到$2
所在的位置,这样您就可以得到
\begin{thm}{mytheorem}
| % the cursor
\end{thm}
ultisnip 文档中还有许多精美的示例,可帮助您定制自己的片段。
答案2
我找到了问题的答案。在“envmacros.vim”文件(在 ~/.vim/ftplugin/latex-suite 下)中,我定义了:
let g:Tex_Env_thm = "\\begin{thm}[<++>]\<CR><++>\<CR>\\end{thm}<++>"
然后,当我输入 thm 并按 < F5> 时,我得到:
\begin{thm}[]
<++>
\end{thm}<++>
光标位于方括号 [] 内。如果我不想命名定理,我可以使用 ctrl-j 移动到内部,再使用 ctrl-j 退出