mirror of
https://github.com/jdhao/nvim-config.git
synced 2025-06-08 14:14:33 +02:00
Compare commits
7 Commits
ab88c112ff
...
2880d7bce3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2880d7bce3 | ||
|
|
7e6dd23d37 | ||
|
|
fcbd7d3a0d | ||
|
|
97f302084f | ||
|
|
9d29544d72 | ||
|
|
cad9f5a214 | ||
|
|
ecde08941b |
@ -120,6 +120,35 @@ fi
|
||||
# Install bash-language-server
|
||||
"$NODE_DIR/bin/npm" install -g bash-language-server
|
||||
|
||||
#######################################################################
|
||||
# lua-language-server #
|
||||
#######################################################################
|
||||
SUMNEKO_LUA_DIR=$HOME/tools/lua-language-server
|
||||
SUMNEKO_LUA_SRC_NAME=$HOME/packages/lua-language-server.tar.gz
|
||||
SUMNEKO_LUA_LINK="https://github.com/sumneko/lua-language-server/releases/download/3.5.3/lua-language-server-3.5.3-linux-x64.tar.gz"
|
||||
|
||||
if [[ -z "$(command -v lua-language-server)" ]] && [[ ! -f "$SUMNEKO_LUA_DIR/bin/lua-language-server" ]]; then
|
||||
echo 'Install lua-language-server'
|
||||
if [[ ! -f $SUMNEKO_LUA_SRC_NAME ]]; then
|
||||
echo "Downloading lua-language-server and renaming"
|
||||
wget $SUMNEKO_LUA_LINK -O "$SUMNEKO_LUA_SRC_NAME"
|
||||
fi
|
||||
|
||||
if [[ ! -d "$SUMNEKO_LUA_DIR" ]]; then
|
||||
echo "Creating lua-language-server directory under tools directory"
|
||||
mkdir -p "$SUMNEKO_LUA_DIR"
|
||||
echo "Extracting to directory $SUMNEKO_LUA_DIR"
|
||||
|
||||
tar zxvf "$SUMNEKO_LUA_SRC_NAME" -C "$SUMNEKO_LUA_DIR"
|
||||
fi
|
||||
|
||||
if [[ "$ADD_TO_SYSTEM_PATH" = true ]] && [[ "$USE_BASH_SHELL" = true ]]; then
|
||||
echo "export PATH=\"$SUMNEKO_LUA_DIR/bin:\$PATH\"" >> "$HOME/.bash_profile"
|
||||
fi
|
||||
else
|
||||
echo "lua-language-server is already installed. Skip installing it."
|
||||
fi
|
||||
|
||||
#######################################################################
|
||||
# Ripgrep part #
|
||||
#######################################################################
|
||||
@ -145,8 +174,8 @@ if [[ -z "$(command -v rg)" ]] && [[ ! -f "$RIPGREP_DIR/rg" ]]; then
|
||||
fi
|
||||
|
||||
# set up manpath and zsh completion for ripgrep
|
||||
mkdir -p $HOME/tools/ripgrep/doc/man/man1
|
||||
mv $HOME/tools/ripgrep/doc/rg.1 $HOME/tools/ripgrep/doc/man/man1
|
||||
mkdir -p "$HOME/tools/ripgrep/doc/man/man1"
|
||||
mv "$HOME/tools/ripgrep/doc/rg.1" "$HOME/tools/ripgrep/doc/man/man1"
|
||||
|
||||
if [[ "$USE_BASH_SHELL" = true ]]; then
|
||||
echo 'export MANPATH=$HOME/tools/ripgrep/doc/man:$MANPATH' >> "$HOME/.bash_profile"
|
||||
|
||||
1
lua/config/fidget-nvim.lua
Normal file
1
lua/config/fidget-nvim.lua
Normal file
@ -0,0 +1 @@
|
||||
require"fidget".setup{}
|
||||
@ -13,7 +13,7 @@ local custom_attach = function(client, bufnr)
|
||||
vim.keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, opts)
|
||||
vim.keymap.set("n", "<space>wa", vim.lsp.buf.add_workspace_folder, opts)
|
||||
vim.keymap.set("n", "<space>wr", vim.lsp.buf.remove_workspace_folder, opts)
|
||||
vim.keymap.set("n", "<space>wl", function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end, opts)
|
||||
vim.keymap.set("n", "<space>wl", function() inspect(vim.lsp.buf.list_workspace_folders()) end, opts)
|
||||
vim.keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts)
|
||||
vim.keymap.set("n", "gr", vim.lsp.buf.references, opts)
|
||||
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev, opts)
|
||||
@ -21,10 +21,10 @@ local custom_attach = function(client, bufnr)
|
||||
vim.keymap.set("n", "<space>q", function() vim.diagnostic.setqflist({open = true}) end, opts)
|
||||
vim.keymap.set("n", "<space>ca", vim.lsp.buf.code_action, opts)
|
||||
|
||||
vim.api.nvim_create_autocmd("CursorHold", {
|
||||
api.nvim_create_autocmd("CursorHold", {
|
||||
buffer=bufnr,
|
||||
callback = function()
|
||||
local opts = {
|
||||
local float_opts = {
|
||||
focusable = false,
|
||||
close_events = { "BufLeave", "CursorMoved", "InsertEnter", "FocusLost" },
|
||||
border = 'rounded',
|
||||
@ -36,11 +36,11 @@ local custom_attach = function(client, bufnr)
|
||||
vim.b.diagnostics_pos = { nil, nil }
|
||||
end
|
||||
|
||||
local cursor_pos = vim.api.nvim_win_get_cursor(0)
|
||||
local cursor_pos = api.nvim_win_get_cursor(0)
|
||||
if (cursor_pos[1] ~= vim.b.diagnostics_pos[1] or cursor_pos[2] ~= vim.b.diagnostics_pos[2]) and
|
||||
#vim.diagnostic.get() > 0
|
||||
then
|
||||
vim.diagnostic.open_float(nil, opts)
|
||||
vim.diagnostic.open_float(nil, float_opts)
|
||||
end
|
||||
|
||||
vim.b.diagnostics_pos = cursor_pos
|
||||
@ -148,36 +148,27 @@ if utils.executable('bash-language-server') then
|
||||
})
|
||||
end
|
||||
|
||||
local sumneko_binary_path = fn.exepath("lua-language-server")
|
||||
if vim.g.is_mac or vim.g.is_linux and sumneko_binary_path ~= "" then
|
||||
local sumneko_root_path = fn.fnamemodify(sumneko_binary_path, ":h:h:h")
|
||||
|
||||
local runtime_path = vim.split(package.path, ";")
|
||||
table.insert(runtime_path, "lua/?.lua")
|
||||
table.insert(runtime_path, "lua/?/init.lua")
|
||||
|
||||
if utils.executable("lua-language-server") then
|
||||
-- settings for lua-language-server can be found on https://github.com/sumneko/lua-language-server/wiki/Settings .
|
||||
lspconfig.sumneko_lua.setup({
|
||||
on_attach = custom_attach,
|
||||
cmd = { sumneko_binary_path, "-E", sumneko_root_path .. "/main.lua" },
|
||||
settings = {
|
||||
Lua = {
|
||||
runtime = {
|
||||
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
|
||||
version = "LuaJIT",
|
||||
-- Setup your lua path
|
||||
path = runtime_path,
|
||||
},
|
||||
diagnostics = {
|
||||
-- Get the language server to recognize the `vim` global
|
||||
globals = { "vim" },
|
||||
},
|
||||
workspace = {
|
||||
-- Make the server aware of Neovim runtime files
|
||||
library = api.nvim_get_runtime_file("", true),
|
||||
},
|
||||
-- Do not send telemetry data containing a randomized but unique identifier
|
||||
telemetry = {
|
||||
enable = false,
|
||||
-- Make the server aware of Neovim runtime files,
|
||||
-- see also https://github.com/sumneko/lua-language-server/wiki/Libraries#link-to-workspace .
|
||||
-- Lua-dev.nvim also has similar settings for sumneko lua, https://github.com/folke/lua-dev.nvim/blob/main/lua/lua-dev/sumneko.lua .
|
||||
library = { fn.stdpath('data') .. "/site/pack/packer/opt/emmylua-nvim" },
|
||||
maxPreload = 2000,
|
||||
preloadFileSize = 50000,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
@ -355,6 +355,8 @@ packer.startup({
|
||||
}
|
||||
|
||||
use { 'ii14/emmylua-nvim', ft = 'lua' }
|
||||
|
||||
use { 'j-hui/fidget.nvim', after = 'nvim-lspconfig', config = [[require('config.fidget-nvim')]]}
|
||||
end,
|
||||
config = {
|
||||
max_jobs = 16,
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
local fn = vim.fn
|
||||
|
||||
-- inspect something
|
||||
function inspect(item)
|
||||
function _G.inspect(item)
|
||||
vim.pretty_print(item)
|
||||
end
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user