Mercurial
annotate vim-setup/.vimrc @ 93:be91a73d801a
[MrJuneJune] Updated my website.
| author | June Park <parkjune1995@gmail.com> |
|---|---|
| date | Fri, 02 Jan 2026 18:02:22 -0800 |
| parents | 983769fba767 |
| children | 76cd7afa6b8e |
| rev | line source |
|---|---|
|
43
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
1 " Line numbers |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
2 set number |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
3 set relativenumber |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
4 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
5 " Turn off error |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
6 set noerrorbells |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
7 set novisualbell |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
8 set t_vb= |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
9 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
10 " Indentation |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
11 set tabstop=2 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
12 set shiftwidth=2 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
13 set expandtab |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
14 set autoindent |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
15 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
16 " Syntax |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
17 syntax on |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
18 filetype plugin indent on |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
19 set termguicolors |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
20 let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum" |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
21 let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum" |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
22 colorscheme nightfly |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
23 " Force turn on unless it is over 1M LOC |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
24 autocmd BufReadPre * if getfsize(expand("%")) > 1000000 | syntax off | endif |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
25 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
26 " Line wrapping |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
27 set nowrap |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
28 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
29 " Search settings |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
30 set ignorecase |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
31 set smartcase |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
32 set hlsearch |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
33 set incsearch |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
34 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
35 " Cursor line |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
36 set cursorline |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
37 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
38 " Appearance |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
39 set termguicolors |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
40 set background=dark |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
41 set signcolumn=yes |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
42 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
43 " Backspace behavior |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
44 set backspace=indent,eol,start |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
45 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
46 " Clipboard |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
47 set clipboard+=unnamedplus |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
48 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
49 " Split window behavior |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
50 set splitright |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
51 set splitbelow |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
52 set splitbelow |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
53 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
54 " General Keymaps |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
55 " Map semicolon to colon in normal mode |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
56 nnoremap ; : |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
57 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
58 " Yank into clipboard |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
59 nnoremap <leader>y "+y |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
60 vnoremap <leader>y "+y |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
61 |
|
50
983769fba767
Updated so that fzf works out of the box.
June Park <me@mrjunejune.com>
parents:
43
diff
changeset
|
62 " FZF |
|
983769fba767
Updated so that fzf works out of the box.
June Park <me@mrjunejune.com>
parents:
43
diff
changeset
|
63 " Add fzf to runtimepath |
|
983769fba767
Updated so that fzf works out of the box.
June Park <me@mrjunejune.com>
parents:
43
diff
changeset
|
64 set rtp += ~/.fzf |
|
43
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
65 " <leader>ff: Fuzzy file search |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
66 nnoremap <leader>ff :Files<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
67 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
68 " <leader>fb: Fuzzy search within buffer |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
69 nnoremap <leader>fb :Buffers<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
70 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
71 " <leader>ft: ctag search |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
72 nnoremap <leader>ft :Tags<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
73 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
74 " <leader>fs: Ripgrep search for word (normal mode) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
75 nnoremap <leader>fs :RG<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
76 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
77 " <leader>fs: Ripgrep search for selected text (visual mode) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
78 vnoremap <leader>fs :<C-u>execute 'Rg ' . getreg('"')<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
79 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
80 " Open man in vim |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
81 noremap <c-k> :h <cword><cr> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
82 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
83 " vim wiki |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
84 " Set the directory where your wiki pages will be stored |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
85 let g:wiki_root = expand('~/wiki/') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
86 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
87 " Set wiki syntax and file extensions |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
88 let g:wiki_filetypes = ['md', 'wiki'] |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
89 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
90 " Enable global mappings (optional) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
91 let g:wiki_global_mappings = 1 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
92 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
93 " Enable links to markdown files |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
94 let g:wiki_link_extension = '.md' |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
95 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
96 " Turn on man vim mode |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
97 runtime! ftplugin/man.vim |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
98 " Keyword |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
99 set keywordprg=:Man |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
100 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
101 " Setup LSP + completion (I will turn on and off depending on sitautions) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
102 lua << EOF |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
103 vim.lsp.set_log_level('OFF') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
104 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
105 local cmp = require('cmp') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
106 local luasnip = require('luasnip') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
107 local lspconfig = require('lspconfig') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
108 local util = require('lspconfig.util') |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
109 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
110 -- ────────────────────────────── |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
111 -- nvim-cmp setup (unchanged) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
112 -- ────────────────────────────── |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
113 cmp.setup({ |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
114 snippet = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
115 expand = function(args) luasnip.lsp_expand(args.body) end, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
116 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
117 mapping = cmp.mapping.preset.insert({ |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
118 ['<C-Space>'] = cmp.mapping.complete(), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
119 ['<CR>'] = cmp.mapping.confirm({ select = true }), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
120 ['<C-J>'] = cmp.mapping.select_next_item(), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
121 ['<C-K>'] = cmp.mapping.select_prev_item(), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
122 }), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
123 sources = cmp.config.sources({ |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
124 { name = 'nvim_lsp', group_index = 1 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
125 { name = 'luasnip', group_index = 1 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
126 { name = 'buffer', group_index = 2 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
127 }) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
128 }) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
129 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
130 local capabilities = require('cmp_nvim_lsp').default_capabilities() |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
131 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
132 -- ts_ls |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
133 lspconfig.ts_ls.setup({ |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
134 capabilities = capabilities, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
135 root_dir = require('lspconfig.util').root_pattern('tsconfig.json'), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
136 init_options = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
137 maxTsServerMemory = 8192, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
138 preferences = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
139 includePackageJsonAutoImports = "auto", |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
140 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
141 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
142 filetypes = { "typescript", "typescriptreact", "javascript", "javascriptreact" }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
143 settings = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
144 typescript = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
145 inlayHints = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
146 includeInlayParameterNameHints = "all", |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
147 includeInlayParameterNameHintsWhenArgumentMatchesName = false, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
148 includeInlayFunctionParameterTypeHints = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
149 includeInlayVariableTypeHints = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
150 includeInlayPropertyDeclarationTypeHints = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
151 includeInlayFunctionLikeReturnTypeHints = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
152 includeInlayEnumMemberValueHints = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
153 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
154 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
155 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
156 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
157 -- Force tsserver to reload the tsconfig every time (fixes 95% of path alias issues) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
158 on_attach = function(client, bufnr) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
159 -- Optional: show when LSP attaches |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
160 print("ts_ls attached to " .. vim.fn.getcwd()) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
161 end, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
162 }) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
163 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
164 -- Python |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
165 lspconfig.basedpyright.setup({ |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
166 capabilities = capabilities, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
167 on_attach = function(client, bufnr) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
168 -- Optional: notify when Python LSP attaches |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
169 print("basedpyright attached to " .. vim.fn.getcwd()) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
170 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
171 -- Common LSP keymaps (you can put them once at the bottom instead if you prefer) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
172 -- local bufopts = { noremap = true, silent = true, buffer = bufnr } |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
173 -- vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
174 -- vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
175 -- vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
176 -- vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
177 -- vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
178 -- vim.keymap.set('n', '\\d', vim.diagnostic.open_float, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
179 -- vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
180 -- vim.keymap.set('n', ']d', vim.diagnostic.goto_next, bufopts) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
181 end, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
182 settings = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
183 basedpyright = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
184 analysis = { |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
185 autoSearchPaths = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
186 useLibraryCodeForTypes = true, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
187 diagnosticMode = "workspace", -- or "openFiles" if you have huge monorepos |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
188 typeCheckingMode = "standard", -- "strict" if you want maximum strictness |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
189 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
190 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
191 }, |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
192 root_dir = util.root_pattern( |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
193 "venv", -- This is what I mostly use |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
194 "pyproject.toml", -- belows are whatever they use I guess |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
195 "setup.py", |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
196 "setup.cfg", |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
197 "requirements.txt", |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
198 ".git" |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
199 ), |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
200 }) |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
201 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
202 EOF |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
203 |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
204 " Optional key mappings for LSP |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
205 nnoremap <silent> gd <cmd>lua vim.lsp.buf.definition()<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
206 nnoremap <silent> K <cmd>lua vim.lsp.buf.hover()<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
207 nnoremap <silent> gr <cmd>lua vim.lsp.buf.references()<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
208 nnoremap <silent> \d <cmd>lua vim.diagnostic.open_float(nil, { border = "rounded" })<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
209 nnoremap <silent> [d <cmd>lua vim.diagnostic.goto_prev()<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
210 nnoremap <silent> ]d <cmd>lua vim.diagnostic.goto_next()<CR> |
|
5e6a5d3c6868
[Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff
changeset
|
211 nnoremap <silent> \ca <cmd>lua vim.lsp.buf.code_action()<CR> |