Compare commits
5 Commits
641fac3142
...
959cc167c6
| Author | SHA1 | Date | |
|---|---|---|---|
| 959cc167c6 | |||
| ba425ecf49 | |||
| b2be54b2b9 | |||
| ffb7d66888 | |||
| 924ba5c280 |
@ -23,8 +23,5 @@ require("lazy").setup({
|
|||||||
spec = {
|
spec = {
|
||||||
{ import = "plugins" },
|
{ import = "plugins" },
|
||||||
},
|
},
|
||||||
checker = { enabled = true },
|
change_detection = { enabled = false },
|
||||||
change_detection = {
|
|
||||||
enabled = false
|
|
||||||
},
|
|
||||||
})
|
})
|
||||||
|
|||||||
@ -2,19 +2,24 @@
|
|||||||
"LuaSnip": { "branch": "master", "commit": "3732756842a2f7e0e76a7b0487e9692072857277" },
|
"LuaSnip": { "branch": "master", "commit": "3732756842a2f7e0e76a7b0487e9692072857277" },
|
||||||
"alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" },
|
"alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" },
|
||||||
"auto-session": { "branch": "main", "commit": "292492ab7af4bd8b9e37e28508bc8ce995722fd5" },
|
"auto-session": { "branch": "main", "commit": "292492ab7af4bd8b9e37e28508bc8ce995722fd5" },
|
||||||
"copilot.lua": { "branch": "master", "commit": "5bde2cfe01f049f522eeb8b52c5c723407db8bdf" },
|
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||||
|
"cmp-cmdline": { "branch": "main", "commit": "d126061b624e0af6c3a556428712dd4d4194ec6d" },
|
||||||
|
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
|
||||||
|
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||||
|
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||||
|
"copilot.lua": { "branch": "master", "commit": "e919876a5523b06406f0bc7285477da87a338a61" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||||
"gruvbox.nvim": { "branch": "main", "commit": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437" },
|
"gruvbox-material": { "branch": "master", "commit": "4bfc6983abc249c5943a60d8eb3980a3c2ababe1" },
|
||||||
"harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" },
|
"harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
|
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
|
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
|
||||||
"markview.nvim": { "branch": "main", "commit": "fb1f8476f4bd0fa4e692b5eef56bca80c7db338d" },
|
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "b1d9a914b02ba5660f1e272a03314b31d4576fe2" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "b1d9a914b02ba5660f1e272a03314b31d4576fe2" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
|
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
|
||||||
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
|
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "b34fbdffdcb6295c7a25df6ba375452a2e73c32e" },
|
"nvim-cmp": { "branch": "main", "commit": "d78fb3b64eedb701c9939f97361c06483af575e0" },
|
||||||
"nvim-treesitter": { "branch": "main", "commit": "b50774079aa3de80a06dce1634e7e1aa26d25848" },
|
"nvim-lspconfig": { "branch": "master", "commit": "abf6d190f2c06818489c0bd4b926e7e3a06c5e51" },
|
||||||
|
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
|
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
|
||||||
"oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
|
"oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
|
||||||
"outline.nvim": { "branch": "main", "commit": "6b62f73a6bf317531d15a7ae1b724e85485d8148" },
|
"outline.nvim": { "branch": "main", "commit": "6b62f73a6bf317531d15a7ae1b724e85485d8148" },
|
||||||
|
|||||||
@ -31,64 +31,21 @@ vim.lsp.config("texlab", {
|
|||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
vim.lsp.config('clangd', {
|
||||||
--
|
cmd = {
|
||||||
--
|
"clangd",
|
||||||
-- Completion config
|
"--background-index",
|
||||||
--
|
"--clang-tidy",
|
||||||
--
|
"--completion-style=bundled",
|
||||||
|
"--cross-file-rename",
|
||||||
|
"--header-insertion=iwyu",
|
||||||
vim.o.completeopt = "menu,menuone,noinsert,fuzzy"
|
-- Required for embedded system compilers
|
||||||
|
"--query-driver=/**/*g++",
|
||||||
vim.api.nvim_set_keymap("i", "<C-Space>", "<C-x><C-o>", { noremap = true })
|
"--offset-encoding=utf-16"
|
||||||
|
-- "-j=8",
|
||||||
vim.api.nvim_create_autocmd('LspAttach', {
|
-- "--malloc-trim",
|
||||||
group = vim.api.nvim_create_augroup('my.lsp', {}),
|
-- "--pch-storage=memory"
|
||||||
callback = function(args)
|
}
|
||||||
local client = assert(vim.lsp.get_client_by_id(args.data.client_id))
|
|
||||||
|
|
||||||
-- Make tab accept the selected completion
|
|
||||||
vim.keymap.set('i', '<Tab>', function()
|
|
||||||
if vim.fn.pumvisible() == 1 then
|
|
||||||
return '<C-y>'
|
|
||||||
else
|
|
||||||
return '<Tab>'
|
|
||||||
end
|
|
||||||
end, { expr = true })
|
|
||||||
|
|
||||||
-- Make enter just insert a newline (don't accept completion)
|
|
||||||
vim.keymap.set('i', '<CR>', function()
|
|
||||||
if vim.fn.pumvisible() == 1 then
|
|
||||||
return '<C-e><CR>'
|
|
||||||
else
|
|
||||||
return '<CR>'
|
|
||||||
end
|
|
||||||
end, { expr = true })
|
|
||||||
|
|
||||||
if client:supports_method('textDocument/completion') then
|
|
||||||
-- Trigger autocompletion on every keypress
|
|
||||||
local chars = {}; for i = 32, 126 do table.insert(chars, string.char(i)) end
|
|
||||||
client.server_capabilities.completionProvider.triggerCharacters = chars
|
|
||||||
|
|
||||||
vim.lsp.completion.enable(true, client.id, args.buf, { autotrigger = true })
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.keymap.set('n', '<M-L>',
|
|
||||||
function() vim.lsp.buf.format() end, {
|
|
||||||
desc = "Format",
|
|
||||||
noremap = true,
|
|
||||||
silent = true
|
|
||||||
})
|
|
||||||
vim.keymap.set('i', '<M-L>',
|
|
||||||
function() vim.lsp.buf.format() end, {
|
|
||||||
desc = "Format",
|
|
||||||
noremap = true,
|
|
||||||
silent = true
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, { desc = "Go to definition" })
|
|
||||||
end,
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
@ -125,3 +82,38 @@ vim.api.nvim_create_autocmd("CursorHold", {
|
|||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
--
|
||||||
|
-- Keymaps
|
||||||
|
--
|
||||||
|
--
|
||||||
|
|
||||||
|
|
||||||
|
-- TODO: Do I need this if I use nvim-cmp?
|
||||||
|
vim.o.completeopt = "menu,menuone,noinsert,fuzzy"
|
||||||
|
|
||||||
|
vim.api.nvim_set_keymap("i", "<C-Space>", "<C-x><C-o>", { noremap = true })
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd('LspAttach', {
|
||||||
|
group = vim.api.nvim_create_augroup('my.lsp', {}),
|
||||||
|
callback = function(args)
|
||||||
|
vim.keymap.set('n', '<M-L>',
|
||||||
|
function() vim.lsp.buf.format() end, {
|
||||||
|
desc = "Format",
|
||||||
|
noremap = true,
|
||||||
|
silent = true
|
||||||
|
})
|
||||||
|
vim.keymap.set('i', '<M-L>',
|
||||||
|
function() vim.lsp.buf.format() end, {
|
||||||
|
desc = "Format",
|
||||||
|
noremap = true,
|
||||||
|
silent = true
|
||||||
|
})
|
||||||
|
vim.keymap.set("n", "gd",
|
||||||
|
function() vim.lsp.buf.definition() end, {
|
||||||
|
desc = "Go to definition"
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|||||||
@ -8,7 +8,7 @@ return {
|
|||||||
|
|
||||||
-- TODO: Find out how to enable autosnippets without having the status line disappear
|
-- TODO: Find out how to enable autosnippets without having the status line disappear
|
||||||
require("luasnip").config.set_config({
|
require("luasnip").config.set_config({
|
||||||
-- enable_autosnippets = true,
|
enable_autosnippets = true,
|
||||||
store_selection_keys = "<leader>v"
|
store_selection_keys = "<leader>v"
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@ -1,23 +0,0 @@
|
|||||||
return {
|
|
||||||
"OXY2DEV/markview.nvim",
|
|
||||||
lazy = false,
|
|
||||||
}
|
|
||||||
-- return {
|
|
||||||
-- "iamcco/markdown-preview.nvim",
|
|
||||||
-- cmd = { "MarkdownPreview" },
|
|
||||||
-- build = function(plugin)
|
|
||||||
-- if vim.fn.executable "npx" then
|
|
||||||
-- vim.cmd("!cd " .. plugin.dir .. " && cd app && npx --yes yarn install")
|
|
||||||
-- else
|
|
||||||
-- vim.cmd [[Lazy load markdown-preview.nvim]]
|
|
||||||
-- vim.fn["mkdp#util#install"]()
|
|
||||||
-- end
|
|
||||||
-- end,
|
|
||||||
-- init = function()
|
|
||||||
-- if vim.fn.executable "npx" then
|
|
||||||
-- vim.g.mkdp_filetypes = {
|
|
||||||
-- "markdown"
|
|
||||||
-- }
|
|
||||||
-- end
|
|
||||||
-- end
|
|
||||||
-- }
|
|
||||||
@ -3,7 +3,7 @@ return {
|
|||||||
dependencies = { "https://github.com/MunifTanjim/nui.nvim" },
|
dependencies = { "https://github.com/MunifTanjim/nui.nvim" },
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
opts = {
|
opts = {
|
||||||
messages = { enabled = false },
|
-- messages = { enabled = false },
|
||||||
views = {
|
views = {
|
||||||
history = {
|
history = {
|
||||||
{ event = "lsp", kind = "" },
|
{ event = "lsp", kind = "" },
|
||||||
|
|||||||
70
nvim/.config/nvim/lua/plugins/nvim-cmp.lua
Normal file
70
nvim/.config/nvim/lua/plugins/nvim-cmp.lua
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
return
|
||||||
|
{
|
||||||
|
'hrsh7th/nvim-cmp',
|
||||||
|
event = 'InsertEnter',
|
||||||
|
dependencies = {
|
||||||
|
'L3MON4D3/LuaSnip',
|
||||||
|
'hrsh7th/cmp-buffer',
|
||||||
|
'hrsh7th/cmp-path',
|
||||||
|
'hrsh7th/cmp-nvim-lsp',
|
||||||
|
-- TODO: Do I need these?
|
||||||
|
'hrsh7th/cmp-cmdline',
|
||||||
|
-- 'hrsh7th/cmp-nvim-lsp-signature-help',
|
||||||
|
'saadparwaiz1/cmp_luasnip'
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
local cmp = require('cmp')
|
||||||
|
|
||||||
|
cmp.setup({
|
||||||
|
snippet = {
|
||||||
|
-- REQUIRED - you must specify a snippet engine
|
||||||
|
expand = function(args)
|
||||||
|
require('luasnip').lsp_expand(args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
-- window = {
|
||||||
|
-- -- completion = cmp.config.window.bordered(),
|
||||||
|
-- -- documentation = cmp.config.window.bordered(),
|
||||||
|
-- },
|
||||||
|
mapping = cmp.mapping.preset.insert({
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
['<C-e>'] = cmp.mapping.abort(),
|
||||||
|
['<Tab>'] = cmp.mapping.confirm({ select = true }),
|
||||||
|
}),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = 'nvim_lsp' },
|
||||||
|
{ name = 'luasnip' },
|
||||||
|
}, {
|
||||||
|
{ name = 'buffer' },
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
-- -- To use git you need to install the plugin petertriho/cmp-git and uncomment lines below
|
||||||
|
-- -- Set configuration for specific filetype.
|
||||||
|
-- cmp.setup.filetype('gitcommit', {
|
||||||
|
-- sources = cmp.config.sources({
|
||||||
|
-- { name = 'git' },
|
||||||
|
-- }, {
|
||||||
|
-- { name = 'buffer' },
|
||||||
|
-- })
|
||||||
|
-- })
|
||||||
|
-- require("cmp_git").setup()
|
||||||
|
|
||||||
|
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
|
||||||
|
cmp.setup.cmdline({ '/', '?' }, {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = {
|
||||||
|
{ name = 'buffer' }
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- -- Set up lspconfig.
|
||||||
|
-- local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||||
|
-- -- Replace <YOUR_LSP_SERVER> with each lsp server you've enabled.
|
||||||
|
-- vim.lsp.config('<YOUR_LSP_SERVER>', {
|
||||||
|
-- capabilities = capabilities
|
||||||
|
-- })
|
||||||
|
-- vim.lsp.enable('<YOUR_LSP_SERVER>')
|
||||||
|
end
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,23 +1,29 @@
|
|||||||
return {
|
return {
|
||||||
"nvim-treesitter/nvim-treesitter",
|
{
|
||||||
branch = 'main',
|
"nvim-treesitter/nvim-treesitter",
|
||||||
lazy = false, -- This plugin does not support lazy loading
|
build = ":TSUpdate",
|
||||||
build = ":TSUpdate",
|
branxh = "main",
|
||||||
opts = {
|
lazy = false, -- This plugin doesn't support lazy loading
|
||||||
ensure_installed = {
|
config = function(_, opts)
|
||||||
"cpp",
|
require("nvim-treesitter.configs").setup({
|
||||||
"c",
|
ensure_installed = {
|
||||||
"python",
|
"cpp",
|
||||||
"rust",
|
"c",
|
||||||
"lua",
|
"lua",
|
||||||
"markdown",
|
"vim",
|
||||||
"vimdoc",
|
"vimdoc",
|
||||||
},
|
"query"
|
||||||
auto_install = true,
|
},
|
||||||
highlight = {
|
sync_install = false,
|
||||||
enable = true,
|
auto_install = true,
|
||||||
-- TODO: Is this required?
|
highlight = {
|
||||||
additional_vim_regex_highlighting = { "latex" } -- Required for vimtex
|
-- disable = { "latex" },
|
||||||
}
|
enable = true,
|
||||||
|
additional_vim_regex_highlighting = {
|
||||||
|
"latex"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user