2021-11-28 17:52:22 +01:00
|
|
|
" Show line numbers on the left
|
|
|
|
:set number
|
|
|
|
|
|
|
|
" Disable compatibility with vi which can cause unexpected issues.
|
|
|
|
set nocompatible
|
|
|
|
|
|
|
|
" Enable type file detection. Vim will be able to try to detect the type of file in use.
|
|
|
|
filetype on
|
|
|
|
|
|
|
|
" Enable plugins and load plugin for the detected file type.
|
|
|
|
filetype plugin on
|
|
|
|
|
|
|
|
" Load an indent file for the detected file type.
|
|
|
|
filetype indent on
|
|
|
|
|
|
|
|
" Turn syntax highlighting on.
|
|
|
|
syntax on
|
|
|
|
|
|
|
|
" Highlight cursor line underneath the cursor horizontally.
|
|
|
|
set cursorline
|
|
|
|
|
|
|
|
" Set shift width to 4 spaces.
|
|
|
|
set shiftwidth=4
|
|
|
|
|
|
|
|
" Set tab width to 4 columns.
|
|
|
|
set tabstop=4
|
|
|
|
|
|
|
|
" Use space characters instead of tabs.
|
|
|
|
set expandtab
|
|
|
|
|
|
|
|
" Do not save backup files.
|
|
|
|
set nobackup
|
|
|
|
|
|
|
|
" Do not let cursor scroll below or above N number of lines when scrolling.
|
|
|
|
set scrolloff=10
|
|
|
|
|
|
|
|
" Do not wrap lines. Allow long lines to extend as far as the line goes.
|
|
|
|
set nowrap
|
|
|
|
|
|
|
|
" While searching though a file incrementally highlight matching characters as you type.
|
|
|
|
set incsearch
|
|
|
|
|
|
|
|
" Ignore capital letters during search.
|
|
|
|
set ignorecase
|
|
|
|
|
|
|
|
" Override the ignorecase option if searching for capital letters.
|
|
|
|
" This will allow you to search specifically for capital letters.
|
|
|
|
set smartcase
|
|
|
|
|
|
|
|
" Show partial command you type in the last line of the screen.
|
|
|
|
set showcmd
|
|
|
|
|
|
|
|
" Show the mode you are on the last line.
|
|
|
|
set showmode
|
|
|
|
|
|
|
|
" Show matching words during a search.
|
|
|
|
set showmatch
|
|
|
|
|
|
|
|
" Use highlighting when doing a search.
|
|
|
|
set hlsearch
|
|
|
|
|
|
|
|
" Set the commands to save in history default number is 20.
|
|
|
|
set history=1000
|
|
|
|
|
|
|
|
" Enable auto completion menu after pressing TAB.
|
|
|
|
set wildmenu
|
|
|
|
|
|
|
|
" Make wildmenu behave like similar to Bash completion.
|
|
|
|
set wildmode=list:longest
|
|
|
|
|
|
|
|
" Allow Mouse Clicks to move cursor
|
|
|
|
:set mouse=a
|
|
|
|
|
|
|
|
" 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
|
|
|
|
|
|
|
|
let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
" VIM Plugin Manager
|
|
|
|
if empty(glob(data_dir . '/autoload/plug.vim'))
|
|
|
|
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
|
|
|
|
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
|
|
|
|
endif
|
|
|
|
call plug#begin('~/.vim/plugged')
|
|
|
|
Plug 'https://git.gc4.at/linux/vim-easy-align' "Plug 'junegunn/vim-easy-align'
|
|
|
|
Plug 'https://git.gc4.at/linux/vim-one' "Plug 'rakr/vim-one'
|
|
|
|
Plug 'https://git.gc4.at/linux/vim-code-dark' "Plug 'tomasiser/vim-code-dark'
|
|
|
|
Plug 'https://git.gc4.at/linux/nerdtree' "Plug 'scrooloose/nerdtree'
|
2021-11-30 19:44:13 +01:00
|
|
|
Plug 'https://git.gc4.at/linux/vim-airline' "Plug 'vim-airline/vim-airline'
|
|
|
|
Plug 'https://git.gc4.at/linux/vim-airline-themes' "Plug 'vim-airline/vim-airline-themes'
|
|
|
|
Plug 'https://git.gc4.at/linux/base16-vim' "Plug 'chriskempson/base16-vim'
|
2021-11-28 17:52:22 +01:00
|
|
|
call plug#end()
|
|
|
|
|
|
|
|
"Easy Align
|
|
|
|
xmap ga <Plug>(EasyAlign)
|
|
|
|
nmap ga <Plug>(EasyAlign)
|
|
|
|
|
|
|
|
" NerdTree File Browser
|
|
|
|
" Start NERDTree. If a file is specified, move the cursor to its window.
|
2021-11-30 19:44:13 +01:00
|
|
|
"autocmd StdinReadPre * let s:std_in=1
|
|
|
|
"autocmd VimEnter * NERDTree | if argc() > 0 || exists("s:std_in") | wincmd p | endif
|
2021-11-28 17:52:22 +01:00
|
|
|
" Exit Vim if NERDTree is the only window remaining in the only tab.
|
2021-11-30 19:44:13 +01:00
|
|
|
"autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
|
2021-11-28 17:52:22 +01:00
|
|
|
|
|
|
|
" Airline Statusbar
|
|
|
|
let g:airline_theme='codedark'
|
|
|
|
let g:airline#extensions#tabline#enabled = 1
|
|
|
|
let g:airline#extensions#tabline#left_sep = ' '
|
|
|
|
let g:airline#extensions#tabline#left_alt_sep = '|'
|
|
|
|
let g:airline#extensions#tabline#formatter = 'default'
|
|
|
|
|
|
|
|
" Colors... True Color Support
|
|
|
|
"Credit joshdick
|
|
|
|
"Use 24-bit (true-color) mode in Vim/Neovim when outside tmux.
|
|
|
|
"If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support
|
|
|
|
"(see < http://sunaku.github.io/tmux-24bit-color.html#usage > for more information.)
|
|
|
|
if (empty($TMUX))
|
|
|
|
if (has("nvim"))
|
|
|
|
"For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 >
|
|
|
|
let $NVIM_TUI_ENABLE_TRUE_COLOR=1
|
|
|
|
endif
|
|
|
|
"For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 >
|
|
|
|
"Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd >
|
|
|
|
" < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 >
|
|
|
|
if (has("termguicolors"))
|
|
|
|
set termguicolors
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2021-11-30 19:44:13 +01:00
|
|
|
" Color Schema Base 16 Dark (=Atom)
|
|
|
|
colorscheme base16-default-dark
|
|
|
|
|
2021-11-28 17:52:22 +01:00
|
|
|
" Color Schema CodeDark
|
2021-11-30 19:44:13 +01:00
|
|
|
"colorscheme codedark
|
2021-11-28 17:52:22 +01:00
|
|
|
|
|
|
|
" Color Schema One
|
|
|
|
"colorscheme one
|
|
|
|
"set background=dark " for the light version
|
|
|
|
" let g:one_allow_italics = 1 " I love italic for comments
|
|
|
|
|
|
|
|
" Color Schema Papercolors
|
|
|
|
"set background=dark
|
|
|
|
"colorscheme PaperColor
|