177 lines
5.2 KiB
VimL
177 lines
5.2 KiB
VimL
"""""""""""""""""
|
|
" Vundle config "
|
|
"""""""""""""""""
|
|
|
|
set nocompatible " be iMproved, required
|
|
filetype off " required
|
|
|
|
set rtp+=~/.vim/bundle/Vundle.vim
|
|
call vundle#begin()
|
|
|
|
" let Vundle manage Vundle, required
|
|
Plugin 'VundleVim/Vundle.vim'
|
|
|
|
Plugin 'vim-airline/vim-airline' " Airline bar
|
|
Plugin 'vim-airline/vim-airline-themes' " Airline themes
|
|
|
|
Plugin 'LnL7/vim-nix'
|
|
|
|
" Themes
|
|
" Plugin 'arcticicestudio/nord-vim'
|
|
|
|
" All of your Plugins must be added before the following line
|
|
call vundle#end() " required
|
|
filetype plugin indent on " required
|
|
|
|
"""""""""""""""""""""
|
|
" End Vundle config "
|
|
"""""""""""""""""""""
|
|
|
|
|
|
" Styling
|
|
syntax enable
|
|
set background=dark
|
|
colorscheme blues
|
|
let g:airline_theme='minimalist' " The airline theme
|
|
let g:airline_powerline_fonts=1 " Make airline use powerline fonts (pretty arrows)
|
|
|
|
" Do not create swap files
|
|
set nobackup
|
|
set noswapfile
|
|
set noundofile
|
|
|
|
" Line numbering (hybrid: relative and absolute)
|
|
set number relativenumber
|
|
augroup numbertoggle
|
|
autocmd!
|
|
autocmd BufEnter,FocusGained,InsertLeave * set relativenumber
|
|
autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber
|
|
augroup END
|
|
|
|
" You wanna suffer? Disable arrow keys
|
|
" noremap <Up> <NOP>
|
|
" noremap <Down> <NOP>
|
|
" noremap <Left> <NOP>
|
|
" noremap <Right> <NOP>
|
|
|
|
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" Adapted from https://github.com/jessfraz/.vim/blob/master/vimrc "
|
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|
|
set splitright " Split vertical windows right to the current windows
|
|
set splitbelow " Split horizontal windows below to the current windows
|
|
set encoding=utf-8 " Set default encoding to UTF-8
|
|
set autowrite " Automatically save before :next, :make etc.
|
|
set autoread " Automatically reread changed files without asking me anything
|
|
set fileformats=unix,dos,mac " Prefer Unix over Windows over OS 9 formats
|
|
set noshowmatch " Do not show matching brackets by flickering
|
|
set noshowmode " We show the mode with airline or lightline
|
|
set incsearch " Shows the match while typing
|
|
set hlsearch " Highlight found searches
|
|
set ignorecase " Search case insensitive...
|
|
set smartcase " ... but not when search pattern contains upper case characters
|
|
|
|
" Indent
|
|
set autoindent
|
|
set complete-=i
|
|
set showmatch
|
|
set smarttab
|
|
|
|
set et
|
|
set tabstop=4
|
|
set shiftwidth=4
|
|
set expandtab
|
|
|
|
set nrformats-=octal
|
|
set shiftround
|
|
|
|
" In many terminal emulators the mouse works just fine, thus enable it.
|
|
if has('mouse')
|
|
set mouse=a
|
|
endif
|
|
" If linux then set ttymouse
|
|
let s:uname = system("echo -n \"$(uname)\"")
|
|
if !v:shell_error && s:uname == "Linux" && !has('nvim')
|
|
set ttymouse=xterm
|
|
endif
|
|
|
|
" syntax enable
|
|
" if has('gui_running')
|
|
" set transparency=3
|
|
" " fix js regex syntax
|
|
" set regexpengine=1
|
|
" syntax enable
|
|
" endif
|
|
" set background=dark
|
|
" colorscheme solarized
|
|
" let g:solarized_termtrans=1
|
|
" let g:hybrid_use_Xresources = 1
|
|
" let g:rehash256 = 1
|
|
" set guifont=Inconsolata:h15
|
|
" set guioptions-=L
|
|
|
|
" Search mappings: These will make it so that going to the next one in a
|
|
" search will center on the line it's found in.
|
|
nnoremap n nzzzv
|
|
nnoremap N Nzzzv
|
|
|
|
" Do not show stupid q: window
|
|
map q: :q
|
|
|
|
" never do this again --> :set paste <ctrl-v> :set no paste
|
|
let &t_SI .= "\<Esc>[?2004h"
|
|
let &t_EI .= "\<Esc>[?2004l"
|
|
|
|
" Allow saving of files as sudo when I forgot to start vim using sudo.
|
|
cmap w!! w !sudo tee > /dev/null %
|
|
|
|
" ----------------------------------------- "
|
|
" File Type settings "
|
|
" ----------------------------------------- "
|
|
|
|
au BufNewFile,BufRead *.vim setlocal noet ts=4 sw=4 sts=4
|
|
au BufNewFile,BufRead *.txt setlocal noet ts=4 sw=4
|
|
"#au BufNewFile,BufRead *.md setlocal spell noet ts=4 sw=4
|
|
au BufNewFile,BufRead *.md setlocal nospell noet ts=4 sw=4
|
|
au BufNewFile,BufRead *.yml,*.yaml setlocal expandtab ts=2 sw=2
|
|
au BufNewFile,BufRead *.cpp setlocal expandtab ts=2 sw=2
|
|
au BufNewFile,BufRead *.hpp setlocal expandtab ts=2 sw=2
|
|
au BufNewFile,BufRead *.json setlocal expandtab ts=2 sw=2
|
|
au BufNewFile,BufRead *.jade setlocal expandtab ts=2 sw=2
|
|
|
|
augroup filetypedetect
|
|
au BufNewFile,BufRead .tmux.conf*,tmux.conf* setf tmux
|
|
au BufNewFile,BufRead .nginx.conf*,nginx.conf* setf nginx
|
|
augroup END
|
|
|
|
au FileType nginx setlocal noet ts=4 sw=4 sts=4
|
|
|
|
" Go settings
|
|
au BufNewFile,BufRead *.go setlocal noet ts=4 sw=4 sts=4
|
|
" autocmd BufEnter *.go colorscheme nofrils-dark
|
|
|
|
" scala settings
|
|
autocmd BufNewFile,BufReadPost *.scala setl shiftwidth=2 expandtab
|
|
|
|
" Markdown Settings
|
|
autocmd BufNewFile,BufReadPost *.md setl ts=4 sw=4 sts=4 expandtab
|
|
|
|
" lua settings
|
|
autocmd BufNewFile,BufRead *.lua setlocal noet ts=4 sw=4 sts=4
|
|
|
|
" Dockerfile settings
|
|
autocmd FileType dockerfile set noexpandtab
|
|
|
|
" shell/config/systemd settings
|
|
autocmd FileType fstab,systemd set noexpandtab
|
|
autocmd FileType gitconfig,sh,toml set noexpandtab
|
|
|
|
" python indent
|
|
autocmd BufNewFile,BufRead *.py setlocal tabstop=4 softtabstop=4 shiftwidth=4 textwidth=80 smarttab expandtab
|
|
|
|
|
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
" End https://github.com/jessfraz/.vim/blob/master/vimrc "
|
|
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
|