simplify repo structure
This commit is contained in:
85
working_machine/vimrc
Normal file
85
working_machine/vimrc
Normal file
@ -0,0 +1,85 @@
|
||||
" install vim-plug
|
||||
let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
|
||||
if empty(glob(data_dir . '/autoload/plug.vim'))
|
||||
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
|
||||
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
|
||||
endif
|
||||
|
||||
" setup plugins
|
||||
call plug#begin()
|
||||
Plug 'preservim/nerdtree'
|
||||
Plug 'ryanoasis/vim-devicons'
|
||||
Plug 'vim-airline/vim-airline'
|
||||
Plug 'vim-airline/vim-airline-themes'
|
||||
Plug 'prabirshrestha/vim-lsp'
|
||||
Plug 'mattn/vim-lsp-settings'
|
||||
Plug 'prabirshrestha/asyncomplete.vim'
|
||||
Plug 'prabirshrestha/asyncomplete-lsp.vim'
|
||||
call plug#end()
|
||||
|
||||
" general settings
|
||||
syntax on
|
||||
set tabstop=4
|
||||
set shiftwidth=4
|
||||
set expandtab
|
||||
set number relativenumber
|
||||
|
||||
" required for vim-devicons to work properly
|
||||
set encoding=UTF-8
|
||||
|
||||
" vim-airline settings
|
||||
let g:airline_theme='papercolor'
|
||||
|
||||
" NERDTree settings
|
||||
let g:NERDTreeShowHidden=1
|
||||
nnoremap <C-t> :NERDTreeToggle<CR>
|
||||
|
||||
" set up vim-lsp
|
||||
let g:lsp_diagnostics_echo_cursor = 1
|
||||
|
||||
" set up vim-lsp-settings
|
||||
let g:lsp_settings= {
|
||||
\ 'clangd': {
|
||||
\ 'cmd': ['/opt/homebrew/Cellar/llvm/19.1.6/bin/clangd'],
|
||||
\ }
|
||||
\}
|
||||
|
||||
" set up autocomplete tabing
|
||||
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
|
||||
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
|
||||
inoremap <expr> <cr> pumvisible() ? asyncomplete#close_popup() : "\<cr>"
|
||||
|
||||
" set up automatic braces
|
||||
inoremap { {<CR>}<Esc>ko
|
||||
inoremap ( ()<Esc>i
|
||||
inoremap [ []<Esc>i
|
||||
inoremap " ""<Esc>i
|
||||
|
||||
" set up bracketed paste
|
||||
if !has('gui_running') && &term =~ '^\%(screen\|tmux\)'
|
||||
" Better mouse support, see :help 'ttymouse'
|
||||
set ttymouse=sgr
|
||||
|
||||
" Enable true colors, see :help xterm-true-color
|
||||
let &termguicolors = v:true
|
||||
let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
|
||||
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
|
||||
|
||||
" Enable bracketed paste mode, see :help xterm-bracketed-paste
|
||||
let &t_BE = "\<Esc>[?2004h"
|
||||
let &t_BD = "\<Esc>[?2004l"
|
||||
let &t_PS = "\<Esc>[200~"
|
||||
let &t_PE = "\<Esc>[201~"
|
||||
|
||||
" Enable focus event tracking, see :help xterm-focus-event
|
||||
let &t_fe = "\<Esc>[?1004h"
|
||||
let &t_fd = "\<Esc>[?1004l"
|
||||
execute "set <FocusGained>=\<Esc>[I"
|
||||
execute "set <FocusLost>=\<Esc>[O"
|
||||
|
||||
" Enable modified arrow keys, see :help arrow_modifiers
|
||||
execute "silent! set <xUp>=\<Esc>[@;*A"
|
||||
execute "silent! set <xDown>=\<Esc>[@;*B"
|
||||
execute "silent! set <xRight>=\<Esc>[@;*C"
|
||||
execute "silent! set <xLeft>=\<Esc>[@;*D"
|
||||
endif
|
||||
Reference in New Issue
Block a user