11local ls = require (" luasnip" )
22local s = ls .snippet
33local f = ls .function_node
4+ local with_priority = require (" luasnip-latex-snippets.util.utils" ).with_priority
45
56local math_iA = {
67 s (
@@ -9,6 +10,7 @@ local math_iA = {
910 wordTrig = false ,
1011 regTrig = true ,
1112 name = " bar" ,
13+ priority = 100 ,
1214 },
1315 f (function (_ , snip )
1416 return string.format (" \\ overline{%s}" , snip .captures [1 ])
@@ -20,12 +22,16 @@ local math_iA = {
2022 wordTrig = false ,
2123 regTrig = true ,
2224 name = " hat" ,
25+ priority = 100 ,
2326 },
2427 f (function (_ , snip )
2528 return string.format (" \\ hat{%s}" , snip .captures [1 ])
2629 end , {})
2730 ),
2831
32+ with_priority (ls .parser .parse_snippet ({ trig = " hat" , name = " hat" }, " \\ hat{$1}$0 " ), 10 ),
33+ with_priority (ls .parser .parse_snippet ({ trig = " bar" , name = " bar" }, " \\ overline{$1}$0 " ), 10 ),
34+
2935 ls .parser .parse_snippet ({ trig = " td" , name = " to the ... power ^{}" }, " ^{$1}$0 " ),
3036 ls .parser .parse_snippet ({ trig = " rd" , name = " to the ... power ^{()}" }, " ^{($1)}$0 " ),
3137 ls .parser .parse_snippet ({ trig = " cb" , name = " Cube ^3" }, " ^3 " ),
@@ -44,13 +50,18 @@ local math_iA = {
4450 ls .parser .parse_snippet ({ trig = " R0+" , name = " R0+" }, " \\ R_0^+" ),
4551
4652 ls .parser .parse_snippet ({ trig = " notin" , name = " not in " }, " \\ not\\ in " ),
53+
4754 ls .parser .parse_snippet ({ trig = " cc" , name = " subset" }, " \\ subset " ),
55+
4856 ls .parser .parse_snippet (
4957 { trig = " sq" , name = " \\ sqrt{}" },
5058 " \\ sqrt{${1:${TM_SELECTED_TEXT}}} $0"
5159 ),
52- ls .parser .parse_snippet ({ trig = " <->" , name = " leftrightarrow" }, " \\ leftrightarrow" ),
53- ls .parser .parse_snippet ({ trig = " ..." , name = " ldots" }, " \\ ldots" ),
60+ with_priority (
61+ ls .parser .parse_snippet ({ trig = " <->" , name = " leftrightarrow" }, " \\ leftrightarrow" ),
62+ 200
63+ ),
64+ with_priority (ls .parser .parse_snippet ({ trig = " ..." , name = " ldots" }, " \\ ldots " ), 100 ),
5465 ls .parser .parse_snippet ({ trig = " !>" , name = " mapsto" }, " \\ mapsto " ),
5566 ls .parser .parse_snippet ({ trig = " iff" , name = " iff" }, " \\ iff" ),
5667 ls .parser .parse_snippet ({ trig = " ooo" , name = " \\ infty" }, " \\ infty" ),
@@ -67,7 +78,8 @@ local math_iA = {
6778 ls .parser .parse_snippet ({ trig = " mcal" , name = " mathcal" }, " \\ mathcal{$1}$0" ),
6879 ls .parser .parse_snippet ({ trig = " //" , name = " Fraction" }, " \\ frac{$1}{$2}$0" ),
6980 ls .parser .parse_snippet ({ trig = " \\\\\\ " , name = " setminus" }, " \\ setminus" ),
70- ls .parser .parse_snippet ({ trig = " ->" , name = " to" }, " \\ to " ),
81+ with_priority (ls .parser .parse_snippet ({ trig = " ->" , name = " to" }, " \\ to " ), 100 ),
82+
7183 ls .parser .parse_snippet (
7284 { trig = " letw" , name = " let omega" },
7385 " Let $\\ Omega \\ subset \\ C$ be open."
@@ -82,14 +94,15 @@ local math_iA = {
8294 ls .parser .parse_snippet ({ trig = " stt" , name = " text subscript" }, " _\\ text{$1} $0" ),
8395
8496 ls .parser .parse_snippet ({ trig = " xx" , name = " cross" }, " \\ times " ),
85- ls .parser .parse_snippet ({ trig = " **" , name = " cdot" }, " \\ cdot " ),
97+
98+ with_priority (ls .parser .parse_snippet ({ trig = " **" , name = " cdot" }, " \\ cdot " ), 100 ),
99+
86100 ls .parser .parse_snippet ({ trig = " SI" , name = " SI" }, " \\ SI{$1}{$2}" ),
87101 ls .parser .parse_snippet ({ trig = " inn" , name = " in " }, " \\ in " ),
88102 ls .parser .parse_snippet (
89103 { trig = " cvec" , name = " column vector" },
90104 " \\ begin{pmatrix} ${1:x}_${2:1}\\\\ \\ vdots\\\\ $1_${2:n} \\ end{pmatrix}"
91105 ),
92- ls .parser .parse_snippet ({ trig = " bar" , name = " bar" }, " \\ overline{$1}$0" ),
93106 ls .parser .parse_snippet ({ trig = " ceil" , name = " ceil" }, " \\ left\\ lceil $1 \\ right\\ rceil $0" ),
94107 ls .parser .parse_snippet ({ trig = " OO" , name = " emptyset" }, " \\ O" ),
95108 ls .parser .parse_snippet ({ trig = " RR" , name = " real" }, " \\ R" ),
@@ -107,42 +120,28 @@ local math_iA = {
107120 ls .parser .parse_snippet ({ trig = " DD" , name = " D" }, " \\ mathbb{D}" ),
108121 ls .parser .parse_snippet ({ trig = " HH" , name = " H" }, " \\ mathbb{H}" ),
109122 ls .parser .parse_snippet ({ trig = " lll" , name = " l" }, " \\ ell" ),
110- ls .parser .parse_snippet (
111- { trig = " dint" , name = " integral" },
112- " \\ int_{${1:-\\ infty}}^{${2:\\ infty}} ${3:${TM_SELECTED_TEXT}} $0"
123+ with_priority (
124+ ls .parser .parse_snippet (
125+ { trig = " dint" , name = " integral" },
126+ " \\ int_{${1:-\\ infty}}^{${2:\\ infty}} ${3:${TM_SELECTED_TEXT}} $0"
127+ ),
128+ 300
113129 ),
130+
114131 ls .parser .parse_snippet ({ trig = " ==" , name = " equals" }, " &= $1 \\\\ " ),
115132 ls .parser .parse_snippet ({ trig = " !=" , name = " equals" }, " \\ neq " ),
116133 ls .parser .parse_snippet ({ trig = " compl" , name = " complement" }, " ^{c}" ),
117134 ls .parser .parse_snippet ({ trig = " __" , name = " subscript" }, " _{$1}$0" ),
118135 ls .parser .parse_snippet ({ trig = " =>" , name = " implies" }, " \\ implies" ),
119136 ls .parser .parse_snippet ({ trig = " =<" , name = " implied by" }, " \\ impliedby" ),
120137 ls .parser .parse_snippet ({ trig = " <<" , name = " <<" }, " \\ ll" ),
121- ls . parser . parse_snippet ({ trig = " hat " , name = " hat " }, " \\ hat{$1}$0 " ),
138+
122139 ls .parser .parse_snippet ({ trig = " <=" , name = " leq" }, " \\ le " ),
123140 ls .parser .parse_snippet ({ trig = " >=" , name = " geq" }, " \\ ge " ),
124141 ls .parser .parse_snippet ({ trig = " invs" , name = " inverse" }, " ^{-1}" ),
125142 ls .parser .parse_snippet ({ trig = " ~~" , name = " ~" }, " \\ sim " ),
126143 -- ls.parser.parse_snippet({ trig = "lrb", name = "left\\{ right\\}" }, "\\left\\{ ${1:${TM_SELECTED_TEXT}} \\right\\} $0"),
127144 ls .parser .parse_snippet ({ trig = " conj" , name = " conjugate" }, " \\ overline{$1}$0" ),
128-
129- ls .parser .parse_snippet ({ trig = " asin" , name = " arcsin" }, " \\ arcsin " ),
130- ls .parser .parse_snippet ({ trig = " acos" , name = " arccos" }, " \\ arccos " ),
131- ls .parser .parse_snippet ({ trig = " atan" , name = " arctan" }, " \\ arctan " ),
132- ls .parser .parse_snippet ({ trig = " asec" , name = " arcsec" }, " \\ arcsec " ),
133- ls .parser .parse_snippet ({ trig = " acsc" , name = " arccsc" }, " \\ arccsc " ),
134- -- Postfix
135- --
136- ls .parser .parse_snippet ({ trig = " ln" , name = " ln postfix" }, " \\ ln " ),
137- ls .parser .parse_snippet ({ trig = " log" , name = " log postfix" }, " \\ log " ),
138- ls .parser .parse_snippet ({ trig = " exp" , name = " exp postfix" }, " \\ exp " ),
139- ls .parser .parse_snippet ({ trig = " star" , name = " star postfix" }, " \\ star " ),
140- ls .parser .parse_snippet ({ trig = " perp" , name = " perp postfix" }, " \\ perp " ),
141- ls .parser .parse_snippet ({ trig = " pm" , name = " pm postfix" }, " \\ pm " ),
142- ls .parser .parse_snippet ({ trig = " int" , name = " int postfix" }, " \\ int " ),
143-
144- ls .parser .parse_snippet ({ trig = " qquad" , name = " maths whitespace qquad" }, " \\ qquad " ),
145- ls .parser .parse_snippet ({ trig = " quad" , name = " maths whitespace qquad" }, " \\ qquad " ),
146145}
147146
148147return math_iA
0 commit comments