local tex = require('Snippets.luasniphelperslatex') local helper = require('Snippets.luasniphelpers') return { s({ trig = 'chfig', snippetType = 'autosnippet' }, fmta( [[ \begin{scheme}[!h] \centering \chemname { \chemfig { <> } }{<>} \caption{<> } \label{sch:<>} \end{scheme} ]], { i(1), i(2), i(3), i(4), } ), { condition = helper.line_begin } ), s({ trig = 'chsch', snippetType = 'autosnippet' }, fmta( [[ \begin{scheme}[!h] \centering \schemestart \chemname { \chemfig { <> } }{<>} \schemestop \caption{<> } \label{sch:<>} \end{scheme} ]], { i(1), i(2), i(3), i(4), } ), { condition = helper.line_begin } ), s({ trig = 'scm', snippetType = 'autosnippet' }, fmta( [[ \schemestart <> \schemestop ]], { i(1), } ), { condition = tex.in_scheme } ), s({ trig = 'sbsch', snippetType = 'autosnippet' }, fmta( [[ \subscheme { <> } ]], { i(1), } ), { condition = tex.in_scheme } ), s({ trig = 'chf', snippetType = 'autosnippet' }, fmta( [[ \chemfig { <> } ]], { i(1), } ), { condition = tex.in_scheme } ), s({ trig = 'arr', snippetType = 'autosnippet' }, fmta( '\\arrow{<>}[<>]', { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'arw', snippetType = 'autosnippet' }, fmta( [[ \arrow(.base east--.base west){->>*[ <> ][ <> ]} [<>] ]], { i(1), i(2), i(3), } ), { condition = tex.in_scheme } ), s({ trig = 'chlr', snippetType = 'autosnippet' }, fmta( [[ \chemleft{<>} <> \chemright{<>} ]], { i(1), i(2), i(3), } ), { condition = tex.in_scheme } ), s({ trig = 'nmi', snippetType = 'autosnippet' }, fmta( [[ \chemnameinit { <> } ]], { i(1), } ), { condition = tex.in_scheme } ), s({ trig = 'pbx', snippetType = 'autosnippet' }, fmta( [[\parbox{<>}{ <> } ]], { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'move', snippetType = 'autosnippet' }, fmta( [[ \chemmove[shorten <<=<>,shorten >>=<>]{ \draw(<>).. controls +(<>) and +(<>).. (<>); } ]], { i(1), i(2), i(3), i(4), i(5), i(6), } ), { condition = tex.in_scheme } ), s({ trig = 'chr', snippetType = 'autosnippet' }, fmta( '\\charge{<>}{<>}', { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'brc', snippetType = 'autosnippet' }, fmta( [[ \polymerdelim[height = <>, depth = <>, open xshift=<>, close xshift=<>, indice = \!\!<>] {op<>}{cl<>} ]], { i(1), i(2), i(3), i(4), i(5), i(6), i(7), } ), { condition = tex.in_scheme } ), s({ trig = 'nme', snippetType = 'autosnippet' }, fmta( [[ \chemname { <> }{<>} ]], { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'lbl', snippetType = 'autosnippet' }, fmta( '\\label{<>:<>}', { i(1), i(2), } ) ), s({ trig = 'rfr', snippetType = 'autosnippet' }, fmta( [[ \cref{<>}]], { i(1), } ) ), s({ trig = 'fmi', snippetType = 'autosnippet' }, { t('\\fminus') }, { condition = tex.in_scheme } ), s({ trig = 'fpl', snippetType = 'autosnippet' }, { t('\\fplus') }, { condition = tex.in_scheme } ), s({ trig = 'omi', snippetType = 'autosnippet' }, { t('\\ominus') }, { condition = tex.in_scheme } ), s({ trig = 'opl', snippetType = 'autosnippet' }, { t('\\oplus') }, { condition = tex.in_scheme } ), s({ trig = 'nbr', snippetType = 'autosnippet' }, fmta( [[(-[::<>,0.6,,,draw=none]{<>})]], { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'crm', snippetType = 'autosnippet' }, fmta( [[\charge{<>=\ominus}{<>}]], { i(1), i(2), } ), { condition = tex.in_scheme } ), s({ trig = 'crp', snippetType = 'autosnippet' }, fmta( [[\charge{<>=\oplus}{<>}]], { i(1), i(2), } ), { condition = tex.in_scheme } ), }