mirror of
https://github.com/pnx/dotfiles
synced 2026-08-16 08:58:11 +02:00
nvim
This commit is contained in:
parent
35c3cc49d5
commit
08bf9aad64
14 changed files with 264 additions and 110 deletions
|
|
@ -1,33 +1,34 @@
|
||||||
{
|
{
|
||||||
"LuaSnip": { "branch": "master", "commit": "50fcf17db7c75af80e6b6109acfbfb4504768780" },
|
"LuaSnip": { "branch": "master", "commit": "50fcf17db7c75af80e6b6109acfbfb4504768780" },
|
||||||
"catppuccin": { "branch": "main", "commit": "5215ea59df6d0a7e27da9a5cd1165e06d1b04cbe" },
|
"catppuccin": { "branch": "main", "commit": "67565cd353fa543fa30cb738570c2e4c87da3e9c" },
|
||||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"conform.nvim": { "branch": "master", "commit": "069e971295a34a810484b7b2ef54b3c735214181" },
|
"conform.nvim": { "branch": "master", "commit": "9a06e83527407a7600a2fe4e0d10adf432b6215e" },
|
||||||
"fd": { "branch": "master", "commit": "be815c261ace9cd0026cff5c8a579cda094e10fd" },
|
"fd": { "branch": "master", "commit": "f8270a6a447648a087c968552aa80325277a5588" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "4a143f13e122ab91abdc88f89eefbe70a4858a56" },
|
"friendly-snippets": { "branch": "main", "commit": "682157939e57bd6a2c86277dfd4d6fbfce63dbac" },
|
||||||
|
"gitsigns.nvim": { "branch": "main", "commit": "0dc886637f9686b7cfd245a4726f93abeab19d4a" },
|
||||||
"indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" },
|
"indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "eb4957442e3182f051b0ae11da32e06d22c190e3" },
|
"lazy.nvim": { "branch": "main", "commit": "bc620783663ab09d16bff9fdecc07da65b2a1528" },
|
||||||
"lsp-zero.nvim": { "branch": "v3.x", "commit": "16de3b18c5f7b6230d89b8e64ce9a4801b6f8d08" },
|
"lsp-zero.nvim": { "branch": "v3.x", "commit": "16de3b18c5f7b6230d89b8e64ce9a4801b6f8d08" },
|
||||||
"lspkind-nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
"lspkind-nvim": { "branch": "master", "commit": "1735dd5a5054c1fb7feaf8e8658dbab925f4f0cf" },
|
||||||
"lualine-lsp-progress": { "branch": "master", "commit": "56842d097245a08d77912edf5f2a69ba29f275d7" },
|
"lualine-lsp-progress": { "branch": "master", "commit": "56842d097245a08d77912edf5f2a69ba29f275d7" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" },
|
"lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" },
|
||||||
"mini.nvim": { "branch": "main", "commit": "cc2f5b542c38b2af234b62196fa5a8621119fb0c" },
|
"mini.nvim": { "branch": "main", "commit": "a3f274633a57c713160baf51724ecfc051117877" },
|
||||||
"none-ls.nvim": { "branch": "main", "commit": "8691504118b252d64fc5023a104aedd100ab754a" },
|
"none-ls.nvim": { "branch": "main", "commit": "cc0a3c45047e3daf85d07c1571d65476cfce6480" },
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "c15de7e7981f1111642e7e53799e1211d4606cb9" },
|
"nvim-autopairs": { "branch": "master", "commit": "c15de7e7981f1111642e7e53799e1211d4606cb9" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07" },
|
"nvim-cmp": { "branch": "main", "commit": "a110e12d0b58eefcf5b771f533fc2cf3050680ac" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "92166b89ab4b3d60f24e58170cac53b7141fd032" },
|
"nvim-lspconfig": { "branch": "master", "commit": "6806370929cf6a35be6e5e0e74588515a4356e4d" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "c5cbd3ec74f6f5ddbac939e6f24b99fe78262b4c" },
|
"nvim-treesitter": { "branch": "master", "commit": "7b04b398f868563cac37ae90baffd7c3dca513fe" },
|
||||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "34867c69838078df7d6919b130c0541c0b400c47" },
|
"nvim-treesitter-textobjects": { "branch": "master", "commit": "34867c69838078df7d6919b130c0541c0b400c47" },
|
||||||
"nvim-ts-autotag": { "branch": "main", "commit": "6eb4120a1aadef07ac312f1c4bc6456712220007" },
|
"nvim-ts-autotag": { "branch": "main", "commit": "06fe07d7523ba8c755fac7c913fceba43b1720ee" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "b4b302d6ae229f67df7a87ef69fa79473fe788a9" },
|
"nvim-web-devicons": { "branch": "master", "commit": "c0cfc1738361b5da1cd0a962dd6f774cc444f856" },
|
||||||
"oil.nvim": { "branch": "master", "commit": "e5312c3a801e7274fa14e6a56aa10a618fed80c3" },
|
"oil.nvim": { "branch": "master", "commit": "4c574cf4a2de736d2662d52ce086d8bdf87c49df" },
|
||||||
"playground": { "branch": "master", "commit": "ba48c6a62a280eefb7c85725b0915e021a1a0749" },
|
"playground": { "branch": "master", "commit": "ba48c6a62a280eefb7c85725b0915e021a1a0749" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" },
|
"plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" },
|
||||||
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
||||||
"telescope.nvim": { "branch": "master", "commit": "dfa230be84a044e7f546a6c2b0a403c739732b86" },
|
"telescope.nvim": { "branch": "master", "commit": "c392f1b78eaaf870ca584bd698e78076ed301b26" },
|
||||||
"trouble.nvim": { "branch": "main", "commit": "38915023a777b7f2422e503dc603f6a64b465bf5" },
|
"trouble.nvim": { "branch": "main", "commit": "2d8610a07033f2b367e71230ab128f8b89c2639d" },
|
||||||
"vim-fugitive": { "branch": "master", "commit": "4f59455d2388e113bd510e85b310d15b9228ca0d" },
|
"vim-fugitive": { "branch": "master", "commit": "64d6cafb9dcbacce18c26d7daf617ebb96b273f3" },
|
||||||
"which-key.nvim": { "branch": "main", "commit": "0099511294f16b81c696004fa6a403b0ae61f7a0" }
|
"which-key.nvim": { "branch": "main", "commit": "0099511294f16b81c696004fa6a403b0ae61f7a0" }
|
||||||
}
|
}
|
||||||
|
|
@ -33,7 +33,7 @@ return function()
|
||||||
["<Down>"] = selectNext,
|
["<Down>"] = selectNext,
|
||||||
["<Tab>"] = selectNext,
|
["<Tab>"] = selectNext,
|
||||||
["<C-c>"] = cmp.mapping.abort(),
|
["<C-c>"] = cmp.mapping.abort(),
|
||||||
["<CR>"] = utils.confirm({ select = true }),
|
["<CR>"] = utils.confirm({ behavior = cmp.ConfirmBehavior.Replace, select = true }),
|
||||||
},
|
},
|
||||||
snippet = {
|
snippet = {
|
||||||
expand = function(args)
|
expand = function(args)
|
||||||
|
|
@ -52,7 +52,7 @@ return function()
|
||||||
},
|
},
|
||||||
sources = {
|
sources = {
|
||||||
{ name = "nvim_lsp" },
|
{ name = "nvim_lsp" },
|
||||||
-- { name = "luasnip" },
|
{ name = "luasnip" },
|
||||||
{ name = "buffer" },
|
{ name = "buffer" },
|
||||||
{ name = "path" },
|
{ name = "path" },
|
||||||
{
|
{
|
||||||
|
|
@ -66,10 +66,10 @@ return function()
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
experimental = {
|
-- experimental = {
|
||||||
ghost_text = {
|
-- ghost_text = {
|
||||||
hl_group = "NonText",
|
-- hl_group = "NonText",
|
||||||
},
|
-- },
|
||||||
},
|
-- },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -9,4 +9,14 @@ return {
|
||||||
topdelete = { text = icons.delete },
|
topdelete = { text = icons.delete },
|
||||||
changedelete = { text = icons.change },
|
changedelete = { text = icons.change },
|
||||||
},
|
},
|
||||||
|
signs_staged = {
|
||||||
|
add = { text = icons.add },
|
||||||
|
delete = { text = icons.delete },
|
||||||
|
change = { text = icons.change },
|
||||||
|
topdelete = { text = icons.delete },
|
||||||
|
changedelete = { text = icons.change },
|
||||||
|
},
|
||||||
|
diff_opts = {
|
||||||
|
internal = true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,8 @@ return {
|
||||||
servers = {
|
servers = {
|
||||||
-- Bash
|
-- Bash
|
||||||
bashls = {},
|
bashls = {},
|
||||||
|
-- C/C++
|
||||||
|
ccls = {},
|
||||||
-- PHP
|
-- PHP
|
||||||
-- intelephense = {},
|
-- intelephense = {},
|
||||||
phpactor = {
|
phpactor = {
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
local icons = require('config.icons')
|
local icons = require("config.icons")
|
||||||
local separator = { "'" .. icons.separator .. "'", color = 'StatusLineSeparator' }
|
local separator = { "'" .. icons.separator .. "'", color = "StatusLineSeparator" }
|
||||||
|
|
||||||
return {
|
return {
|
||||||
options = {
|
options = {
|
||||||
globalstatus = true,
|
globalstatus = true,
|
||||||
component_separators = '',
|
component_separators = "",
|
||||||
section_separators = '',
|
section_separators = "",
|
||||||
disabled_filetypes = {
|
disabled_filetypes = {
|
||||||
statusline = {
|
statusline = {
|
||||||
'dashboard',
|
"dashboard",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
theme = {
|
theme = {
|
||||||
normal = {
|
normal = {
|
||||||
|
|
@ -35,8 +35,8 @@ return {
|
||||||
replace = {
|
replace = {
|
||||||
a = "StatusLineReplace",
|
a = "StatusLineReplace",
|
||||||
z = "StatusLine",
|
z = "StatusLine",
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
sections = {
|
sections = {
|
||||||
lualine_a = {
|
lualine_a = {
|
||||||
|
|
@ -55,39 +55,60 @@ return {
|
||||||
{
|
{
|
||||||
"diagnostics",
|
"diagnostics",
|
||||||
symbols = {
|
symbols = {
|
||||||
error = icons.diagnostics.error .. ' ',
|
error = icons.diagnostics.error .. " ",
|
||||||
warn = icons.diagnostics.warn .. ' ',
|
warn = icons.diagnostics.warn .. " ",
|
||||||
info = icons.diagnostics.info .. ' ',
|
info = icons.diagnostics.info .. " ",
|
||||||
hint = icons.diagnostics.hint .. ' ',
|
hint = icons.diagnostics.hint .. " ",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"diff",
|
"diff",
|
||||||
symbols = {
|
symbols = {
|
||||||
added = icons.diff.added .. ' ',
|
added = icons.diff.added .. " ",
|
||||||
modified = icons.diff.modified .. ' ',
|
modified = icons.diff.modified .. " ",
|
||||||
removed = icons.diff.removed .. ' '
|
removed = icons.diff.removed .. " ",
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
separator,
|
separator,
|
||||||
},
|
},
|
||||||
lualine_c = {
|
lualine_c = {
|
||||||
'filename'
|
{
|
||||||
|
"filename",
|
||||||
|
path = 1,
|
||||||
|
symbols = {
|
||||||
|
modified = "+",
|
||||||
|
readonly = "[R]",
|
||||||
|
unnamed = "-",
|
||||||
|
newfile = "[New]",
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
lualine_x = {
|
lualine_x = {
|
||||||
'filetype',
|
"filetype",
|
||||||
'fileformat',
|
"fileformat",
|
||||||
'(vim.bo.expandtab and "SPC" or "TAB") .. " " .. vim.bo.shiftwidth',
|
'(vim.bo.expandtab and "SPC" or "TAB") .. " " .. vim.bo.shiftwidth',
|
||||||
},
|
},
|
||||||
lualine_y = {
|
lualine_y = {
|
||||||
separator,
|
separator,
|
||||||
'location',
|
"location",
|
||||||
'progress'
|
"progress",
|
||||||
|
},
|
||||||
|
lualine_z = {},
|
||||||
|
},
|
||||||
|
winbar = {
|
||||||
|
lualine_c = {
|
||||||
|
{ "filetype", icon_only = true },
|
||||||
|
"filename",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
inactive_winbar = {
|
||||||
|
lualine_c = {
|
||||||
|
{ "filetype", icon_only = true },
|
||||||
|
"filename",
|
||||||
},
|
},
|
||||||
lualine_z = {}
|
|
||||||
},
|
},
|
||||||
extensions = {
|
extensions = {
|
||||||
'lazy',
|
"lazy",
|
||||||
'neo-tree'
|
"neo-tree",
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,17 @@
|
||||||
local icons = require("config.icons")
|
|
||||||
|
|
||||||
return function()
|
return function()
|
||||||
|
local icons = require("config.icons")
|
||||||
local actions = require("telescope.actions")
|
local actions = require("telescope.actions")
|
||||||
|
|
||||||
|
local dropdown_opts = {
|
||||||
|
previewer = false,
|
||||||
|
prompt_title = false,
|
||||||
|
layout_strategy = "horizontal",
|
||||||
|
layout_config = {
|
||||||
|
prompt_position = "top",
|
||||||
|
},
|
||||||
|
}
|
||||||
return {
|
return {
|
||||||
defaults = {
|
defaults = {
|
||||||
border = {
|
|
||||||
prompt = { 1, 1, 1, 1 },
|
|
||||||
results = { 1, 1, 1, 1 },
|
|
||||||
preview = { 1, 1, 1, 1 },
|
|
||||||
},
|
|
||||||
path_display = { truncate = 1 },
|
path_display = { truncate = 1 },
|
||||||
prompt_prefix = " ",
|
prompt_prefix = " ",
|
||||||
selection_caret = icons.current .. " ",
|
selection_caret = icons.current .. " ",
|
||||||
|
|
@ -27,19 +30,18 @@ return function()
|
||||||
find_files = {
|
find_files = {
|
||||||
hidden = true,
|
hidden = true,
|
||||||
},
|
},
|
||||||
buffers = {
|
buffers = vim.tbl_deep_extend("force", dropdown_opts, {
|
||||||
theme = "dropdown",
|
theme = "dropdown",
|
||||||
previewer = false,
|
|
||||||
mappings = {
|
mappings = {
|
||||||
i = {
|
i = {
|
||||||
["<c-d>"] = actions.delete_buffer + actions.move_to_top,
|
["<c-d>"] = actions.delete_buffer + actions.move_to_top,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
}),
|
||||||
},
|
},
|
||||||
extensions = {
|
extensions = {
|
||||||
["ui-select"] = {
|
["ui-select"] = {
|
||||||
require("telescope.themes").get_dropdown(),
|
require("telescope.themes").get_dropdown(dropdown_opts),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ return {
|
||||||
"phpdoc",
|
"phpdoc",
|
||||||
"blade",
|
"blade",
|
||||||
"go",
|
"go",
|
||||||
|
"gotmpl",
|
||||||
"gomod",
|
"gomod",
|
||||||
"gosum",
|
"gosum",
|
||||||
"javascript",
|
"javascript",
|
||||||
|
|
|
||||||
|
|
@ -177,10 +177,10 @@ return {
|
||||||
opts = require("config.oil"),
|
opts = require("config.oil"),
|
||||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
require('oil').setup(opts)
|
require("oil").setup(opts)
|
||||||
|
|
||||||
-- Don't touch my CWD!
|
-- Don't touch my CWD!
|
||||||
require('utils.oil').RegisterCWDHackHook()
|
require("utils.oil").RegisterCWDHackHook()
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -191,6 +191,14 @@ return {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"L3MON4D3/LuaSnip",
|
"L3MON4D3/LuaSnip",
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"rafamadriz/friendly-snippets",
|
||||||
|
config = function()
|
||||||
|
require("luasnip.loaders.from_vscode").lazy_load()
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
opts = {},
|
opts = {},
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets" })
|
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets" })
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,8 @@ return {
|
||||||
"hrsh7th/cmp-buffer", -- autocomplete from buffer
|
"hrsh7th/cmp-buffer", -- autocomplete from buffer
|
||||||
"hrsh7th/cmp-path", -- autocomplete from filesystem
|
"hrsh7th/cmp-path", -- autocomplete from filesystem
|
||||||
"hrsh7th/cmp-nvim-lsp", -- autocomplete from lsp
|
"hrsh7th/cmp-nvim-lsp", -- autocomplete from lsp
|
||||||
-- "saadparwaiz1/cmp_luasnip", -- autocomplete from snippet engine
|
"saadparwaiz1/cmp_luasnip", -- autocomplete from snippet engine
|
||||||
-- "L3MON4D3/LuaSnip", -- snippet engine
|
"L3MON4D3/LuaSnip", -- snippet engine
|
||||||
"onsails/lspkind-nvim", -- icons for kind
|
"onsails/lspkind-nvim", -- icons for kind
|
||||||
},
|
},
|
||||||
opts = require("config.cmp"),
|
opts = require("config.cmp"),
|
||||||
|
|
@ -39,6 +39,7 @@ return {
|
||||||
local lsp_zero = require("lsp-zero")
|
local lsp_zero = require("lsp-zero")
|
||||||
local lsp_config = require("lspconfig")
|
local lsp_config = require("lspconfig")
|
||||||
local augroup = vim.api.nvim_create_augroup("Lsp", {})
|
local augroup = vim.api.nvim_create_augroup("Lsp", {})
|
||||||
|
local utils = require("utils.lsp")
|
||||||
local map = require("utils.keys")
|
local map = require("utils.keys")
|
||||||
|
|
||||||
lsp_zero.on_attach(function(_, bufnr)
|
lsp_zero.on_attach(function(_, bufnr)
|
||||||
|
|
@ -60,8 +61,12 @@ return {
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
if (opts.document_hightlight or server_opt.document_highlight or false) and client.supports_method('textDocument/documentHighlight')then
|
if client.supports_method('textDocument/hover') then
|
||||||
require("utils.lsp").document_highlight(bufnr)
|
--utils.signature_help_on_hover(bufnr)
|
||||||
|
end
|
||||||
|
|
||||||
|
if (opts.document_hightlight or server_opt.document_highlight or false) and client.supports_method('textDocument/documentHighlight') then
|
||||||
|
utils.document_highlight(bufnr)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,4 +17,14 @@ function M.CloseAll()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function M.GetLoaded()
|
||||||
|
local loaded = {}
|
||||||
|
for i, hnd in ipairs(vim.api.nvim_list_bufs()) do
|
||||||
|
if vim.api.nvim_buf_is_loaded(hnd) then
|
||||||
|
loaded[i] = hnd
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return loaded
|
||||||
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
|
local luasnip = require("luasnip")
|
||||||
local luasnip = require('luasnip')
|
local cmp = require("cmp")
|
||||||
local cmp = require('cmp')
|
|
||||||
|
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
|
|
@ -13,7 +12,7 @@ function M.selectNext(opts)
|
||||||
else
|
else
|
||||||
fallback()
|
fallback()
|
||||||
end
|
end
|
||||||
end, {"i", "s"})
|
end, { "i", "s" })
|
||||||
end
|
end
|
||||||
|
|
||||||
function M.selectPrev(opts)
|
function M.selectPrev(opts)
|
||||||
|
|
@ -25,17 +24,17 @@ function M.selectPrev(opts)
|
||||||
else
|
else
|
||||||
fallback()
|
fallback()
|
||||||
end
|
end
|
||||||
end, {"i", "s"})
|
end, { "i", "s" })
|
||||||
end
|
end
|
||||||
|
|
||||||
function M.confirm(opts)
|
function M.confirm(opts)
|
||||||
return cmp.mapping(function(fallback)
|
return cmp.mapping(function(fallback)
|
||||||
if cmp.visible() then
|
if cmp.visible() then
|
||||||
if luasnip.expand_or_jumpable() then
|
-- if luasnip.expand_or_jumpable() then
|
||||||
luasnip.expand_or_jump()
|
-- luasnip.expand_or_jump()
|
||||||
else
|
-- else
|
||||||
cmp.confirm(opts or {})
|
cmp.confirm(opts or {})
|
||||||
end
|
-- end
|
||||||
else
|
else
|
||||||
fallback()
|
fallback()
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -19,4 +19,14 @@ function M.document_highlight(bufnr)
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function M.signature_help_on_hover(bufnr)
|
||||||
|
local group = vim.api.nvim_create_augroup('lsp_hover', { clear = false })
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
|
||||||
|
group = group,
|
||||||
|
buffer = bufnr,
|
||||||
|
callback = vim.lsp.buf.hover,
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|
|
||||||
84
nvim/queries/gotmpl/highlights.scm
Normal file
84
nvim/queries/gotmpl/highlights.scm
Normal file
|
|
@ -0,0 +1,84 @@
|
||||||
|
; extends: html
|
||||||
|
|
||||||
|
[
|
||||||
|
(field)
|
||||||
|
(field_identifier)
|
||||||
|
] @property
|
||||||
|
|
||||||
|
(variable) @variable
|
||||||
|
|
||||||
|
; Function calls
|
||||||
|
|
||||||
|
(function_call
|
||||||
|
function: (identifier) @function)
|
||||||
|
|
||||||
|
(method_call
|
||||||
|
method: (selector_expression
|
||||||
|
field: (field_identifier) @method))
|
||||||
|
|
||||||
|
; Operators
|
||||||
|
|
||||||
|
"|" @operator
|
||||||
|
":=" @operator
|
||||||
|
|
||||||
|
; Builtin functions
|
||||||
|
|
||||||
|
((identifier) @function.builtin
|
||||||
|
(#match? @function.builtin "^(and|call|html|index|slice|js|len|not|or|print|printf|println|urlquery|eq|ne|lt|ge|gt|ge)$"))
|
||||||
|
|
||||||
|
; Delimiters
|
||||||
|
|
||||||
|
"." @punctuation.delimiter
|
||||||
|
"," @punctuation.delimiter
|
||||||
|
|
||||||
|
"{{" @punctuation.bracket
|
||||||
|
"}}" @punctuation.bracket
|
||||||
|
"{{-" @punctuation.bracket
|
||||||
|
"-}}" @punctuation.bracket
|
||||||
|
")" @punctuation.bracket
|
||||||
|
"(" @punctuation.bracket
|
||||||
|
|
||||||
|
; Keywords
|
||||||
|
|
||||||
|
[
|
||||||
|
"else"
|
||||||
|
"else if"
|
||||||
|
"if"
|
||||||
|
"with"
|
||||||
|
] @conditional
|
||||||
|
|
||||||
|
[
|
||||||
|
"range"
|
||||||
|
"end"
|
||||||
|
"template"
|
||||||
|
"define"
|
||||||
|
"block"
|
||||||
|
] @keyword
|
||||||
|
|
||||||
|
; Literals
|
||||||
|
|
||||||
|
[
|
||||||
|
(interpreted_string_literal)
|
||||||
|
(raw_string_literal)
|
||||||
|
(rune_literal)
|
||||||
|
] @string
|
||||||
|
|
||||||
|
(escape_sequence) @string.special
|
||||||
|
|
||||||
|
[
|
||||||
|
(int_literal)
|
||||||
|
(float_literal)
|
||||||
|
(imaginary_literal)
|
||||||
|
] @number
|
||||||
|
|
||||||
|
[
|
||||||
|
(true)
|
||||||
|
(false)
|
||||||
|
] @boolean
|
||||||
|
|
||||||
|
[
|
||||||
|
(nil)
|
||||||
|
] @constant.builtin
|
||||||
|
|
||||||
|
(comment) @comment
|
||||||
|
(ERROR) @error
|
||||||
1
nvim/queries/gotmpl/injections.scm
Normal file
1
nvim/queries/gotmpl/injections.scm
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
(text) @html
|
||||||
Loading…
Add table
Add a link
Reference in a new issue