add latex snippets in luasnip

This commit is contained in:
gameloader 2023-09-25 15:17:36 +08:00
parent 2e06e0d601
commit c6d1d071d3
7 changed files with 29 additions and 5 deletions

View File

@ -2,7 +2,7 @@ local vim = vim
local api = vim.api
local M = {}
-- function to create a list of commands and convert them to autocommands
-------- This function is taken from https://github.com/norcalli/nvim_utils
function M.nvim_create_augroups(definitions)
for group_name, definition in pairs(definitions) do
api.nvim_command("augroup " .. group_name)

View File

@ -59,6 +59,7 @@ wk.register({
n = { ":AdvancedNewFile<CR>", "New file" },
s = { ":Telescope live_grep<CR>", "Search in project" },
f = { ":Telescope find_files<CR>", "Search file" },
c = { ":source $MYVIMRC<CR>", "Reload config file" },
},
})

View File

@ -1,5 +1,6 @@
local lspkind = require("lspkind")
local cmp = require("cmp")
cmp.setup({
-- 指定 snippet 引擎
snippet = {
@ -17,6 +18,7 @@ cmp.setup({
-- require'snippy'.expand_snippet(args.body)
end,
},
-- 来源
sources = cmp.config.sources({
{ name = "orgmode" },
@ -77,8 +79,7 @@ require("lsp_signature").setup(signature_config)
-- 补全时自动添加括号
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done({ map_char = { tex = "" } }))
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
-- use friendly snippet
require("luasnip.loaders.from_vscode").lazy_load()

View File

@ -18,6 +18,7 @@ require("null-ls").setup({
disabled_filetypes = { "cs", "js" },
}),
require("null-ls").builtins.formatting.csharpier,
require("null-ls").builtins.formatting.latexindent,
require("null-ls").builtins.formatting.gofmt,
require("null-ls").builtins.formatting.black,
require("null-ls").builtins.formatting.prettier,

View File

@ -57,4 +57,24 @@ ls.add_snippets("markdown", {
}),
})
require("luasnip.loaders.from_lua").lazy_load({ include = { "all", "markdown" } })
ls.add_snippets("tex", {
s("usepackage", {
t("\\usepackage{"),
i(1),
t("}"),
}),
s("begin", {
t("\\begin{"),
i(1, "enumerate"),
t("}"),
t({ "", "" }),
i(2, "(content)"),
t({ "", "\\end{" }),
f(function(args)
return args[1][1]
end, { 1 }),
t("}"),
}),
})
require("luasnip.loaders.from_lua").lazy_load({ include = { "all", "markdown", "tex" } })

View File

@ -25,7 +25,7 @@ require("nvim-treesitter.configs").setup({
-- disable = { "c", "rust" },
-- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
disable = {
"latex",
-- "latex",
function(lang, buf)
local max_filesize = 100 * 1024 -- 100 KB
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))

View File

@ -12,6 +12,7 @@ vim.g.vimtex_view_method = "skim"
vim.g.vimtex_complete_close_braces = 1
vim.g.vimtex_syntax_enabled = 1
vim.g.vimtex_indent_lists = {}
vim.g.vimtex_compiler_latexmk_engines = {
["_"] = "-xelatex",
}