mirror of
https://github.com/jdhao/nvim-config.git
synced 2025-06-08 14:14:33 +02:00
Compare commits
6 Commits
3bb8b224e7
...
eaddee0c5c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eaddee0c5c | ||
|
|
0582f26abe | ||
|
|
e209ef686a | ||
|
|
8b3610ed3d | ||
|
|
bde6083f22 | ||
|
|
c1f139108a |
@ -112,6 +112,7 @@ if [[ -z "$(command -v node)" ]]; then
|
||||
fi
|
||||
else
|
||||
echo "Node.js is already installed. Skip installing it."
|
||||
NODE_DIR="$(realpath $(dirname $(which node))/..)"
|
||||
fi
|
||||
|
||||
# Install vim-language-server
|
||||
|
||||
@ -1,35 +1,34 @@
|
||||
local api = vim.api
|
||||
local keymap = vim.keymap
|
||||
|
||||
require('hlslens').setup({
|
||||
calm_down = true,
|
||||
nearest_only = true,
|
||||
local hlslens = require('hlslens')
|
||||
|
||||
hlslens.setup({
|
||||
calm_down = true,
|
||||
nearest_only = true,
|
||||
})
|
||||
|
||||
local activate_hlslens = function(direction)
|
||||
local cmd = string.format("normal! %s%szzzv", vim.v.count1, direction)
|
||||
local status, msg = pcall(vim.fn.execute, cmd)
|
||||
-- 13 is the index where real error message starts
|
||||
msg = msg:sub(13)
|
||||
local status, msg = pcall(vim.cmd, cmd)
|
||||
|
||||
if not status then
|
||||
-- 13 is the index where real error message starts
|
||||
msg = msg:sub(13)
|
||||
api.nvim_err_writeln(msg)
|
||||
return
|
||||
end
|
||||
require('hlslens').start()
|
||||
|
||||
hlslens.start()
|
||||
end
|
||||
|
||||
keymap.set('n', 'n', '',
|
||||
{
|
||||
silent = true,
|
||||
keymap.set('n', 'n', '', {
|
||||
callback = function() activate_hlslens('n') end
|
||||
})
|
||||
|
||||
keymap.set('n', 'N', '',
|
||||
{
|
||||
silent = true,
|
||||
keymap.set('n', 'N', '', {
|
||||
callback = function() activate_hlslens('N') end
|
||||
})
|
||||
|
||||
keymap.set('n', '*', "<Plug>(asterisk-z*)<Cmd>lua require('hlslens').start()<CR>", { silent = true })
|
||||
keymap.set('n', '#', "<Plug>(asterisk-z#)<Cmd>lua require('hlslens').start()<CR>", { silent = true })
|
||||
keymap.set('n', '*', "<Plug>(asterisk-z*)<Cmd>lua require('hlslens').start()<CR>")
|
||||
keymap.set('n', '#', "<Plug>(asterisk-z#)<Cmd>lua require('hlslens').start()<CR>")
|
||||
|
||||
@ -7,27 +7,33 @@ local utils = require("utils")
|
||||
|
||||
local custom_attach = function(client, bufnr)
|
||||
-- Mappings.
|
||||
local opts = { silent = true, buffer = bufnr }
|
||||
keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
||||
keymap.set("n", "<C-]>", vim.lsp.buf.definition, opts)
|
||||
keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
||||
keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, opts)
|
||||
keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts)
|
||||
keymap.set("n", "gr", vim.lsp.buf.references, opts)
|
||||
keymap.set("n", "[d", vim.diagnostic.goto_prev, opts)
|
||||
keymap.set("n", "]d", vim.diagnostic.goto_next, opts)
|
||||
keymap.set("n", "<space>q", function() vim.diagnostic.setqflist({open = true}) end, opts)
|
||||
keymap.set("n", "<space>ca", vim.lsp.buf.code_action, opts)
|
||||
keymap.set("n", "<space>wa", vim.lsp.buf.add_workspace_folder, opts)
|
||||
keymap.set("n", "<space>wr", vim.lsp.buf.remove_workspace_folder, opts)
|
||||
keymap.set("n", "<space>wl", function() inspect(vim.lsp.buf.list_workspace_folders()) end, opts)
|
||||
local map = function(mode, l, r, opts)
|
||||
opts = opts or {}
|
||||
opts.silent = true
|
||||
opts.buffer = bufnr
|
||||
keymap.set(mode, l, r, opts)
|
||||
end
|
||||
|
||||
map("n", "gd", vim.lsp.buf.definition, {desc = 'go to definition'})
|
||||
map("n", "<C-]>", vim.lsp.buf.definition)
|
||||
map("n", "K", vim.lsp.buf.hover)
|
||||
map("n", "<C-k>", vim.lsp.buf.signature_help)
|
||||
map("n", "<space>rn", vim.lsp.buf.rename, { desc = 'varialbe rename' })
|
||||
map("n", "gr", vim.lsp.buf.references, { desc = 'show references' })
|
||||
map("n", "[d", vim.diagnostic.goto_prev, { desc = 'previous diagnostic' })
|
||||
map("n", "]d", vim.diagnostic.goto_next, { desc = 'next diagnostic' })
|
||||
map("n", "<space>q", function() vim.diagnostic.setqflist({open = true}) end, { desc = 'put diagnostic to qf' })
|
||||
map("n", "<space>ca", vim.lsp.buf.code_action, { desc = 'LSP code action' })
|
||||
map("n", "<space>wa", vim.lsp.buf.add_workspace_folder, { desc = 'add workspace folder' } )
|
||||
map("n", "<space>wr", vim.lsp.buf.remove_workspace_folder, { desc = 'remove workspace folder' })
|
||||
map("n", "<space>wl", function() inspect(vim.lsp.buf.list_workspace_folders()) end, { desc = 'list workspace folder' })
|
||||
|
||||
-- Set some key bindings conditional on server capabilities
|
||||
if client.resolved_capabilities.document_formatting then
|
||||
keymap.set("n", "<space>f", vim.lsp.buf.formatting_sync, opts)
|
||||
map("n", "<space>f", vim.lsp.buf.formatting_sync, { desc = 'format code' })
|
||||
end
|
||||
if client.resolved_capabilities.document_range_formatting then
|
||||
keymap.set("x", "<space>f", vim.lsp.buf.range_formatting, opts)
|
||||
map("x", "<space>f", vim.lsp.buf.range_formatting, { desc = 'range format' })
|
||||
end
|
||||
|
||||
api.nvim_create_autocmd("CursorHold", {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user