在 VIM 中使用 F5 如何在顶部添加占位符

在 VIM 中使用 F5 如何在顶部添加占位符

我有一个 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 退出

相关内容