From 3e3dfd387898ef34bc5083699cfa90faf2857fe8 Mon Sep 17 00:00:00 2001 From: Derek Taylor Date: Thu, 5 Nov 2020 14:13:22 -0600 Subject: [PATCH] Adding vimrc. --- .vimrc | 254 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 254 insertions(+) create mode 100644 .vimrc diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..626d5b1 --- /dev/null +++ b/.vimrc @@ -0,0 +1,254 @@ +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Vundle For Managing Plugins +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +set nocompatible " be iMproved, required +filetype off " required + +" set the runtime path to include Vundle and initialize +set rtp+=~/.vim/bundle/Vundle.vim + +call vundle#begin() " required, all plugins must appear after this line. + +Plugin 'gmarik/Vundle.vim' " Vundle +Plugin 'itchyny/lightline.vim' " Lightline statusbar +Plugin 'vifm/vifm.vim' +Plugin 'vimwiki/vimwiki' " Vim wiki +Plugin 'scrooloose/nerdtree' " added nerdtree +Plugin 'tiagofumo/vim-nerdtree-syntax-highlight' +Plugin 'ryanoasis/vim-devicons' +Plugin 'frazrepo/vim-rainbow' +Plugin 'vim-python/python-syntax' +Plugin 'jreybert/vimagit' +Plugin 'severin-lemaignan/vim-minimap' +Plugin 'ap/vim-css-color' " Color previews for CSS +Plugin 'tpope/vim-surround' " Change surrounding marks + +call vundle#end() " required, all plugins must appear before this line. + +filetype plugin indent on " required +" To ignore plugin indent changes, instead use: +"filetype plugin on + +" Brief help +" :PluginList - lists configured plugins +" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate +" :PluginSearch foo - searches for foo; append `!` to refresh local cache +" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal + +" see :h vundle for more details or wiki for FAQ +" Put your non-Plugin stuff after this line + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Remap Keys +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"Remap ESC to ii +:imap ii + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Powerline +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +let g:lightline = { + \ 'colorscheme': 'darcula', + \ } + +" Always show statusline +set laststatus=2 + +" Use 256 colours (Use this setting only if your terminal supports 256 colours) +set t_Co=256 + +syntax enable +set number relativenumber +let g:rehash256 = 1 + +" Uncomment to prevent non-normal modes showing in powerline and below powerline. +set noshowmode + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Text, tab and indent related +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Use spaces instead of tabs +set expandtab + +" Be smart when using tabs ;) +set smarttab + +" 1 tab == 4 spaces +set shiftwidth=4 +set tabstop=4 + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => NERDTree +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Uncomment to autostart the NERDTree +" autocmd vimenter * NERDTree +map :NERDTreeToggle +let g:NERDTreeDirArrowExpandable = '►' +let g:NERDTreeDirArrowCollapsible = '▼' +let NERDTreeShowLineNumbers=1 +let NERDTreeShowHidden=1 +let NERDTreeMinimalUI = 1 +let g:NERDTreeWinSize=38 + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Colors +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + highlight LineNr ctermfg=8 ctermbg=none cterm=none + highlight CursorLineNr ctermfg=7 ctermbg=8 cterm=none + highlight VertSplit ctermfg=0 ctermbg=8 cterm=none + highlight Statement ctermfg=2 ctermbg=none cterm=none + highlight Directory ctermfg=4 ctermbg=none cterm=none + highlight StatusLine ctermfg=7 ctermbg=8 cterm=none + highlight StatusLineNC ctermfg=7 ctermbg=8 cterm=none + highlight NERDTreeClosable ctermfg=2 + highlight NERDTreeOpenable ctermfg=8 + highlight Comment ctermfg=4 ctermbg=none cterm=none + highlight Constant ctermfg=12 ctermbg=none cterm=none + highlight Special ctermfg=4 ctermbg=none cterm=none + highlight Identifier ctermfg=6 ctermbg=none cterm=none + highlight PreProc ctermfg=5 ctermbg=none cterm=none + highlight String ctermfg=12 ctermbg=none cterm=none + highlight Number ctermfg=1 ctermbg=none cterm=none + highlight Function ctermfg=1 ctermbg=none cterm=none +" highlight WildMenu ctermfg=0 ctermbg=80 cterm=none +" highlight Folded ctermfg=103 ctermbg=234 cterm=none +" highlight FoldColumn ctermfg=103 ctermbg=234 cterm=none +" highlight DiffAdd ctermfg=none ctermbg=23 cterm=none +" highlight DiffChange ctermfg=none ctermbg=56 cterm=none +" highlight DiffDelete ctermfg=168 ctermbg=96 cterm=none +" highlight DiffText ctermfg=0 ctermbg=80 cterm=none +" highlight SignColumn ctermfg=244 ctermbg=235 cterm=none +" highlight Conceal ctermfg=251 ctermbg=none cterm=none +" highlight SpellBad ctermfg=168 ctermbg=none cterm=underline +" highlight SpellCap ctermfg=80 ctermbg=none cterm=underline +" highlight SpellRare ctermfg=121 ctermbg=none cterm=underline +" highlight SpellLocal ctermfg=186 ctermbg=none cterm=underline +" highlight Pmenu ctermfg=251 ctermbg=234 cterm=none +" highlight PmenuSel ctermfg=0 ctermbg=111 cterm=none +" highlight PmenuSbar ctermfg=206 ctermbg=235 cterm=none +" highlight PmenuThumb ctermfg=235 ctermbg=206 cterm=none +" highlight TabLine ctermfg=244 ctermbg=234 cterm=none +" highlight TablineSel ctermfg=0 ctermbg=247 cterm=none +" highlight TablineFill ctermfg=244 ctermbg=234 cterm=none +" highlight CursorColumn ctermfg=none ctermbg=236 cterm=none +" highlight CursorLine ctermfg=none ctermbg=236 cterm=none +" highlight ColorColumn ctermfg=none ctermbg=236 cterm=none +" highlight Cursor ctermfg=0 ctermbg=5 cterm=none +" highlight htmlEndTag ctermfg=114 ctermbg=none cterm=none +" highlight xmlEndTag ctermfg=114 ctermbg=none cterm=none + + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Vifm +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +map vv :Vifm +map vs :VsplitVifm +map sp :SplitVifm +map dv :DiffVifm +map tv :TabVifm + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => VimWiki +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +let g:vimwiki_list = [{'path': '~/vimwiki/', + \ 'syntax': 'markdown', 'ext': '.md'}] + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Mouse Scrolling +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +set mouse=nicr + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Splits and Tabbed Files +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +set splitbelow splitright + +set path+=** " Searches current directory recursively. +set wildmenu " Display all matches when tab complete. +set incsearch +set nobackup +set noswapfile + +let g:minimap_highlight='Visual' + +let g:python_highlight_all = 1 + +au! BufRead,BufWrite,BufWritePost,BufNewFile *.org +au BufEnter *.org call org#SetOrgFileType() + +set guioptions-=m "remove menu bar +set guioptions-=T "remove toolbar +set guioptions-=r "remove right-hand scroll bar +set guioptions-=L "remove left-hand scroll bar + + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" => Removes pipes | that act as seperators on splits +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +set fillchars+=vert:\ + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"=> Trailing spaces +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +function! CleanExtraSpaces() "Function to clean unwanted spaces + let save_cursor = getpos(".") + let old_query = getreg('/') + silent! %s/\s\+$//e + call setpos('.', save_cursor) + call setreg('/', old_query) +endfun + + +autocmd BufWritePre * :call CleanExtraSpaces() + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"=> Convert text to UTF-8 +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +setglobal termencoding=utf-8 fileencodings= +scriptencoding utf-8 +set encoding=utf-8 + +autocmd BufNewFile,BufRead * try +autocmd BufNewFile,BufRead * set encoding=utf-8 +autocmd BufNewFile,BufRead * endtry + +"Going over all of this would take too much time +"This basically set everything in utf-8 in every circumtances + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"=> Convert to UNIX fileformat (avoid CRLF) +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +set fileformat=unix +"Set every files as Unix (LF) as Windows might set CRLF wich is not working +"for unix + + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"=> Ignore 'useless' extensions for wildmenu +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +set wildignore+=*.a,*.o,*.so,*.pyc,.git +set wildignore+=*.jpg,*.png,*.gif,*.bmp,*.ico,*.pdf +set wildignore+=*.tmp,*.swp + +"Tell NerdTree and Popup windows ignore thoses + + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +"Set Vim Language +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +let $LANG='en' +"Setting env LANG var to english + +set langmenu=en +"Setting menu language to en + +source $VIMRUNTIME/delmenu.vim +source $VIMRUNTIME/menu.vim +"Sourcing evrything ("don't why but you need to do it) +