0

UltiSnip doc で指定された例を変更しました。

snippet "be(gin)?( (\S+))?" "begin{} / end{}" br
\begin{${1:`!p
snip.rv = match.group(3) if match.group(2) is not None else "something"`}}${2:`!p
if match.group(2) is not None and match.group(3) != "proof":
    snip.rv = "\label{"+t[1]+":}"`}
    ${3:${VISUAL}}
\end{$1}$0
endsnippet

これは、元のものと比較して a を追加し、\label{envname:}その場合はenvname追加proofしませんでした。thmこれは、環境を記述するときに役立ちます。

be lem<tab>あげる

\begin{lem}\label{lem:} <c-j> \end{lem} 唯一の欠点は、その位置にプレースホルダーを追加する方法がわからないこと\label{lem:$4}です。何か案が?

4

1 に答える 1

0

私は作業バージョンを取得しますが、コードがきれいではありません:

snippet "be(gin)?( (\S+))?" "begin{} / end{}" br \begin{${1:`!p snip.rv = match.group(3) if match.group(2) is not None else "something"`}}${2:`!p if match.group(2) is not None and match.group(3) != "proof": snip.rv = '\label{'+t[1]+':'`$4`!p if match.group(2) is not None and match.group(3) != "proof": snip.rv ='}'`} ${3:${VISUAL}} \end{$1}$0 endsnippet

于 2016-10-06T01:39:39.163 に答える