mirror of
https://github.com/JulienMalka/snowfield.git
synced 2025-06-09 02:19:06 +02:00
Added newton config
This commit is contained in:
parent
f3cdf9d3e2
commit
736c627795
13 changed files with 1030 additions and 8 deletions
76
home-manager-modules/neovim/lua/lsp.lua
Executable file
76
home-manager-modules/neovim/lua/lsp.lua
Executable file
|
@ -0,0 +1,76 @@
|
|||
-- This file sets up autocompletion for neovim's native lsp
|
||||
|
||||
-- This enables all the language servers I want on my system
|
||||
-- Change these to whatever languages you use
|
||||
|
||||
require'lspconfig'.rnix.setup{}
|
||||
require'lspconfig'.sumneko_lua.setup{}
|
||||
vim.o.completeopt = "menuone,noselect"
|
||||
|
||||
-- Autocompletion setup
|
||||
require'compe'.setup {
|
||||
enabled = true;
|
||||
autocomplete = true;
|
||||
debug = false;
|
||||
min_length = 1;
|
||||
preselect = 'enable';
|
||||
throttle_time = 80;
|
||||
source_timeout = 200;
|
||||
incomplete_delay = 400;
|
||||
max_abbr_width = 100;
|
||||
max_kind_width = 100;
|
||||
max_menu_width = 100;
|
||||
documentation = false;
|
||||
source = {
|
||||
path = true;
|
||||
buffer = true;
|
||||
nvim_lsp = true;
|
||||
treesitter = true;
|
||||
};
|
||||
}
|
||||
|
||||
-- Set tab to accept the autocompletion
|
||||
local t = function(str)
|
||||
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
||||
end
|
||||
_G.tab_complete = function()
|
||||
if vim.fn.pumvisible() == 1 then
|
||||
return t "<C-n>"
|
||||
else
|
||||
return t "<S-Tab>"
|
||||
end
|
||||
end
|
||||
|
||||
vim.api.nvim_set_keymap("i", "<Tab>", "v:lua.tab_complete()", {expr = true})
|
||||
vim.api.nvim_set_keymap("s", "<Tab>", "v:lua.tab_complete()", {expr = true})
|
||||
|
||||
|
||||
-- set the path to the sumneko installation; if you previously installed via the now deprecated :LspInstall, use
|
||||
local sumneko_root_path = vim.fn.stdpath('cache')..'/lspconfig/sumneko_lua/lua-language-server'
|
||||
local sumneko_binary = "lua-language-server"
|
||||
|
||||
local runtime_path = vim.split(package.path, ';')
|
||||
table.insert(runtime_path, "lua/?.lua")
|
||||
table.insert(runtime_path, "lua/?/init.lua")
|
||||
|
||||
require'lspconfig'.sumneko_lua.setup {
|
||||
cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"};
|
||||
settings = {
|
||||
Lua = {
|
||||
runtime = {
|
||||
version = 'LuaJIT',
|
||||
path = runtime_path,
|
||||
},
|
||||
diagnostics = {
|
||||
globals = {'vim'},
|
||||
},
|
||||
workspace = {
|
||||
library = vim.api.nvim_get_runtime_file("", true),
|
||||
preloadFileSize = 120
|
||||
},
|
||||
telemetry = {
|
||||
enable = false,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue