From 6edc696f0498dbbd64e351d291ace9f93c73889e Mon Sep 17 00:00:00 2001 From: Ricman Date: Sun, 20 Apr 2025 04:43:59 -0300 Subject: [PATCH] =?UTF-8?q?Agregu=C3=A9=20SEL,=20operadores=20l=C3=B3gicos?= =?UTF-8?q?,=20operadores=20matem=C3=A1ticos,=20e=20hice=20algunos=20cambi?= =?UTF-8?q?os=20en=20las=20funciones=20trig,=20tambi=C3=A9n=20agregu=C3=A9?= =?UTF-8?q?=20cambios=20en=20utninf=20para=20poder=20graficar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- init.lua | 2 +- lua/snippets/tex.lua | 115 ++++++++++++++++++++++++++++++++++++++----- 2 files changed, 103 insertions(+), 14 deletions(-) diff --git a/init.lua b/init.lua index a38a2803..da6984fa 100644 --- a/init.lua +++ b/init.lua @@ -88,7 +88,7 @@ P.S. You can delete this when you're done too. It's your config now! :) -- See `:help mapleader` -- NOTE: Must happen before plugins are loaded (otherwise wrong leader will be used) vim.g.mapleader = ' ' -vim.g.maplocalleader = '\\' +vim.g.maplocalleader = ' ' -- Set to true if you have a Nerd Font installed and selected in the terminal vim.g.have_nerd_font = false diff --git a/lua/snippets/tex.lua b/lua/snippets/tex.lua index 9fa0e949..21a54419 100644 --- a/lua/snippets/tex.lua +++ b/lua/snippets/tex.lua @@ -15,7 +15,7 @@ end) -- Generador dinámico de matrices local function matrix_generator(_, snip) local dims = snip.captures[1] -- Extraído del regex (por ejemplo, "3x3") - local n, m = dims:match '(%d+)x(%d+)' + local n, m = dims:match '(%d+)p(%d+)' n = tonumber(n) m = tonumber(m) local nodes = {} @@ -115,7 +115,7 @@ return { ), s( - { trig = ';mat(%d+x%d+)', regTrig = true, name = 'matriz' }, + { trig = ';mat(%d+p%d+)', regTrig = true, name = 'matriz' }, fmt( [[ \begin{{{}}} @@ -137,6 +137,20 @@ return { ) ), + s( + { trig = ';sel', snippetType = 'autosnippet', wordTrig = false }, + fmt( + [[ + \begin{{cases}} + {} + \end{{cases}} + ]], + { + i(1), + } + ) + ), + -- NOTE: MATH s( @@ -212,17 +226,17 @@ return { }) ), - s({ trig = ';sin', snippetType = 'autosnippet', wordTrig = false }, fmt('\\sin{} {}', { i(1), i(2) })), + s({ trig = ';sin', snippetType = 'autosnippet', wordTrig = false }, fmt('\\sin^{{{}}} {}', { i(1), i(2) })), - s({ trig = ';cos', snippetType = 'autosnippet', wordTrig = false }, fmt('\\cos{} {}', { i(1), i(2) })), + s({ trig = ';cos', snippetType = 'autosnippet', wordTrig = false }, fmt('\\cos^{{{}}} {}', { i(1), i(2) })), - s({ trig = ';tan', snippetType = 'autosnippet', wordTrig = false }, fmt('\\tan{} {}', { i(1), i(2) })), + s({ trig = ';tg', snippetType = 'autosnippet', wordTrig = false }, fmt('\\tg^{{{}}} {}', { i(1), i(2) })), - s({ trig = ';sec', snippetType = 'autosnippet', wordTrig = false }, fmt('\\sec{} {}', { i(1), i(2) })), + s({ trig = ':sin', snippetType = 'autosnippet', wordTrig = false }, fmt('\\csc^{{{}}} {}', { i(1), i(2) })), - s({ trig = ';csc', snippetType = 'autosnippet', wordTrig = false }, fmt('\\csc{} {}', { i(1), i(2) })), + s({ trig = ':cos', snippetType = 'autosnippet', wordTrig = false }, fmt('\\sec^{{{}}} {}', { i(1), i(2) })), - s({ trig = ';cot', snippetType = 'autosnippet', wordTrig = false }, fmt('\\cot{} {}', { i(1), i(2) })), + s({ trig = ':tg', snippetType = 'autosnippet', wordTrig = false }, fmt('\\cot^{{{}}} {}', { i(1), i(2) })), s({ trig = ';fr', snippetType = 'autosnippet', wordTrig = false }, fmt('\\frac{{{}}}{{{}}}', { i(1), i(2) })), @@ -243,23 +257,23 @@ return { s( { trig = ';log', snippetType = 'autosnippet' }, fmt('\\log_{{{}}}{{{}}}', { - i(1, 'b'), - i(2, 'x'), + i(1), + i(2), }) ), s( { trig = ';ln', snippetType = 'autosnippet' }, fmt('\\ln{{{}}}', { - i(1, 'x'), + i(1), }) ), s( { trig = ';rai', snippetType = 'autosnippet' }, fmt('\\sqrt[{}]{{{}}}', { - i(1, 'n'), - i(2, 'x'), + i(1), + i(2), }) ), @@ -274,6 +288,48 @@ return { -- NOTE: SECTIONS + s({ trig = ';sec', snippetType = 'autosnippet', wordTrig = false }, fmt('\\section{{{}}}', { i(1) })), + + s({ trig = ';ssc', snippetType = 'autosnippet', wordTrig = false }, fmt('\\subsection{{{}}}', { i(1) })), + + s({ trig = ';sss', snippetType = 'autosnippet', wordTrig = false }, fmt('\\subsubsection{{{}}}', { i(1) })), + + s({ trig = ':sec', snippetType = 'autosnippet', wordTrig = false }, fmt('\\section*{{{}}}', { i(1) })), + + s({ trig = ':ssc', snippetType = 'autosnippet', wordTrig = false }, fmt('\\subsection*{{{}}}', { i(1) })), + + s({ trig = ':sss', snippetType = 'autosnippet', wordTrig = false }, fmt('\\subsubsection*{{{}}}', { i(1) })), + + -- NOTE: LOGIC OPERATORS + + s({ trig = ';fall', snippetType = 'autosnippet', wordTrig = false }, { t '\\forall' }), + + s({ trig = ';exis', snippetType = 'autosnippet', wordTrig = false }, { t '\\exists' }), + + s({ trig = ';imp', snippetType = 'autosnippet', wordTrig = false }, { t '\\implies ' }), + + s({ trig = ';dimp', snippetType = 'autosnippet', wordTrig = false }, { t '\\iff ' }), + + s({ trig = ';sub', snippetType = 'autosnippet', wordTrig = false }, { t '\\subset ' }), + + s({ trig = ';sup', snippetType = 'autosnippet', wordTrig = false }, { t '\\supset ' }), + + s({ trig = ';esub', snippetType = 'autosnippet', wordTrig = false }, { t '\\subseteq ' }), + + s({ trig = ';esup', snippetType = 'autosnippet', wordTrig = false }, { t '\\supseteq ' }), + + s({ trig = ';cap', snippetType = 'autosnippet', wordTrig = false }, { t '\\cap ' }), + + s({ trig = ';cup', snippetType = 'autosnippet', wordTrig = false }, { t '\\cup ' }), + + s({ trig = ';per', snippetType = 'autosnippet', wordTrig = false }, { t '\\in ' }), + + s({ trig = ';and', snippetType = 'autosnippet', wordTrig = false }, { t '\\land ' }), + + s({ trig = ';or', snippetType = 'autosnippet', wordTrig = false }, { t '\\lor ' }), + + s({ trig = ';xor', snippetType = 'autosnippet', wordTrig = false }, { t '\\oplus ' }), + -- NOTE: MISCELLANEOUS s({ trig = ';it', snippetType = 'autosnippet', wordTrig = false }, { t { '', '', '\\item ' } }), @@ -289,6 +345,32 @@ return { ) ), + s({ trig = ';mod', snippetType = 'autosnippet', wordTrig = false }, fmt('\\left|{}\\right|', { i(1) })), + + s({ trig = ';sq', snippetType = 'autosnippet', wordTrig = false }, fmt('\\left[{}\\right]', { i(1) })), + + s({ trig = ';pa', snippetType = 'autosnippet', wordTrig = false }, fmt('\\left({}\\right)', { i(1) })), + + s({ trig = ';ll', snippetType = 'autosnippet', wordTrig = false }, { t '\\left\\{', i(1), t '\\right\\}' }), + + s({ trig = ';ere', snippetType = 'autosnippet', wordTrig = false }, fmt('\\mathbb{{R}}^{{{}}}', { i(1) })), + + s({ trig = ';to', snippetType = 'autosnippet', wordTrig = false }, { t '\\to' }), + + s({ trig = ';mid', snippetType = 'autosnippet', wordTrig = false }, { t '\\mid' }), + + s({ trig = ';vec', snippetType = 'autosnippet', wordTrig = false }, fmt('\\vec{{{}}}', { i(1) })), + + s({ trig = ';tbf', snippetType = 'autosnippet', wordTrig = false }, fmt('\\textbf{{{}}}', { i(1) })), + + s({ trig = ';tit', snippetType = 'autosnippet', wordTrig = false }, fmt('\\textit{{{}}}', { i(1) })), + + s({ trig = ';seg', snippetType = 'autosnippet', wordTrig = false }, fmt('\\overline{{{}}}', { i(1) })), + + s({ trig = ';sb', snippetType = 'autosnippet', wordTrig = false }, fmt('_{{{}}}', { i(1) })), + + s({ trig = ';ala', snippetType = 'autosnippet', wordTrig = false }, fmt('^{{{}}}', { i(1) })), + -- NORMAL SNIPPETS s( 'utninf', @@ -312,9 +394,16 @@ return { % Paquetes comunes \usepackage{{graphicx, float}} \usepackage{{amsfonts, amssymb, amsmath}} + \usepackage{{physics}} \usepackage{{enumerate}} \usepackage[colorlinks=true, citecolor=blue]{{hyperref}} + % Para graficar + \usepackage{{pgfplots}} + \usepackage{{tikz, color}} + \usepackage{{tikz-3dplot}} + \pgfplotsset{{width=15cm, compat=1.12}} + % Encabezados \usepackage{{fancyhdr}} \pagestyle{{fancy}}