85 lines
2.0 KiB
VimL
85 lines
2.0 KiB
VimL
" Set
|
|
filetype indent plugin on
|
|
|
|
" Syntax highlighting
|
|
syntax on
|
|
|
|
" Add number rows
|
|
set relativenumber
|
|
set scrolloff=999
|
|
|
|
" No swap file
|
|
set noswapfile
|
|
|
|
" Incremental search & highlight
|
|
set incsearch
|
|
set hls
|
|
|
|
" Runtime path
|
|
let $RTP=split(&runtimepath, ',')[0]
|
|
let $RC="$HOME/.vimrc"
|
|
|
|
" Set default path
|
|
set path=.,**
|
|
|
|
" Plugin stuff
|
|
execute pathogen#infect()
|
|
|
|
" Always show file name
|
|
set laststatus=2
|
|
|
|
" Enter to insert blank line below current, Shift+Enter to insert above
|
|
map <Enter> o<ESC>
|
|
map <S-Enter> O<ESC>
|
|
|
|
" Folding (move to python specific vim file?)
|
|
set foldmethod=indent
|
|
set foldnestmax=99
|
|
set foldlevelstart=99
|
|
nnoremap <space> za
|
|
vnoremap <space> zf
|
|
|
|
" F9 execute current Python file
|
|
autocmd FileType python map <buffer> <F9> :w<CR>:exec '!clear;python' shellescape(@%, 1)<CR>
|
|
autocmd FileType python imap <buffer> <F9> <esc>:w<CR>:exec '!clear;python' shellescape(@%, 1)<CR>
|
|
|
|
" Cycle through buffers
|
|
map [b :bp<CR>
|
|
map ]b :bn<CR>
|
|
map db :bd<CR>
|
|
|
|
" Toggle Nerd tree
|
|
map <F4> :NERDTreeToggle<CR>
|
|
|
|
" Save, Save and quit
|
|
map <F1> :w<CR>
|
|
map <F2> :wq<CR>
|
|
|
|
|
|
" Lint
|
|
autocmd FileType python map <buffer> gl :w<CR>:exec '!python -m black' shellescape(@%, 1)<CR>
|
|
|
|
" Automatically open NERDTree
|
|
autocmd VimEnter * NERDTree | wincmd p
|
|
|
|
" Exit Vim if NERDTree is the only window remaining in the only tab.
|
|
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
|
|
|
|
|
|
" If another buffer tries to replace NERDTree, put it in the other window, and bring back NERDTree.
|
|
autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 |
|
|
\ let buf=bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer'.buf | endif
|
|
|
|
" Open the existing NERDTree on each new tab.
|
|
autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif
|
|
|
|
" Show hidden
|
|
let NERDTreeShowHidden=1
|
|
|
|
|
|
" colorscheme moonfly
|
|
" colorscheme vim-monokai-tasty
|
|
" colorscheme onenord
|
|
colorscheme gruvbox-baby
|
|
|