1
Fork 0
satellite/home/features/neovim/snippets/tex.miros

305 lines
6.7 KiB
Plaintext

for thmenv <- @⟨theorem,lemma,exercise,definition,corollary,example⟩
for thmprefix <- @⟨@thmenv:thm,lem,exe,def,cor,exa⟩
block auto start
-- {{{ Environments
string begin
name environment
snip
\begin{$1}
$0
\end{$1}
-- }}}
block auto !math start
-- {{{ Environments & lists & their elements
for env <- @⟨enumerate,itemize,align*⟩
string @⟨@env:olist,ulist,dm⟩
name @⟨@env:ordered list,unordered list,display math⟩
snip
\begin{@env}
$0
\end{@env}
string proof
snip
\begin{proof}$?1⟨[Proof of @^⟨$1⟩]⟩
$0
\end{proof}
string ciff
name cases for ⟺
snip
\begin{enumerate}
\item[$\implies$]$1,
\item[$\impliedby$]$2,
\end{enumerate}
$0
string item
snip \item$|1⟨,[$1] $0⟩
-- }}}
block text
import common/math-phrases
-- {{{ References
string ref
snip \ref{$1}$0
string r@thmprefix
snip \ref{@thmprefix:$1}$0
string pref
snip (\ref{$1})$0
string pr@thmprefix
snip (\ref{@thmprefix:$1})$0
-- }}}
block auto
-- {{{ Delimiters
string "
name quote
snip ``$1''$0
string $
name inline math
snip \$$1\$$0
-- }}}
string forcecr
desc Force the content onto a new line
snip {\ \\\}
block math
-- {{{ Sigma/Pi notation
for shorthand <- @⟨sum,prod⟩
for symbol <- @⟨@shorthand:sigma,pi⟩
for operation <- @⟨@shorthand:sum,product⟩
string b@shorthand
name @symbol @operation
desc Write out a @operation using big @symbol notation
snip \\@symbol{$|1⟨$1 = $2,$1⟩}^$|2⟨{$2},\infty$2⟩ $0
-- }}}
-- {{{ Matrices
for matkind <- @⟨matrix,determinant⟩
for matenv <- @⟨@matkind:bmatrix,vmatrix⟩
for shorthand <- @⟨@matkind:mat,det⟩
string 2@shorthand
name 2x2 @matkind
snip
\begin{@matenv}
$1 & $2 \\\\
$3 & $4
\end{@matenv}
string 3@shorthand
name 3x3 @matkind
snip
\begin{@matenv}
$1 & $2 & $3 \\\\
$4 & $5 & $6 \\\\
$7 & $8 & $9
\end{@matenv}
-- }}}
-- {{{ Equations
for createabbr <- @⟨false,true⟩
for operator <- @⟨@createabbr:
@⟨eq,lt,gt⟩,
@⟨neq,defas,leq,geq,iip,iib,iff⟩
for symbol <- @⟨@createabbr:
@⟨@operator:=,<,>⟩,
@⟨@operator:\neq,\coloneq,\leq,\geq,\implies,\impliedby,\iff⟩
block auto
abbr @⟨@createabbr:op-@operator,@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 start
string eqsystem
name system of equations
snip
\left\{
\begin{array}{rl}
$0
\end{array}
\right\}
-- }}}
-- {{{ Explanations
block end
for suffix <- @⟨add,sub,rmul,pow,inv⟩
string ex@suffix
snip
&& \lrb{\square @⟨@suffix:
+ $1,
- $1,
\cdot $1,
^{$1},
^{-1},
⟩}$0
for prefix <- @⟨neg,mul,ln⟩
string ex@prefix
snip && \lrb{@⟨@prefix:-,$1,\ln⟩ \square}$0
string exdiv
snip && \lrb{\frac \square {$1}}$0
string exint
snip && \lrb{\int\square \dif $1}$0
string exdint
snip && \lrb{\int_{$1}^{$2}\square \dif $3}$0
for kind <- @⟨texpl,extrin,exbound,exdef⟩
string @kind
snip
&& \lrb{\text{@⟨@kind:
$1,
triangle inequality on $$1$,
$$1$ is bounded,
definition of $$1$,
⟩}}$0
-- }}}
block auto word
-- {{{ Shorthands
-- {{{ Constants
for constkind <- @⟨default,shortened⟩
for constant <- @⟨@constkind:
@⟨star,delta,Delta,pi,tau,psi,Psi,phi,rho,sigma,alpha,beta,theta,gamma,omega,Omega,half,ordop,land,lor⟩,
@⟨lam,eps,iinf⟩
for expansion <- @⟨@constkind:
@constant,
@⟨@constant:lambda,epsilon,ifty⟩
for operator <- @⟨,e,s⟩
string @operator@constant
snip @⟨@operator:,^,_⟩\\@expansion
-- }}}
-- {{{ Logic
abbr frl \forall
abbr exs \exists
abbr nope \bot
abbr yee \top
-- }}}
-- {{{ Set-theory
abbr card \#
abbr ccap \cap
abbr ccup \cup
abbr iin \in
abbr nin \not\in
abbr nuls \varnothing
abbr ortco ^\bot
abbr sdiff \setminus
abbr sinter ^\circ
abbr smul \times
abbr speq \supseteq
abbr spt \supset
abbr sseq \subseteq
abbr sst \subset
-- }}}
-- {{{ Numbers
abbr niinf -\ifty
abbr eniinf ^{-\ifty}
abbr sniinf _{-\ifty}
abbr ccan \cancel
abbr mul \cdot
abbr nlnl \pm
abbr limsup \lim\sup
-- }}}
-- {{{ Misc
abbr oball \ball
abbr vsm \vecspace
abbr mangle \measuredangle
abbr com \circ
-- }}}
-- {{{ Fonts
abbr bb \mathbb
abbr cal \mathcal
-- }}}
-- }}}
-- {{{ Sets
for set <- @⟨N,Z,Q,I,R,C,P,F⟩
abbr @⟨@set:nats,ints,rats,irats,rrea,comp,ppri,ffie⟩ \mathbb @set
string set
desc Create a set by escaping the brackets
snip \{$1\}
-- }}}
-- {{{ Operators
for noperator <- @⟨ordop,land,lor,equiv,pmod,ldots,cdots,perp,angle,sup⟩
abbr @noperator \\@noperator
for operator <- @⟨overline,hat,bar,abs,norm,prob,diprod,sin,cos,sqrt,ln,lrb,zmod,gen,pmob⟩
string @operator
snip \\@operator$|1⟨{$1}, $0⟩
for bioperator <- @⟨iprod,frac,binom,dist⟩
string @bioperator
snip \\@bioperator$|1⟨ $1,{$1}⟩$|2⟨ $2,{$2}⟩ $0
-- }}}
block auto
-- {{{ Subscripts & exponents
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
-- }}}
-- {{{ Postfix notation
block !word
abbr .inv ^{-1}
abbr .neg _-
abbr .pos _+
abbr .t ^T
-- }}}
-- {{{ Limits & integrals
for limtarget <- @⟨anything,zero,infinity,negative infinity⟩
for prefix <- @⟨@limtarget:,z,i,n⟩
for limtargetsymbol <- @⟨@limtarget:$2,0,\infty,-\infty⟩
string @prefix⋄lim
name limit to @limtarget
snip \lim_{$1 \to @limtargetsymbol} $0
string intd
name definite integral
snip \int_{$|1⟨$1,-\infty$1⟩}^$|2⟨{$2},\infty$2⟩ $3 \dif $0
string inti
name indefinite integral
snip \int $1 \dif $0
-- }}}