aboutsummaryrefslogtreecommitdiff
path: root/config/vim/vimrc
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2021-02-25 15:17:37 +0100
committerCharles Cabergs <me@cacharle.xyz>2021-02-25 15:26:09 +0100
commitd59a26f882017a62b4119a7649ca3d4b43f65725 (patch)
tree3ec808804ef398651a9bcc9a021f16c5d30b7b88 /config/vim/vimrc
parentbb72eb10b6c7148ad3107c50a4232dea080d1468 (diff)
downloaddotfiles-d59a26f882017a62b4119a7649ca3d4b43f65725.tar.gz
dotfiles-d59a26f882017a62b4119a7649ca3d4b43f65725.tar.bz2
dotfiles-d59a26f882017a62b4119a7649ca3d4b43f65725.zip
Added vint and flake8 to lint vim and qutebrowser conf, Added shellcheck to zsh files, Fixing all linting errors
Diffstat (limited to 'config/vim/vimrc')
-rw-r--r--config/vim/vimrc62
1 files changed, 32 insertions, 30 deletions
diff --git a/config/vim/vimrc b/config/vim/vimrc
index 644032f..8082ea6 100644
--- a/config/vim/vimrc
+++ b/config/vim/vimrc
@@ -1,7 +1,3 @@
-""""""""""
-" vimrc "
-""""""""""
-
" xdg {{{
set runtimepath^=$XDG_CONFIG_HOME/vim
set runtimepath+=$XDG_DATA_HOME/vim
@@ -10,8 +6,8 @@ set runtimepath+=$XDG_CONFIG_HOME/vim/after
set packpath^=$XDG_DATA_HOME/vim,$XDG_CONFIG_HOME/vim
set packpath+=$XDG_CONFIG_HOME/vim/after,$XDG_DATA_HOME/vim/after
-let g:netrw_home = $XDG_DATA_HOME . "/vim"
-call mkdir($XDG_DATA_HOME."/vim/spell", 'p')
+let g:netrw_home = $XDG_DATA_HOME . '/vim'
+call mkdir($XDG_DATA_HOME . '/vim/spell', 'p')
set viewdir=$XDG_DATA_HOME/vim/view | call mkdir(&viewdir, 'p')
set backupdir=$XDG_CACHE_HOME/vim/backup | call mkdir(&backupdir, 'p')
@@ -24,6 +20,7 @@ source $XDG_CONFIG_HOME/vim/pluggins.vim " load pluggins
" common {{{
let mapleader = ' ' " set leader key to space
let maplocalleader = '-' " set file local leader key to backslash
+" vint: -ProhibitSetNoCompatible
set nocompatible " not compatible with vi
set number " line number
" set relativenumber " line number relative to cursor
@@ -38,6 +35,7 @@ set scrolloff=2 " line padding when scrolling
set textwidth=0 " when line wrap occurs
set wrapmargin=0 " disable auto line wrapping
set encoding=utf-8 " utf-8 encoding
+scriptencoding utf-8
set formatoptions-=t " do not auto break line > 89 character
filetype plugin indent on " allow to add specific rules for certain type of file
" set mouse=a " mouse scrolling (heretic)
@@ -52,7 +50,7 @@ set path+=** " recursive :find
" intuitif split opening {{{
set splitbelow
set splitright
-set fcs+=vert:│ " split separator
+set fillchars+=vert:│ " split separator
" }}}
" tab {{{
@@ -179,31 +177,28 @@ nnoremap gcf A<BS><CR>{<CR><CR>}<ESC>j
" initialise a school header file
function PutHeaderBoilerPlate()
- let l:filename = join(split(toupper(expand('%:t')), '\.'), "_")
+ let l:filename = join(split(toupper(expand('%:t')), '\.'), '_')
" echom l:filename
- call append(12, "#ifndef " . l:filename)
- call append(13, "# define " . l:filename)
- call append(15, "#endif")
+ call append(12, '#ifndef ' . l:filename)
+ call append(13, '# define ' . l:filename)
+ call append(15, '#endif')
endfunction
nnoremap gch :Stdheader<CR>:call PutHeaderBoilerPlate()<CR>
" put semicolon at the end of line
nnoremap <leader>; mqA;<ESC>`q
-" doxygen format comments
-autocmd Filetype c setlocal comments=s:/**,m:**,e:*/,s:/*,m:**,e:*/
-autocmd Filetype cpp setlocal comments=s:/**,m:**,e:*/,s:/*,m:**,e:*/
" }}}
" cpp {{{
" Put Coplien Form boilerplate class
function PutCoplienFormFunc(name)
- let l:default_constructor = a:name . "();\n"
- let l:copy_constructor = a:name . "(const " . a:name . "& other);\n"
- let l:copy_operator = a:name . "& operator=(const " . a:name . "& other);\n"
- let l:destructor = "~" . a:name . "();\n"
+ let l:default_constructor = a:name . '();\n'
+ let l:copy_constructor = a:name . '(const ' . a:name . '& other);\n'
+ let l:copy_operator = a:name . '& operator=(const ' . a:name . '& other);\n'
+ let l:destructor = '~' . a:name . '();\n'
- execute "normal iclass " . a:name . "\n{\npublic:\n" . l:default_constructor . l:copy_constructor . l:copy_operator . l:destructor . "\nprivate:\n};\n"
- execute "normal <2{"
+ execute 'normal iclass ' . a:name . '\n{\npublic:\n' . l:default_constructor . l:copy_constructor . l:copy_operator . l:destructor . '\nprivate:\n};\n'
+ execute 'normal <2{'
endfunction
" Put Coplien Form boilerplate according to filename
command! PutCoplienFormFile call PutCoplienFormFunc(split(expand('%:t'), '\.')[0])
@@ -244,25 +239,32 @@ command! CountScopeLines call CountScopeLines()
nnoremap <leader>m :make all <CR>
" }}}
+augroup vimrc
+ autocmd!
+augroup END
+
" hook {{{
" remove trailing white space on save
-autocmd BufWritePre * %s/\s\+$//e
+autocmd vimrc BufWritePre * %s/\s\+$//e
" dirty hack to disable this feature on markdown (autocmd! wouldn't work)
-autocmd BufReadPre *.md autocmd! BufWritePre
+autocmd vimrc BufReadPre *.md autocmd! BufWritePre
" }}}
" filetype {{{
" real tab in c file for school projects
let g:c_syntax_for_h = 1 " filetype=c in header files instead of filetype=cpp
-autocmd Filetype c setlocal noexpandtab
-" std::cout << ... << std::endl; shortcut
-autocmd Filetype cpp nnoremap <leader>cout istd::cout << << std::endl;<ESC>2F<hi
-" vim fold method to marker
-autocmd Filetype vim setlocal foldmethod=marker
-
-autocmd FileType haskell set formatprg=stylish-haskell
-autocmd FileType lisp,html,css,htmldjango setlocal shiftwidth=2
+augroup vimrc_files
+ autocmd!
+ " school c
+ autocmd Filetype c setlocal noexpandtab
+ autocmd Filetype c setlocal comments=s:/**,m:**,e:*/,s:/*,m:**,e:*/
+ " std::cout << ... << std::endl; shortcut
+ autocmd Filetype cpp nnoremap <leader>cout istd::cout << << std::endl;<ESC>2F<hi
+ autocmd Filetype vim setlocal foldmethod=marker " vim fold method to marker
+ autocmd FileType haskell set formatprg=stylish-haskell
+ autocmd FileType lisp,html,css,htmldjango setlocal shiftwidth=2
+augroup END
" }}}
""""""""""""