Add dotfiles

This commit is contained in:
2024-02-28 01:37:11 +01:00
commit aa37de5f47
58 changed files with 3361 additions and 0 deletions

View File

@@ -0,0 +1,439 @@
----------------
-- Abbreviations
----------------
local ls = require("luasnip")
local s = ls.snippet
local sn = ls.snippet_node
local t = ls.text_node
local i = ls.insert_node
local f = ls.function_node
local d = ls.dynamic_node
local fmt = require("luasnip.extras.fmt").fmt
local fmta = require("luasnip.extras.fmt").fmta
local rep = require("luasnip.extras").rep
---------------
-- Environments
---------------
local tex_utils = {}
tex_utils.in_mathzone = function() -- math context detection
return vim.fn['vimtex#syntax#in_mathzone']() == 1
end
tex_utils.in_text = function()
return not tex_utils.in_mathzone()
end
tex_utils.in_comment = function() -- comment detection
return vim.fn['vimtex#syntax#in_comment']() == 1
end
tex_utils.in_env = function(name) -- generic environment detection
local is_inside = vim.fn['vimtex#env#is_inside'](name)
return (is_inside[1] > 0 and is_inside[2] > 0)
end
local get_visual = function(args, parent)
if (#parent.snippet.env.LS_SELECT_RAW > 0) then
return sn(nil, i(1, parent.snippet.env.LS_SELECT_RAW))
else
return sn(nil, i(1))
end
end
-----------
-- Snippets
-----------
return {
s({trig="´a", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\alpha ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´b", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\beta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´g", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\gamma ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´d", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\delta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´e", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\epsilon ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´z", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\zeta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´h", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\eta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´q", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\theta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´i", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\iota ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´k", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\kappa ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´l", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\lambda ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´m", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\mu ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´n", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\nu ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´x", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\xi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´p", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\pi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´r", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\rho ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´s", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\sigma ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´t", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\tau ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´u", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\upsilon ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´f", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\phi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´c", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\chi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´y", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\psi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´w", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\omega ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´A", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Alpha ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´B", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Beta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´G", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Gamma ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´D", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Delta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´E", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Epsilon ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´Z", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Zeta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´H", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Eta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´Q", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Theta ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´I", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Iota ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´K", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Kappa ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´L", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Lambda ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´M", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Mu ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´N", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Nu ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´X", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Xi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´P", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Pi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´R", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Rho ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´S", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Sigma ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´T", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Tau ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´U", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Upsilon ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´F", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Phi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´C", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Chi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´Y", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Psi ]],
{}
),
{condition = tex_utils.in_mathzone}
),
s({trig="´W", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\Omega ]],
{}
),
{condition = tex_utils.in_mathzone}
),
-- Strictly speaking not greek characters, but very similar snippets
s({trig="´6", wordTrig=false, snippetType="autosnippet"},
fmta(
[[\partial ]],
{}
),
{condition = tex_utils.in_mathzone}
),
} -- return