From d47dd5aa3882aea1a8eff4fb9faa4881274559dc Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Tue, 17 Jan 2023 12:45:46 +0100 Subject: Unify things and rename things --- vim/vimrc | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 vim/vimrc (limited to 'vim') diff --git a/vim/vimrc b/vim/vimrc new file mode 100644 index 0000000..a5f8092 --- /dev/null +++ b/vim/vimrc @@ -0,0 +1,107 @@ +" ============== KEY MAPPINGS + +let mapleader="," + +" Tab modes. +map m :set expandtab ts=2 sw=2 sts=2 +map t :set noexpandtab ts=4 sw=4 sts=4 +map T :set expandtab ts=4 sw=4 sts=4 + +" Folds: +" map f :set fen fdn=3 fdm=indent fml=1 fdc=3 + +map ; :FZF + +" H-L for next-prev buffer +nnoremap l :bnext +nnoremap k :bprev + + + +" Append modeline after last line in buffer. +" Use substitute() instead of printf() to handle '%%s' modeline in LaTeX +" files. +function! AppendModeline() + let l:modeline = printf(" vim: set sts=%d ts=%d sw=%d tw=%d %set :", + \ &softtabstop, &tabstop, &shiftwidth, &textwidth, &expandtab ? '' : 'no') + let l:modeline = substitute(&commentstring, "%s", l:modeline, "") + call append(line("$"), l:modeline) +endfunction +nnoremap ml :call AppendModeline() + + +" =================== OPTIONS + +" colorscheme slate + +filetype plugin indent on +set autoindent +set ts=4 sw=4 + +" Controls +set mouse=a +set nostartofline +set wildmode=list:longest + +" Display +highlight SpellBad ctermfg=red ctermbg=none +set bg=dark +set hlsearch +set incsearch +syntax on +set lazyredraw +set number +set relativenumber +set showcmd +set shortmess=a +set display+=lastline + +" indentation for long line wraps +set wrap +set linebreak +set breakindent +let &showbreak = '> ' + +" set cursorline +" hi CursorLine cterm=bold ctermbg=0 +" hi Folded ctermfg=2 ctermbg=0 +" hi FoldColumn ctermfg=2 ctermbg=0 + +let g:sclangTerm = "urxvt -e" + +let NERDTreeIgnore=['\.o$', '\.cmo$', '\.cmx$', '\.cmi$', '\.lib$', '\.pyc$', '^__pycache__$'] + +" set completeopt=menuone,menu,longest,preview + +" set undofile +set directory=~/.vim/swp +set backupdir=~/.vim/backup +" set undodir=~/.vim/undo + +" =========== FILE TYPE SPECIFIC + +au BufRead,BufNewFile *.make set filetype=make +au BufRead,BufNewFile *.md set filetype=markdown +au BufRead,BufNewFile *.lus set filetype=lustre +au BufRead,BufNewFile *.scade set filetype=scade + +au FileType make setl noexpandtab +au FileType python setl sw=4 sts=4 et +au FileType html setl sw=2 sts=2 et +au FileType htmldjango setl sw=2 sts=2 et +au FileType json setl sw=2 sts=2 et +au FileType javascript setl sw=2 sts=2 et +au FileType yaml setl sw=2 sts=2 et +au FileType css setl sw=4 sts=4 et +au FileType lua setl ts=4 sw=4 noet +au FileType elixir setl sw=2 sts=2 et +au FileType nix setl sw=2 sts=2 et + +autocmd FileType tex setlocal spell spelllang=en + +" Packs + +" packloadall +" silent! helptags ALL + + -- cgit v1.2.3