Mercurial > dotfiles
annotate dot_config/nvim/init.lua @ 291:450e01f9d3bd
Use direxpand to expand variables into paths on tab
e.g.:
$ $FOO/bar<tab>
expands into :
$ foo_dir/bar/
author | zegervdv <zegervdv@me.com> |
---|---|
date | Tue, 20 Oct 2020 14:26:56 +0200 |
parents | 3df002e18c79 |
children | 47db34b8ed3e |
rev | line source |
---|---|
280 | 1 local lsp = require'nvim_lsp' |
2 | |
3 require "nvim-treesitter.highlight" | |
4 -- local hlmap = vim.treesitter.TSHighlighter.hl_map | |
5 | |
6 require'nvim-treesitter.configs'.setup { | |
7 highlight = { | |
8 enable = true, | |
9 }, | |
10 incremental_selection = { | |
11 enable = true, | |
12 keymaps = { | |
13 init_selection = "gnn", | |
14 node_incremental = "grn", | |
15 scope_incremental = "grc", | |
16 node_decremental = "grm", | |
17 } | |
18 }, | |
19 refactor = { | |
287
7168baf3c352
treesitter: highlight definitions/uses of the variable under the cursor
zegervdv <zegervdv@me.com>
parents:
285
diff
changeset
|
20 highlight_definitions = { enable = true }, |
280 | 21 smart_rename = { |
22 enable = true, | |
23 keymaps = { | |
24 smart_rename = "grr", | |
25 }, | |
26 }, | |
27 navigation = { | |
28 enable = true, | |
29 keymaps = { | |
30 goto_definition = "gnd", | |
31 list_definitions = "gnD", | |
32 }, | |
33 }, | |
34 }, | |
282 | 35 playground = { |
36 enable = true, | |
37 disable = {}, | |
38 updatetime = 25, | |
39 persist_queries = false | |
40 } | |
280 | 41 } |
42 | |
43 local chain_complete_list = { | |
44 default = { | |
45 default = { | |
46 {complete_items = {'lsp', 'snippet'}}, | |
47 {complete_items = {'path'}, triggered_only = {'/'}}, | |
285 | 48 {complete_items = {'ts'}}, |
281 | 49 {complete_items = {'buffer'}}, |
280 | 50 }, |
51 string = { | |
52 {complete_items = {'path'}, triggered_only = {'/'}}, | |
53 }, | |
54 comment = {}, | |
55 } | |
56 } | |
57 | |
58 local on_attach = function(client) | |
59 require'diagnostic'.on_attach({ | |
288
3df002e18c79
lsp: attempt to make diagnostics pop up
zegervdv <zegervdv@me.com>
parents:
287
diff
changeset
|
60 enable_virtual_text = 1, |
280 | 61 }) |
62 require'completion'.on_attach({ | |
63 sorting = 'alphabet', | |
64 matching_strategy_list = {'exact', 'fuzzy'}, | |
65 chain_complete_list = chain_complete_list, | |
66 }) | |
67 -- This came from https://github.com/tjdevries/config_manager/blob/master/xdg_config/nvim/lua/lsp_config.lua | |
68 local mapper = function(mode, key, result) | |
69 vim.fn.nvim_buf_set_keymap(0, mode, key, result, {noremap=true, silent=true}) | |
70 end | |
71 | |
288
3df002e18c79
lsp: attempt to make diagnostics pop up
zegervdv <zegervdv@me.com>
parents:
287
diff
changeset
|
72 vim.api.nvim_command('autocmd CursorHold <buffer> lua vim.lsp.util.show_line_diagnostics()') |
280 | 73 mapper('n', 'gd', '<cmd>lua vim.lsp.buf.declaration()<CR>') |
74 mapper('n', '<c-]>', '<cmd>lua vim.lsp.buf.definition()<CR>') | |
75 mapper('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>') | |
76 mapper('n', 'gD', '<cmd>lua vim.lsp.buf.implementation()<CR>') | |
77 mapper('n', '1gD', '<cmd>lua vim.lsp.buf.type_definition()<CR>') | |
78 mapper('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>') | |
79 mapper('n', 'g0', '<cmd>lua vim.lsp.buf.document_symbol()<CR>') | |
80 mapper('i', '<c-l>', '<cmd>lua vim.lsp.buf.signature_help()<CR>') | |
81 end | |
82 | |
83 lsp.pyls.setup{ | |
84 cmd = {"pyls"}, | |
85 on_attach = on_attach; | |
86 } |