nvim config update
This commit is contained in:
@@ -1,19 +1,30 @@
|
||||
{
|
||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"LuaSnip": { "branch": "master", "commit": "cdbf6f41381e5ee4810b4b09284b603d8f18365d" },
|
||||
"catppuccin": { "branch": "main", "commit": "fc537040147f0374a22b88142a20eb6781141f0b" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "41d3b2a9dbf03774a2c92c376d8371dcca9710a9" },
|
||||
"lsp-zero.nvim": { "branch": "v3.x", "commit": "96f29a47fe48254cb3a826f6d7e90a108dae502d" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "45e27ca739c7be6c49e5496d14fcf45a303c3a63" },
|
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "f59bd14a852ca43db38e3662395354cb2a9b13e0" },
|
||||
"lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "ddefe5ab051e7ca6a7b374754f0920c44668b54f" },
|
||||
"mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
|
||||
"noice.nvim": { "branch": "main", "commit": "7b1960c48078a8b2fb44a89db82f4fa637b2d7c8" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" },
|
||||
"nvim-highlight-colors": { "branch": "main", "commit": "231547093a788b925b8fc36351ad422701c3a8c8" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "2b361e043810d5587d9af0787f8ce40da92ec5e9" },
|
||||
"nvim-scrollbar": { "branch": "main", "commit": "6994eb9f73d5fdc36ee2c8717940e8c853e51a49" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "53b0bcaadaffb505acff230578b56a86ec1ab38a" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "dfd4fb330f75595813e2a2f83000580a36dd10ff" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "a1e6268779411048a87f767a27380089362a0ce2" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "3fafeea5f339223e888fd15eb4032260849cb038" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "9ce85b0f7dcfe5358c0be937ad23e456907d410b" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "9651a931043359fcc094ab5c67ac22554a602745" },
|
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "54930e1abfc94409e1bb9266e752ef8379008592" },
|
||||
"vim-tmux-navigator": { "branch": "master", "commit": "7db70e08ea03b3e4d91f63713d76134512e28d7e" }
|
||||
}
|
||||
9
.config/nvim/lua/kamu/debug.lua
Normal file
9
.config/nvim/lua/kamu/debug.lua
Normal file
@@ -0,0 +1,9 @@
|
||||
for _, style in ipairs({ "compact", "fancy", "minimal" }) do
|
||||
for _, level in ipairs({ "debug", "warn", "error" }) do
|
||||
Snacks.notifier.notify(
|
||||
"- `notifier` says **hello**\n- and *goodbye*",
|
||||
level,
|
||||
{ style = style, timeout = 10000, title = "Snacks" }
|
||||
)
|
||||
end
|
||||
end
|
||||
@@ -17,6 +17,10 @@ vim.keymap.set("n", "<leader>nh", vim.cmd.noh)
|
||||
-- clear highlight on search when pressing <ESC>
|
||||
-- vim.keymap.set('n', '<ESC>', '<cmd>nohlsearch<CR>')
|
||||
|
||||
vim.keymap.set("n", "<space><space>x", "<cmd>source %<CR>")
|
||||
vim.keymap.set("n", "<space>x", ":.lua<CR>")
|
||||
vim.keymap.set("v", "<space>x", ":lua<CR>")
|
||||
|
||||
-- Highlight when yanking text
|
||||
vim.api.nvim_create_autocmd("TextYankPost", {
|
||||
desc = "Highlight when yanking text",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
in_wsl = os.getenv('WSL_DISTRO_NAME') ~= nil
|
||||
local in_wsl = os.getenv('WSL_DISTRO_NAME') ~= nil
|
||||
|
||||
-- https://mitchellt.com/2022/05/15/WSL-Neovim-Lua-and-the-Windows-Clipboard.html
|
||||
if in_wsl then
|
||||
@@ -65,7 +65,6 @@ local options = {
|
||||
smartcase = true,
|
||||
|
||||
showtabline = 0,
|
||||
cursorline = true,
|
||||
|
||||
background = "dark",
|
||||
termguicolors = true,
|
||||
@@ -83,8 +82,8 @@ local options = {
|
||||
updatetime = 50,
|
||||
|
||||
showmode = false,
|
||||
list = true,
|
||||
listchars = { tab = '┬╗ ', trail = '┬╖', nbsp= 'ΓÉú'},
|
||||
-- list = true,
|
||||
-- listchars = { tab = '┬╗ ', trail = '┬╖', nbsp= 'ΓÉú'},
|
||||
|
||||
inccommand = 'split',
|
||||
cursorline = true,
|
||||
|
||||
@@ -1,33 +1,85 @@
|
||||
return {
|
||||
{
|
||||
'L3MON4D3/LuaSnip',
|
||||
dependencies = {
|
||||
'saadparwaiz1/cmp_luasnip',
|
||||
'rafamadriz/friendly-snippets',
|
||||
},
|
||||
config = function()
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
local function check_backspace()
|
||||
local col = vim.fn.col(".") - 1
|
||||
if col == 0 or vim.fn.getline("."):sub(col, col):match("%s") then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
},
|
||||
end
|
||||
|
||||
local function T(str)
|
||||
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
||||
end
|
||||
|
||||
return {
|
||||
{
|
||||
'hrsh7th/nvim-cmp',
|
||||
dependencies = {
|
||||
'hrsh7th/cmp-nvim-lsp',
|
||||
'hrsh7th/cmp-buffer',
|
||||
-- 'hrsh7th/cmp-path',
|
||||
-- 'hrsh7th/cmp-cmdline',
|
||||
'L3MON4D3/LuaSnip',
|
||||
'hrsh7th/cmp-path',
|
||||
'hrsh7th/cmp-cmdline',
|
||||
'onsails/lspkind.nvim',
|
||||
{ 'L3MON4D3/LuaSnip', build = "make install_jsregexp" },
|
||||
'saadparwaiz1/cmp_luasnip',
|
||||
'rafamadriz/friendly-snippets',
|
||||
},
|
||||
lazy = false,
|
||||
priority = 100,
|
||||
config = function()
|
||||
vim.opt.completeopt = { "menu", "menuone" }
|
||||
|
||||
|
||||
local lspkind = require('lspkind')
|
||||
local cmp = require('cmp')
|
||||
local ls = require("luasnip")
|
||||
ls.setup({
|
||||
history = true,
|
||||
})
|
||||
|
||||
ls.filetype_extend("latex", { "tex" })
|
||||
|
||||
-- require("luasnip.loaders.from_vscode").lazy_load()
|
||||
require("luasnip.loaders.from_lua").load({
|
||||
-- paths = vim.api.nvim_get_runtime_file("lua/kamu/snippets/", true)[1]
|
||||
paths = "~/.config/nvim/lua/kamu/snippets/",
|
||||
})
|
||||
-- require("luasnip.loaders").edit_snippet_files()
|
||||
|
||||
-- vim.keymap.set({ "i", "s" }, "<Tab>", function()
|
||||
-- if ls.expand_or_jumpable() then
|
||||
-- ls.expand_or_jump()
|
||||
-- else
|
||||
-- return "<Tab>"
|
||||
-- end
|
||||
-- end, { expr = true, silent = true })
|
||||
--
|
||||
-- vim.keymap.set({ "i", "s" }, "<S-Tab>", function()
|
||||
-- if ls.jumpable(-1) then
|
||||
-- ls.jump(-1)
|
||||
-- else
|
||||
-- print("can't go further back")
|
||||
-- end
|
||||
-- end, { silent = true })
|
||||
|
||||
cmp.setup({
|
||||
formatting = {
|
||||
format = lspkind.cmp_format({
|
||||
mode = 'symbol_text',
|
||||
}),
|
||||
},
|
||||
ellipsis_char = '...',
|
||||
show_labelDetails = true,
|
||||
snippet = {
|
||||
-- REQUIRED - you must specify a snippet engine
|
||||
expand = function(args)
|
||||
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
||||
-- vim.snippet.expand(args.body)
|
||||
require('luasnip').lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
maxwidth = {
|
||||
menu = 50,
|
||||
abbr = 50,
|
||||
},
|
||||
window = {
|
||||
-- completion = cmp.config.window.bordered(),
|
||||
-- documentation = cmp.config.window.bordered(),
|
||||
@@ -37,14 +89,37 @@ return {
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<Tab>'] = cmp.mapping.confirm({ select = false }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
-- ['<Tab>'] = cmp.mapping.confirm({ select = false }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
['<CR>'] = cmp.mapping.confirm({ select = false }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
['<Tab>'] = cmp.mapping(function(fallback)
|
||||
if vim.fn.pumvisible() == 1 then
|
||||
vim.fn.feedkeys(T('<C-n>'), 'n')
|
||||
elseif ls.expand_or_jumpable() then
|
||||
ls.expand_or_jump()
|
||||
elseif not check_backspace() then
|
||||
cmp.mapping.complete()(core, fallback)
|
||||
else
|
||||
vim.cmd(':>')
|
||||
vim.cmd(':startinsert')
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||
if vim.fn.pumvisible() == 1 then
|
||||
vim.fn.feedkeys(T('<C-p>'), 'n')
|
||||
elseif ls.jumpable(-1) then
|
||||
ls.jump(-1)
|
||||
else
|
||||
vim.cmd(':<')
|
||||
vim.cmd(':startinsert')
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'luasnip' },
|
||||
}, {
|
||||
{ name = 'path' },
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
}),
|
||||
})
|
||||
|
||||
-- Set configuration for specific filetype.
|
||||
@@ -63,6 +138,7 @@ return {
|
||||
-- { name = 'buffer' }
|
||||
-- }
|
||||
-- })
|
||||
--
|
||||
|
||||
-- -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
||||
-- cmp.setup.cmdline(':', {
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
return {
|
||||
{
|
||||
-- lsp client plugin
|
||||
"neovim/nvim-lspconfig", -- https://github.com/neovim/nvim-lspconfig
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim", -- https://github.com/williamboman/mason.nvim
|
||||
"williamboman/mason-lspconfig.nvim", -- https://github.com/williamboman/mason-lspconfig.nvim bridges the gab between lspconfig and mason
|
||||
-- "folke/neodev.nvim", -- https://github.com/folke/neodev.nvim
|
||||
{
|
||||
"folke/lazydev.nvim", -- https://github.com/folke/lazydev.nvim
|
||||
ft = "lua",
|
||||
opts = {
|
||||
library = {
|
||||
{ path = "${3rd}/luv/library", words = { "vim%.uv" } },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
config = function()
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
@@ -16,10 +23,8 @@ return {
|
||||
'lua_ls',
|
||||
},
|
||||
handlers = {
|
||||
-- set up all installed servers automatically
|
||||
function(server_name)
|
||||
require("lspconfig")[server_name].setup({
|
||||
-- print(server_name),
|
||||
capabilities = capabilities
|
||||
})
|
||||
end,
|
||||
@@ -29,19 +34,18 @@ return {
|
||||
filetypes = {
|
||||
"yaml",
|
||||
},
|
||||
-- settings = {
|
||||
-- },
|
||||
})
|
||||
end,
|
||||
}
|
||||
})
|
||||
|
||||
-- require("neodev").setup({})
|
||||
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
group = vim.api.nvim_create_augroup('KamuLspConfig', {}),
|
||||
-- group = vim.api.nvim_create_augroup('KamuLspConfig', {}),
|
||||
callback = function(ev)
|
||||
local opts = { buffer = ev.buf }
|
||||
local client = vim.lsp.get_client_by_id(ev.data.client_id)
|
||||
if not client then return end
|
||||
|
||||
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts)
|
||||
vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, opts)
|
||||
vim.keymap.set("n", "<leader>ca", function() vim.lsp.buf.code_action() end, opts)
|
||||
@@ -56,21 +60,17 @@ return {
|
||||
vim.keymap.set("n", "<leader>vrr", function() vim.lsp.buf.references() end, opts)
|
||||
vim.keymap.set("n", "<leader>vrn", function() vim.lsp.buf.rename() end, opts)
|
||||
vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts)
|
||||
|
||||
-- Format on save
|
||||
if client.supports_method('textDocument/formatting') and vim.bo.filetype == "lua" then
|
||||
vim.api.nvim_create_autocmd('BufWritePre', {
|
||||
buffer = ev.buf,
|
||||
callback = function()
|
||||
vim.lsp.buf.format({ bufnr = ev.buf, id = client.id })
|
||||
end,
|
||||
})
|
||||
end
|
||||
},
|
||||
{
|
||||
"nvimtools/none-ls.nvim",
|
||||
config = function()
|
||||
local null_ls = require("null-ls")
|
||||
|
||||
null_ls.setup({
|
||||
sources = {
|
||||
null_ls.builtins.formatting.black,
|
||||
null_ls.builtins.formatting.isort,
|
||||
}
|
||||
end,
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,8 +75,8 @@ return {
|
||||
theme = 'catppuccin',
|
||||
--fmt = string.lower,
|
||||
icons_enabled = true,
|
||||
component_separators = { left = '', right = ''},
|
||||
section_separators = { left = '', right = ''},
|
||||
component_separators = { left = '', right = '' },
|
||||
section_separators = { left = '', right = '' },
|
||||
disabled_filetypes = {
|
||||
statusline = {},
|
||||
winbar = {},
|
||||
@@ -104,7 +104,7 @@ return {
|
||||
{
|
||||
'branch',
|
||||
color = { fg = "#FFF" },
|
||||
icon = { 'εéá', color = function() return { fg = getModeColor('a', 'bg') } end },
|
||||
icon = { '', color = function() return { fg = getModeColor('a', 'bg') } end },
|
||||
},
|
||||
{
|
||||
'diff',
|
||||
@@ -138,13 +138,13 @@ return {
|
||||
} },
|
||||
lualine_x = {
|
||||
-- print recording messages
|
||||
{
|
||||
require("noice").api.statusline.mode.get,
|
||||
cond = function()
|
||||
return require("noice").api.statusline.mode.has() and string.match(require("noice").api.statusline.mode.get(), '^recording @.$') ~= nil
|
||||
end,
|
||||
color = { fg = "#ff9e64" },
|
||||
},
|
||||
-- {
|
||||
-- require("noice").api.statusline.mode.get,
|
||||
-- cond = function()
|
||||
-- return require("noice").api.statusline.mode.has() and string.match(require("noice").api.statusline.mode.get(), '^recording @.$') ~= nil
|
||||
-- end,
|
||||
-- color = { fg = "#ff9e64" },
|
||||
-- },
|
||||
'encoding', 'fileformat', 'filetype' },
|
||||
lualine_y = {
|
||||
{
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
return {
|
||||
"folke/noice.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
},
|
||||
dependencies = {
|
||||
"rcarriga/nvim-notify",
|
||||
"MunifTanjim/nui.nvim",
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("noice").setup(opts)
|
||||
|
||||
require("notify").setup({
|
||||
background_colour = "#000000",
|
||||
level = 2,
|
||||
minimum_width = 50,
|
||||
render = "compact",
|
||||
time_formats = {
|
||||
notification = "%T",
|
||||
notification_history = "%FT%T"
|
||||
},
|
||||
timeout = 5000,
|
||||
top_down = true
|
||||
})
|
||||
end,
|
||||
}
|
||||
66
.config/nvim/lua/kamu/plugins/snacks.lua
Normal file
66
.config/nvim/lua/kamu/plugins/snacks.lua
Normal file
@@ -0,0 +1,66 @@
|
||||
return {
|
||||
"folke/snacks.nvim",
|
||||
priority = 1000,
|
||||
lazy = false,
|
||||
keys = {
|
||||
{ "<leader>sh", "<cmd>lua Snacks.notifier.show_history()<CR>", mode = "n", desc = "Show the notification History" }
|
||||
},
|
||||
opts = {
|
||||
bigfile = { enabled = true },
|
||||
notifier = {
|
||||
enabled = true,
|
||||
{
|
||||
timeout = 3000, -- default timeout in ms
|
||||
width = { min = 40, max = 0.4 },
|
||||
height = { min = 1, max = 0.6 },
|
||||
margin = { top = 0, right = 1, bottom = 0 },
|
||||
padding = true, -- add 1 cell of left/right padding to the notification window
|
||||
sort = { "level", "added" }, -- sort by level and time
|
||||
level = vim.log.levels.TRACE,
|
||||
icons = {
|
||||
error = " ",
|
||||
warn = " ",
|
||||
info = " ",
|
||||
debug = " ",
|
||||
trace = " ",
|
||||
},
|
||||
keep = function(notif)
|
||||
return vim.fn.getcmdpos() > 0
|
||||
end,
|
||||
style = "compact",
|
||||
top_down = true, -- place notifications from top to bottom
|
||||
date_format = "%R", -- time format for notifications
|
||||
more_format = " ↓ %d lines ",
|
||||
refresh = 50, -- refresh at most every 50ms
|
||||
}
|
||||
},
|
||||
quickfile = { enabled = true },
|
||||
statuscolumn = { enabled = true },
|
||||
words = { enabled = true },
|
||||
},
|
||||
init = function()
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "VeryLazy",
|
||||
callback = function()
|
||||
_G.dd = function(...)
|
||||
Snacks.debug.inspect(...)
|
||||
end
|
||||
_G.bt = function()
|
||||
Snacks.debug.backtrace()
|
||||
end
|
||||
vim.print = _G.dd -- Override print to use snacks for `:=` command
|
||||
|
||||
Snacks.toggle.option("spell", { name = "Spelling" }):map("<leader>us")
|
||||
Snacks.toggle.option("wrap", { name = "Wrap" }):map("<leader>uw")
|
||||
Snacks.toggle.option("relativenumber", { name = "Relative Number" }):map("<leader>uL")
|
||||
Snacks.toggle.diagnostics():map("<leader>ud")
|
||||
Snacks.toggle.line_number():map("<leader>ul")
|
||||
Snacks.toggle.option("conceallevel", { off = 0, on = vim.o.conceallevel > 0 and vim.o.conceallevel or 2 }):map(
|
||||
"<leader>uc")
|
||||
Snacks.toggle.treesitter():map("<leader>uT")
|
||||
Snacks.toggle.option("background", { off = "light", on = "dark", name = "Dark Background" }):map("<leader>ub")
|
||||
Snacks.toggle.inlay_hints():map("<leader>uh")
|
||||
end,
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -1,17 +1,39 @@
|
||||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
tag = '0.1.3',
|
||||
dependencies = {'nvim-lua/plenary.nvim'},
|
||||
tag = '0.1.8',
|
||||
dependencies = {
|
||||
'nvim-lua/plenary.nvim',
|
||||
{ 'nvim-telescope/telescope-fzf-native.nvim', build = 'make' },
|
||||
},
|
||||
config = function()
|
||||
require("telescope").setup()
|
||||
require("telescope").setup({
|
||||
pickers = {
|
||||
find_files = {
|
||||
theme = "ivy",
|
||||
},
|
||||
},
|
||||
extensions = {
|
||||
fzf = {},
|
||||
}
|
||||
})
|
||||
|
||||
require('telescope').load_extension('fzf')
|
||||
|
||||
local builtin = require('telescope.builtin')
|
||||
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
|
||||
vim.keymap.set('n', '<leader>ff', builtin.find_files)
|
||||
vim.keymap.set('n', '<leader>fn', function() builtin.find_files { cwd = vim.fn.stdpath("config") } end)
|
||||
vim.keymap.set('n', '<leader>fr', function()
|
||||
builtin.live_grep {
|
||||
cwd = "~/reports",
|
||||
file_ignore_patterns = { "/Makefile$", "%.png$", "%.PNG$" }
|
||||
}
|
||||
end)
|
||||
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
|
||||
vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
|
||||
vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
|
||||
vim.keymap.set('n', '<leader>fs', builtin.current_buffer_fuzzy_find, {})
|
||||
vim.keymap.set('n', '<leader>fo', builtin.lsp_document_symbols, {})
|
||||
vim.keymap.set('n', '<leader>fi', builtin.lsp_incoming_calls, {})
|
||||
vim.keymap.set('n', '<leader>fm', function() builtin.treesitter({default_text=":method:"}) end)
|
||||
vim.keymap.set('n', '<leader>fm', function() builtin.treesitter({ default_text = ":method:" }) end)
|
||||
end,
|
||||
}
|
||||
|
||||
31
.config/nvim/lua/kamu/snippets/plaintex/syss.lua
Normal file
31
.config/nvim/lua/kamu/snippets/plaintex/syss.lua
Normal file
@@ -0,0 +1,31 @@
|
||||
-- require("luasnip.session.snippet_collection").clear_snippets("tex")
|
||||
|
||||
local ls = require("luasnip")
|
||||
local s = ls.snippet
|
||||
local i = ls.insert_node
|
||||
local sn = ls.snippet_node
|
||||
local t = ls.text_node
|
||||
local f = ls.function_node
|
||||
local c = ls.choice_node
|
||||
local d = ls.dynamic_node
|
||||
local r = ls.restore_node
|
||||
local fmt = require("luasnip.extras.fmt").fmt
|
||||
|
||||
local snippets = {
|
||||
-- s("todo", fmt("\\sytodo[{}]{{ {} }}{}", { c(1, { t("todo"), t("techqa") }), i(2, "techqa"), i(0) })),
|
||||
s("todo",
|
||||
fmt("\\sytodo[{}]{{{}}}{}",
|
||||
{
|
||||
i(1, "techqa"),
|
||||
i(2),
|
||||
i(0)
|
||||
}
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
local autosnippets = {}
|
||||
|
||||
ls.add_snippets("tex", snippets)
|
||||
|
||||
return snippets, autosnippets
|
||||
Reference in New Issue
Block a user