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 api = vim.api
local M = {} local M = {}
-- function to create a list of commands and convert them to autocommands -- 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) function M.nvim_create_augroups(definitions)
for group_name, definition in pairs(definitions) do for group_name, definition in pairs(definitions) do
api.nvim_command("augroup " .. group_name) api.nvim_command("augroup " .. group_name)

View File

@ -59,6 +59,7 @@ wk.register({
n = { ":AdvancedNewFile<CR>", "New file" }, n = { ":AdvancedNewFile<CR>", "New file" },
s = { ":Telescope live_grep<CR>", "Search in project" }, s = { ":Telescope live_grep<CR>", "Search in project" },
f = { ":Telescope find_files<CR>", "Search file" }, 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 lspkind = require("lspkind")
local cmp = require("cmp") local cmp = require("cmp")
cmp.setup({ cmp.setup({
-- 指定 snippet 引擎 -- 指定 snippet 引擎
snippet = { snippet = {
@ -17,6 +18,7 @@ cmp.setup({
-- require'snippy'.expand_snippet(args.body) -- require'snippy'.expand_snippet(args.body)
end, end,
}, },
-- 来源 -- 来源
sources = cmp.config.sources({ sources = cmp.config.sources({
{ name = "orgmode" }, { name = "orgmode" },
@ -77,8 +79,7 @@ require("lsp_signature").setup(signature_config)
-- 补全时自动添加括号 -- 补全时自动添加括号
local cmp_autopairs = require("nvim-autopairs.completion.cmp") local cmp_autopairs = require("nvim-autopairs.completion.cmp")
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done({ map_char = { tex = "" } }))
-- use friendly snippet -- use friendly snippet
require("luasnip.loaders.from_vscode").lazy_load() require("luasnip.loaders.from_vscode").lazy_load()

View File

@ -18,6 +18,7 @@ require("null-ls").setup({
disabled_filetypes = { "cs", "js" }, disabled_filetypes = { "cs", "js" },
}), }),
require("null-ls").builtins.formatting.csharpier, require("null-ls").builtins.formatting.csharpier,
require("null-ls").builtins.formatting.latexindent,
require("null-ls").builtins.formatting.gofmt, require("null-ls").builtins.formatting.gofmt,
require("null-ls").builtins.formatting.black, require("null-ls").builtins.formatting.black,
require("null-ls").builtins.formatting.prettier, 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" }, -- disable = { "c", "rust" },
-- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files -- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
disable = { disable = {
"latex", -- "latex",
function(lang, buf) function(lang, buf)
local max_filesize = 100 * 1024 -- 100 KB local max_filesize = 100 * 1024 -- 100 KB
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf)) 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_complete_close_braces = 1
vim.g.vimtex_syntax_enabled = 1 vim.g.vimtex_syntax_enabled = 1
vim.g.vimtex_indent_lists = {}
vim.g.vimtex_compiler_latexmk_engines = { vim.g.vimtex_compiler_latexmk_engines = {
["_"] = "-xelatex", ["_"] = "-xelatex",
} }