" Pas de compatibilité a VI ! set nocompatible " PLUGNIS ###########################################################{{{ call plug#begin() if has('nvim') Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } else Plug 'Shougo/deoplete.nvim' Plug 'roxma/nvim-yarp' Plug 'roxma/vim-hug-neovim-rpc' endif Plug 'sebastianmarkow/deoplete-rust' Plug 'ElmCast/elm-vim' Plug 'cespare/vim-toml' Plug 'https://gitea.tforgione.fr/tforgione/peach.git' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'scrooloose/nerdtree' Plug 'w0rp/ale' Plug 'digitaltoad/vim-pug' Plug 'racer-rust/vim-racer' Plug 'tpope/vim-abolish' Plug 'rust-lang/rust.vim' Plug 'rust-spandex/spandex.vim' call plug#end() " Line numbers and syntaxic coloration " set nu " syntax on " Highlight bad spaces (not working...) " }}} " INDENTATION #######################################################{{{ set expandtab set tabstop=4 set shiftwidth=4 set autoindent " }}} " UI CONFIG #########################################################{{{ set number set showcmd set wildmenu set lazyredraw set encoding=utf8 set clipboard=unnamedplus set updatecount=50 set mouse=a " set ttymouse=sgr " Espaces insécables grrrr set list set listchars=tab:  ,trail:·,extends:>,precedes:<,nbsp:¬ " Remove trailing spaces autocmd BufWritePre * :%s/\s\+$//e " Compile on F12 if executable('mars') nnoremap :wa \| !mars inoremap :wa \|!mars vnoremap :wa \|!mars elseif executable('make') nnoremap :wa \| !make inoremap :wa \|!make vnoremap :wa \|!make endif " Escape on F1 map imap " vim airline config set laststatus=2 let g:airline_powerline_fonts = 1 let g:airline#extensions#branch#format = 1 let g:airline_theme='dark' set t_Co=256 " Set textwidth for latex " autocmd FileType tex set textwidth=79 " }}} " COLOR #############################################################{{{ set background=dark syntax enable try colorscheme peach catch endtry highlight BadWhitespace ctermbg=red guibg=red match BadWhitespace / \| \+\t/ " }}} " SEARCHING #########################################################{{{ set title set showmatch set hlsearch set noincsearch " }}} " NERDTREE ##########################################################{{{ let NERDTreeIgnore = ['\.pyc$','__pycache__'] set shell=sh let g:NERDTreeIndicatorMapCustom = { \ "Modified" : "✹", \ "Staged" : "✚", \ "Untracked" : "✭", \ "Renamed" : "➜", \ "Unmerged" : "═", \ "Deleted" : "✖", \ "Dirty" : "✗", \ "Clean" : "✔︎", \ "Unknown" : "?" \ } let g:WebDevIconsNerdTreeGitPluginForceVAlign = 1 " }}} " BACKUPS ###########################################################{{{ set dir=$HOME/.nvim/swp// autocmd BufWritePost * :silent execute ':w! ' ."$HOME/.nvim/backups/" . substitute(escape(substitute(expand('%:p'), "/", "%", "g"), "%"), ' ', '\\ ', 'g') if exists('+undofile') set undofile set undolevels=1000 set undoreload=10000 if exists('+undodir') set undodir=$HOME/.nvim/undo endif endif " }}} " MARKDOWN PREVIEW ##################################################{{{ let g:markdown_composer_browser = 'firefox' let g:instant_markdown_autostart = 0 " }}} " CODE COMPLETION ###################################################{{{ " Use deoplete let g:deoplete#enable_at_startup = 1 " Autoclose preview autocmd CursorMovedI * if pumvisible() == 0|pclose|endif autocmd InsertLeave * if pumvisible() == 0|pclose|endif " Complete on tab inoremap pumvisible() ? "\" : "\" " }}}