Updates to .vimrc from usage in Arch.

This commit is contained in:
Jonathan Bernard 2024-01-10 08:20:32 -06:00
parent d951ae3a4e
commit 5ede1870f1

64
.vimrc
View File

@ -1,4 +1,4 @@
execute pathogen#infect() "execute pathogen#infect()
set autochdir set autochdir
set autoindent set autoindent
set expandtab set expandtab
@ -8,21 +8,30 @@ set number
set ruler set ruler
set shiftwidth=2 set shiftwidth=2
set tabstop=2 set tabstop=2
set softtabstop=0
set textwidth=79 set textwidth=79
set signcolumn=yes
set cursorline set cursorline
syntax enable syntax enable
packadd matchit
filetype plugin on filetype plugin on
filetype indent on filetype indent on
let mapleader=" " let mapleader=" "
autocmd BufRead,BufNewFile *.md setlocal filetype=markdown let g:markdown_recommended_style=0
autocmd BufRead,BufNewFile *.md setlocal filetype=markdown fo-=l fo+=ro
autocmd BufRead,BufNewFile *.pco setlocal filetype=chordpro
autocmd BufRead,BufNewFile *.yaml setlocal fo=croqt
autocmd BufRead,BufNewFile *.nim setlocal fo=croqt
autocmd BufRead,BufNewFile *.ts setlocal fo=croqt
" Set/load the view when switching buffers. Used to use to preserve folding. " Set/load the view when switching buffers. Used to use to preserve folding.
" Stopped because weirder things were happening. " Stopped because weirder things were happening.
"autocmd BufEnter *.* silent loadview " autocmd BufEnter *.* silent loadview
"autocmd BufLeave *.* mkview! " autocmd BufLeave *.* mkview!
autocmd BufRead *.java set foldnestmax=2 autocmd BufRead *.java set foldnestmax=2
autocmd BufRead *.java set foldmethod=syntax autocmd BufRead *.java set foldmethod=syntax
@ -42,15 +51,39 @@ vnoremap <silent> # :<C-U>
\gV:call setreg('"', old_reg, old_regtype)<CR> \gV:call setreg('"', old_reg, old_regtype)<CR>
let g:solarized_contrast="high" let g:solarized_contrast="high"
let g:ale_fixers = {
\ '*': ['remove_trailing_lines', 'trim_whitespace'],
\ 'javascript': ['deno', 'eslint'],
\ 'typescript': ['deno', 'eslint', 'prettier'],
\ 'vue': ['prettier'],
\}
" Disable linters on markdown. I personally don't find any of these useful
" enough to includ in my general authorship. However, ALE performs the check
" for the presence of the executables every time vim enters normal mode. This
" can introduce a noticeable (>1s) lag when running in balanced power mode. So
" I manually disable all of them.
let g:ale_linters = {
\ 'markdown': [],
\ 'html': ['HTMLHint', 'proselint', 'write-good'],
\ 'rst': [],
\ 'python': ['pylint'],
\ 'typescript': ['deno', 'eslint'],
\}
" default (as of time of writing) was:
" \ 'markdown': ['alex', 'cspell', 'languagetool', 'markdownlint', 'mdl', 'proselint', 'redpen', 'remark_lint', 'textlint', 'vale', 'writegood'],
",
let g:ale_fix_on_save = 1
"let g:ale_linters_explicit = 1
let g:ctrlp_max_files = 0 let g:ctrlp_max_files = 0
let g:ctrlp_custom_ignore = { let g:ctrlp_custom_ignore = {
\ 'dir': '\v\.git$|\.hg$|\.svn$|\.worktrees$|build$|target$|node_modules$|nimcache$|dist$', \ 'dir': '\v\.git$|\.hg$|\.svn$|\.worktrees$|build$|target$|node_modules$|nimcache$|dist$',
\ 'file': '\v\.(class|exe|so|dll|sw.)$' \ 'file': '\v\.(class|exe|so|dll|sw.)$'
\ } \ }
let g:ale_linters = { let g:ale_virtualtext_cursor = 0
\ 'html': ['HTMLHint', 'proselint', 'write-good']
\ }
let groovy_space_errors = 1 let groovy_space_errors = 1
let groovy_allow_cpp_keywords = 1 let groovy_allow_cpp_keywords = 1
@ -82,17 +115,24 @@ nmap <Leader>ws :w<CR>:silent !git add %<CR>:!git commit<CR>
nmap <Leader>b :CtrlPBuffer<CR> nmap <Leader>b :CtrlPBuffer<CR>
" Format Biblical quotations in Markdown
vmap <Leader>qb :s/\v\s+(\d+)(\s+\|$)/ **\1**\2/g<CR>
" remove trailing whitespace from all lines " remove trailing whitespace from all lines
nmap <Leader>ss :%s/\s\+$//<CR> nmap <Leader>ss :%s/\s\+$//<CR>
" check spelling
nmap <Leader>sp :!aspell -c %<CR>
" Execute the current line (stripping leading `$`s) " Execute the current line (stripping leading `$`s)
nmap <Leader>r :.w !sed s/^\\s*\\$\\s*//\|bash<CR> nmap <Leader>r :.w !sed s/^\\s*[\\$\\#]\\s*//\|bash<CR>
" Execute the current line (stripping leading `$`s) and paste the output into " Execute the current line (stripping leading `$`s) and paste the output into
" the buffer underneath. " the buffer underneath.
nmap <Leader>R yyp!!sed s/^\\s*\\$\\s*//\|bash<CR><Esc> nmap <Leader>R yyp!!sed s/^\\s*[\\$\\#]\\s*//\|bash<CR><Esc>
vmap <Leader>qb :s/\v\s+(\d+)\s+/ **\1** /g<CR> " Execute the selected text as a vim command.
vmap <Leader>e "zy@z<CR>
highlight Folded term=standout ctermfg=3 ctermbg=256 highlight Folded term=standout ctermfg=3 ctermbg=256
@ -102,5 +142,5 @@ highlight Folded term=standout ctermfg=3 ctermbg=256
" "
" Actually, just diable ALE in-line error highlighting and just rely on the " Actually, just diable ALE in-line error highlighting and just rely on the
" markers in the gutter. " markers in the gutter.
highlight clear ALEError " highlight clear ALEError
highlight link ALEError NONE " highlight link ALEError NONE