2024-08-25 10:10:35 +00:00
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
" ██╗ ██╗██╗███╗ ███╗██████╗ ██████╗
|
|
|
|
" ██║ ██║██║████╗ ████║██╔══██╗██╔════╝
|
|
|
|
" ██║ ██║██║██╔████╔██║██████╔╝██║
|
|
|
|
" ╚██╗ ██╔╝██║██║╚██╔╝██║██╔══██╗██║
|
|
|
|
" ╚████╔╝ ██║██║ ╚═╝ ██║██║ ██║╚██████╗
|
|
|
|
" ╚═══╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
|
2024-08-25 11:35:50 +00:00
|
|
|
set nocompatible " Disable compatibility with vi which can cause unexpected issues.
|
|
|
|
filetype on " Enable type file detection. Vim will be able to try to detect the type of file in use.
|
|
|
|
filetype plugin on " Enable plugins and load plugin for the detected file type.
|
|
|
|
filetype indent on " Load an indent file for the detected file type.
|
|
|
|
syntax on " Turn syntax highlighting on.
|
|
|
|
set number " Add numbers to each line on the left-hand side.
|
|
|
|
set cursorline " Highlight cursor line underneath the cursor horizontally.
|
|
|
|
set shiftwidth=5 " Set shift width to 4 spaces.
|
|
|
|
set tabstop=4 " Set tab width to 4 columns.
|
|
|
|
set nobackup " Do not save backup files.
|
|
|
|
set scrolloff=10 " Do not let cursor scroll below or above N number of lines when scrolling.
|
|
|
|
set incsearch " While searching though a file incrementally highlight matching characters as you type.
|
|
|
|
set ignorecase " Ignore capital letters during search.
|
|
|
|
set showcmd " Show partial command you type in the last line of the screen.
|
|
|
|
set showmode " Show the mode you are on the last line.
|
|
|
|
set showmatch " Show matching words during a search.
|
|
|
|
set hlsearch " Use highlighting when doing a search.
|
|
|
|
set history=10000 " Set the commands to save in history default number is 20.
|
|
|
|
set wildmenu " Enable auto completion menu after pressing TAB.
|
|
|
|
set wildmode=list:longest " Make wildmenu behave like similar to Bash completion.
|
|
|
|
set title " Show file title
|
2024-09-01 19:37:38 +00:00
|
|
|
set cc=100 " Enable visual limit at 100 chars for good code formatting practice
|
2024-08-25 11:35:50 +00:00
|
|
|
set guifont=hack_nerd_font:h11
|
2024-08-25 15:31:30 +00:00
|
|
|
set bg=dark
|
2024-09-01 19:37:38 +00:00
|
|
|
set relativenumber
|
2024-08-25 11:35:50 +00:00
|
|
|
|
2024-08-28 12:14:02 +00:00
|
|
|
let g:kite_supported_languages = ['python', 'javascript', 'go']
|
2024-08-25 10:10:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
" There are certain files that we would never want to edit with Vim.
|
|
|
|
" Wildmenu will ignore files with these extensions.
|
|
|
|
set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx
|
|
|
|
|
|
|
|
" PLUGINS ---------------------------------------------------------------- {{{
|
|
|
|
|
2024-08-25 11:35:50 +00:00
|
|
|
" Plugin code goes here.
|
|
|
|
|
|
|
|
call plug#begin('~/.vim/autoload/plug')
|
|
|
|
|
|
|
|
Plug 'davidhalter/jedi-vim'
|
|
|
|
Plug 'vim-airline/vim-airline'
|
|
|
|
Plug 'vim-airline/vim-airline-themes'
|
2024-08-25 13:36:11 +00:00
|
|
|
Plug 'preservim/nerdtree'
|
2024-08-25 11:35:50 +00:00
|
|
|
Plug 'morhetz/gruvbox'
|
|
|
|
Plug 'sheerun/vim-polyglot'
|
|
|
|
Plug 'ryanoasis/vim-devicons'
|
|
|
|
Plug 'scrooloose/nerdcommenter'
|
|
|
|
Plug 'Xuyuanp/nerdtree-git-plugin'
|
|
|
|
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
|
|
|
|
Plug 'PhilRunninger/nerdtree-visual-selection'
|
2024-08-25 13:36:11 +00:00
|
|
|
Plug 'tpope/vim-fugitive'
|
|
|
|
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
|
|
|
|
Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
|
2024-08-26 15:28:13 +00:00
|
|
|
Plug 'dense-analysis/ale'
|
2024-08-25 11:35:50 +00:00
|
|
|
|
|
|
|
call plug#end()
|
|
|
|
|
|
|
|
" Plugin configs
|
|
|
|
|
|
|
|
let g:bargreybars_auto=0
|
|
|
|
let g:airline_solorized_bg='dark'
|
|
|
|
let g:airline_powerline_fonts=1
|
|
|
|
let g:airline#extension#tabline#enable=1
|
|
|
|
let g:airline#extension#tabline#left_sep=' '
|
|
|
|
let g:airline#extension#tabline#left_alt_sep='|'
|
|
|
|
let g:airline#extension#tabline#formatter='unique_tail'
|
|
|
|
let NERDTreeQuitOnOpen=1
|
|
|
|
let g:WebDevIconsUnicodeDecorateFolderNodes = 1
|
|
|
|
let g:WebDevIconsUnicodeDecorateFolderNodeDefaultSymbol = '#'
|
|
|
|
let g:WebDevIconsUnicodeDecorateFileNodesExtensionSymbols = {}
|
|
|
|
let g:WebDevIconsUnicodeDecorateFileNodesExtensionSymbols['nerdtree'] = '#'
|
2024-08-26 16:13:05 +00:00
|
|
|
let g:ale_virtualtext_cursor = 'current'
|
|
|
|
let g:ale_linters = {
|
|
|
|
\ 'python': ['flake8', 'pylint'],
|
|
|
|
\ 'go': ['vet', 'errcheck'],
|
|
|
|
\}
|
|
|
|
let g:ale_python_flake8_options = '--ignore=E501'
|
2024-08-28 12:14:02 +00:00
|
|
|
let g:ale_echo_msg_format = '[%linter%] [%severity%] %code% %s'
|
|
|
|
let g:gruvbox_contrast_dark = 'soft'
|
2024-08-25 10:10:35 +00:00
|
|
|
|
2024-08-25 15:31:30 +00:00
|
|
|
colorscheme gruvbox
|
2024-08-25 10:10:35 +00:00
|
|
|
" " }}}
|
|
|
|
|
|
|
|
|
|
|
|
" MAPPINGS ---------------------------------------------------------------
|
|
|
|
" {{{
|
|
|
|
|
|
|
|
" Mappings code goes here.
|
|
|
|
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
|
|
|
|
" VIMSCRIPT --------------------------------------------------------------
|
|
|
|
" {{{
|
|
|
|
|
|
|
|
" This will enable code folding.
|
|
|
|
" Use the marker method of folding.
|
|
|
|
augroup filetype_vim
|
|
|
|
autocmd!
|
|
|
|
autocmd FileType vim setlocal foldmethod=marker
|
|
|
|
augroup END
|
|
|
|
|
|
|
|
" More Vimscripts code goes here.
|
|
|
|
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
|
|
|
|
" STATUS LINE
|
|
|
|
"------------------------------------------------------------ {{{
|
|
|
|
|
|
|
|
" Status bar code goes here.
|
|
|
|
|
|
|
|
" }}}
|