Skip to content

Instantly share code, notes, and snippets.

@vodp
Created May 25, 2020 16:42
Show Gist options
  • Save vodp/83803b507792ad6123424932d8d05755 to your computer and use it in GitHub Desktop.
Save vodp/83803b507792ad6123424932d8d05755 to your computer and use it in GitHub Desktop.
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()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
Plugin 'vim-airline/vim-airline'
Plugin 'tpope/vim-fugitive'
Plugin 'preservim/nerdtree'
Plugin 'majutsushi/tagbar'
Plugin 'dense-analysis/ale'
Plugin 'rafi/awesome-vim-colorschemes'
Plugin 'godlygeek/tabular'
Plugin 'plasticboy/vim-markdown'
" All of your Plugins must be added before the following line
call vundle#end() " required
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
set tabstop=4 " The width of a TAB is set to 4.
" Still it is a \t. It is just that
" Vim will interpret it to be having
" a width of 4.
set autoindent
set shiftwidth=4 " Indents will have a width of 4
set softtabstop=4 " Sets the number of columns for a TAB
set expandtab " Expand TABs to spaces
set number
colorscheme wombat256mod
" Open NerdTree automatically when vim starts even no files specified
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
" Close Vim if the only window left open s a NerdTree
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
" Auto closing NERDTree after opening a file
let NERDTreeQuitOnOpen=1
" Hot key for NERD Tree
map <silent> <C-n> :NERDTreeToggle<CR>
" Hot key for Tagbar
nmap <F8> :TagbarToggle<CR>
" Airline embeddings
let g:airline#extensions#branch#enabled = 1
let g:airline#extensions#nerdtree_status = 1
let g:airline_powerline_fonts = 1
let g:airline#extensions#ale#enabled = 1
" Linting and Fixing
let g:ale_fixers = {
\ 'python': ['autopep8', 'black', 'isort', 'remove_trailing_lines', 'trim_whitespace', 'reorder-python-imports']
\}
let g:ale_completion_enabled = 1
let g:ale_lint_on_save = 1
let g:ale_lint_on_text_changed = 1
let g:ale_lint_delay = 0
let g:ale_linters = {
\ 'python': ['flake8', 'pylint']
\}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment