annotate vim-setup/.vimrc @ 191:a06710325c30 hg-web

[HgWeb] Fully working copy.
author MrJuneJune <me@mrjunejune.com>
date Sat, 24 Jan 2026 21:51:51 -0800
parents 790930d9bb90
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
62 command! -bang -nargs=* RG
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
63 \ call fzf#vim#grep(
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
64 \ 'rg --column --line-number --no-heading --color=always --smart-case --hidden '.shellescape(<q-args>),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
65 \ 1,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
66 \ fzf#vim#with_preview(),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
67 \ <bang>0)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
68
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
69 " <leader>ff: Fuzzy file search
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
70 nnoremap <leader>ff :Files<CR>
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
71
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
72 " <leader>fb: Fuzzy search within buffer
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
73 nnoremap <leader>fb :Buffers<CR>
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
74
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
75 " <leader>ft: ctag search
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
76 nnoremap <leader>ft :Tags<CR>
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
77
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
78 " <leader>fs: Ripgrep search for word (normal mode)
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
79 nnoremap <leader>fs :RG<CR>
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
80
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
81 " <leader>fs: Open Ripgrep search prompt
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
82 nnoremap <leader>fs :RG<CR>
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
83
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
84 function! RipgrepCursor(query)
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
85 call fzf#vim#grep(
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
86 \ 'rg --column --line-number --no-heading --color=always --smart-case -- '.shellescape(a:query),
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
87 \ 1,
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
88 \ fzf#vim#with_preview(),
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
89 \ 0)
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
90 endfunction
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
91
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
92 " <leader>gr: Search word under cursor (Normal)
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
93 nnoremap <silent> <leader>gr :call RipgrepCursor(expand('<cword>'))<CR>
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
94
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
95 " <leader>gr: Search selection (Visual)
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
96 vnoremap <silent> <leader>gr y:call RipgrepCursor(@@)<CR>
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
97
153
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
98 " ctag open in preview
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
99 nnoremap <leader>gd <C-w>}
153
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
100
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
101 " ctag open
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
102 nnoremap <leader>gD <C-]>
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
103
153
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
104 " No highlight
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
105 nnoremap <leader>nh :noh<CR>
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
106
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
107 " Search Files
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
108 inoremap <C-f> <C-x>
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
109
790930d9bb90 [PostDog] Adding websocket to be more usable.
June Park <parkjune1995@gmail.com>
parents: 150
diff changeset
110
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
111 " Open man in vim
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
112 noremap <c-k> :h <cword><cr>
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
113
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
114 " vim wiki
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
115 " 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
116 let g:wiki_root = expand('~/wiki/')
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
117
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
118 " Set wiki syntax and file extensions
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
119 let g:wiki_filetypes = ['md', 'wiki']
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
120
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
121 " Enable global mappings (optional)
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
122 let g:wiki_global_mappings = 1
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
123
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
124 " Enable links to markdown files
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
125 let g:wiki_link_extension = '.md'
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
126
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
127 " Turn on man vim mode
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
128 runtime! ftplugin/man.vim
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
129
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
130 " Keyword
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
131 set keywordprg=:Man
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
132
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
133 " FZF enbale vim
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
134 set rtp+=/opt/homebrew/opt/fzf
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
135
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
136 " For some reason it include ( or ) when I use it in here
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
137 set iskeyword-=( iskeyword-=)
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
138
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
139 " ============================================================================
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
140 " Markdown Clipboard Image Paste
150
c37490913530 [Config] Updated .vimrc files and made command for ctags movements.
June Park <parkjune1995@gmail.com>
parents: 148
diff changeset
141 " ============================================================================
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
142 " Configuration: Set your API endpoint URL (leave empty to save locally)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
143 let g:clipboard_image_upload_url = ''
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
144
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
145 " Optional: Custom curl options (e.g., for auth headers)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
146 " let g:clipboard_image_curl_opts = '-H "Authorization: Bearer YOUR_TOKEN"'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
147 let g:clipboard_image_curl_opts = ''
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
148
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
149 function! PasteClipboardImage()
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
150 if &filetype != 'markdown'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
151 echo "Clipboard image paste only works in markdown files"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
152 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
153 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
154
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
155 if !executable('pngpaste')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
156 echo "Error: pngpaste not found. Install with: brew install pngpaste"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
157 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
158 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
159
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
160 let l:tmpfile = tempname() . '.png'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
161
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
162 let l:result = system('pngpaste ' . shellescape(l:tmpfile) . ' 2>&1')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
163
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
164 if v:shell_error != 0
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
165 echo "No image in clipboard or pngpaste failed: " . l:result
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
166 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
167 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
168
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
169 if !filereadable(l:tmpfile)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
170 echo "Failed to save clipboard image"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
171 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
172 endif
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
173
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
174 if g:clipboard_image_upload_url == ''
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
175 let l:dir = expand('%:p:h')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
176 let l:random = localtime() . '_' . rand()
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
177 let l:filename = 'image_' . l:random . '.png'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
178 let l:filepath = l:dir . '/' . l:filename
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
179
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
180 call rename(l:tmpfile, l:filepath)
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
181
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
182 if !filereadable(l:filepath)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
183 echo "Failed to save image locally"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
184 call delete(l:tmpfile)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
185 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
186 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
187
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
188 let l:url = l:filename
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
189 echo "Image saved locally: " . l:filename
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
190 else
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
191 echo "Uploading image..."
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
192
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
193 let l:curl_cmd = 'curl -s -X POST'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
194 let l:curl_cmd .= ' -H "Content-Type: image/png"'
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
195 let l:curl_cmd .= ' --data-binary @' . shellescape(l:tmpfile)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
196 if g:clipboard_image_curl_opts != ''
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
197 let l:curl_cmd .= ' ' . g:clipboard_image_curl_opts
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
198 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
199 let l:curl_cmd .= ' ' . shellescape(g:clipboard_image_upload_url)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
200
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
201 let l:url = system(l:curl_cmd)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
202
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
203 call delete(l:tmpfile)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
204
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
205 if v:shell_error != 0
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
206 echo "Upload failed: " . l:url
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
207 return
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
208 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
209
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
210 let l:url = substitute(l:url, '^\s*\(.\{-}\)\s*$', '\1', '')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
211 echo "Image uploaded!"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
212 endif
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
213
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
214 " Insert markdown image syntax at cursor
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
215 execute "normal! a" . l:markdown_img . "\<Esc>"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
216 endfunction
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
217
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
218 autocmd FileType markdown nnoremap <buffer> <leader>p :call PasteClipboardImage()<CR>
43
5e6a5d3c6868 [Personal] Moving my vim-set up config here.
MrJuneJune <me@mrjunejune.com>
parents:
diff changeset
219
148
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
220 " Setup LSP + completion (I will turn on and off depending on sitautions)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
221 " lua << EOF
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
222 " vim.lsp.set_log_level('OFF')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
223 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
224 " local cmp = require('cmp')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
225 " local luasnip = require('luasnip')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
226 " local lspconfig = require('lspconfig')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
227 " local util = require('lspconfig.util')
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
228 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
229 " -- ──────────────────────────────
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
230 " -- nvim-cmp setup (unchanged)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
231 " -- ──────────────────────────────
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
232 " cmp.setup({
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
233 " snippet = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
234 " expand = function(args) luasnip.lsp_expand(args.body) end,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
235 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
236 " mapping = cmp.mapping.preset.insert({
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
237 " ['<C-Space>'] = cmp.mapping.complete(),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
238 " ['<CR>'] = cmp.mapping.confirm({ select = true }),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
239 " ['<C-J>'] = cmp.mapping.select_next_item(),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
240 " ['<C-K>'] = cmp.mapping.select_prev_item(),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
241 " }),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
242 " sources = cmp.config.sources({
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
243 " { name = 'nvim_lsp', group_index = 1 },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
244 " { name = 'luasnip', group_index = 1 },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
245 " { name = 'buffer', group_index = 2 },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
246 " })
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
247 " })
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
248 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
249 " local capabilities = require('cmp_nvim_lsp').default_capabilities()
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
250 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
251 " -- ts_ls
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
252 " lspconfig.ts_ls.setup({
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
253 " capabilities = capabilities,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
254 " root_dir = require('lspconfig.util').root_pattern('tsconfig.json'),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
255 " init_options = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
256 " maxTsServerMemory = 8192,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
257 " preferences = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
258 " includePackageJsonAutoImports = "auto",
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
259 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
260 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
261 " filetypes = { "typescript", "typescriptreact", "javascript", "javascriptreact" },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
262 " settings = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
263 " typescript = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
264 " inlayHints = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
265 " includeInlayParameterNameHints = "all",
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
266 " includeInlayParameterNameHintsWhenArgumentMatchesName = false,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
267 " includeInlayFunctionParameterTypeHints = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
268 " includeInlayVariableTypeHints = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
269 " includeInlayPropertyDeclarationTypeHints = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
270 " includeInlayFunctionLikeReturnTypeHints = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
271 " includeInlayEnumMemberValueHints = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
272 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
273 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
274 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
275 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
276 " -- Force tsserver to reload the tsconfig every time (fixes 95% of path alias issues)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
277 " on_attach = function(client, bufnr)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
278 " -- Optional: show when LSP attaches
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
279 " print("ts_ls attached to " .. vim.fn.getcwd())
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
280 " end,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
281 " })
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
282 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
283 " -- Python
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
284 " lspconfig.basedpyright.setup({
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
285 " capabilities = capabilities,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
286 " on_attach = function(client, bufnr)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
287 " -- Optional: notify when Python LSP attaches
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
288 " print("basedpyright attached to " .. vim.fn.getcwd())
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
289 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
290 " -- Common LSP keymaps (you can put them once at the bottom instead if you prefer)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
291 " -- local bufopts = { noremap = true, silent = true, buffer = bufnr }
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
292 " -- vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
293 " -- vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
294 " -- vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
295 " -- vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
296 " -- vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
297 " -- vim.keymap.set('n', '\\d', vim.diagnostic.open_float, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
298 " -- vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
299 " -- vim.keymap.set('n', ']d', vim.diagnostic.goto_next, bufopts)
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
300 " end,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
301 " settings = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
302 " basedpyright = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
303 " analysis = {
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
304 " autoSearchPaths = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
305 " useLibraryCodeForTypes = true,
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
306 " diagnosticMode = "workspace", -- or "openFiles" if you have huge monorepos
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
307 " typeCheckingMode = "standard", -- "strict" if you want maximum strictness
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
308 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
309 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
310 " },
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
311 " root_dir = util.root_pattern(
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
312 " "venv", -- This is what I mostly use
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
313 " "pyproject.toml", -- belows are whatever they use I guess
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
314 " "setup.py",
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
315 " "setup.cfg",
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
316 " "requirements.txt",
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
317 " ".git"
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
318 " ),
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
319 " })
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
320 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
321 " EOF
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
322 "
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
323 " " Optional key mappings for LSP
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
324 " nnoremap <silent> gd <cmd>lua vim.lsp.buf.definition()<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
325 " nnoremap <silent> K <cmd>lua vim.lsp.buf.hover()<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
326 " nnoremap <silent> gr <cmd>lua vim.lsp.buf.references()<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
327 " nnoremap <silent> \d <cmd>lua vim.diagnostic.open_float(nil, { border = "rounded" })<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
328 " nnoremap <silent> [d <cmd>lua vim.diagnostic.goto_prev()<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
329 " nnoremap <silent> ]d <cmd>lua vim.diagnostic.goto_next()<CR>
76cd7afa6b8e [Configs] Updated configs and finally added ctags.
June Park <parkjune1995@gmail.com>
parents: 50
diff changeset
330 " nnoremap <silent> \ca <cmd>lua vim.lsp.buf.code_action()<CR>