block auto start for thmenv <- @⟨lemma,theorem,corollary,definition⟩ string @thmenv snip #@thmenv$|1⟨(name: "$1"),$1⟩[ $0 ] for proofenv <- @⟨proof,solution,exercise,example⟩ string @proofenv snip #@proofenv$|1⟨$1,(name: "$1")⟩[ $0 ] string dm name display math snip $ $0 $ block auto string ccf name continuously differentiable function snip $C^1$ string ftdef name function type definition snip $$1 : $2 → $3$ $0 block auto string tdif name total derivative snip (dif $1) / (dif $2) $0 string pdif name partial derivative snip (diff $1) / (diff $2) $0 string dint name definite integral snip ∫_$|1⟨$1,(-∞$1)⟩^$|2⟨$2,∞$2⟩ $3 dif $0 for limtarget <- @⟨anything,zero,infinity,negative infinity⟩ for prefix <- @⟨@limtarget:,z,i,n⟩ for limtargetsymbol <- @⟨@limtarget:$2,0,∞,-∞⟩ string @prefix⋄lim name limit to @limtarget snip lim_($1 → @limtargetsymbol) $0 for operator <- @⟨eq,neq,defas,leq,geq,lt,gt,iip,iib,iff⟩ for symbol <- @⟨@operator:=,≠,≔,≤,≥,<,>,⟹,⟸,⟺⟩ abbr @operator @symbol string a@operator name align at @operator snip &@symbol $0 block start string al@operator name aligned @operator snip \ $1 &@symbol $2 $0 string cr@operator name start with @operator snip \ &@symbol $0 block never pattern (.*)e@⟨t(%a),(%d)⟩ name auto exponent snip @0^@1 $0 pattern (.*)so(%a) name auto subscript snip @0_@1 $0 pattern ([%a]+)(%d) name auto digt subscript snip @0_@1 $0 string ss name subscript snip _{$1} $0 string ee name exponent snip ^($1) $0 pattern (%a)(.)pp name auto function call snip @0(@1) $0 pattern (%a)d(.)p name auto derivative call snip @0'(@1) $0 pattern (%a)i(.)p name auto preimage call snip @0^(-1)(@1) $0 block !word abbr .inv ^(-1) abbr .neg _- abbr .pos _+