|
|
|
call plug#begin('~/local/share/nvim/plugged')
|
|
|
|
|
|
|
|
Plug 'itchyny/lightline.vim'
|
|
|
|
Plug 'editorconfig/editorconfig-vim'
|
|
|
|
|
|
|
|
" Fzf
|
|
|
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
|
|
|
Plug 'junegunn/fzf.vim'
|
|
|
|
|
|
|
|
" LimeLight
|
|
|
|
Plug 'junegunn/limelight.vim'
|
|
|
|
|
|
|
|
" NERDTree
|
|
|
|
Plug 'scrooloose/nerdtree'
|
|
|
|
|
|
|
|
" Improvements Plug 'terryma/vim-multiple-cursors'
|
|
|
|
Plug 'tpope/vim-eunuch'
|
|
|
|
Plug 'tpope/vim-surround'
|
|
|
|
Plug 'scrooloose/syntastic'
|
|
|
|
Plug 'jiangmiao/auto-pairs'
|
|
|
|
|
|
|
|
"Airline
|
|
|
|
Plug 'vim-airline/vim-airline'
|
|
|
|
Plug 'vim-airline/vim-airline-themes'
|
|
|
|
Plug 'prabirshrestha/vim-lsp'
|
|
|
|
|
|
|
|
" Themes
|
|
|
|
Plug 'tomasr/molokai'
|
|
|
|
Plug 'gko/vim-coloresque'
|
|
|
|
Plug 'dracula/vim', { 'as': 'dracula' }
|
|
|
|
Plug 'joshdick/onedark.vim'
|
|
|
|
Plug 'Mofiqul/dracula.nvim'
|
|
|
|
|
|
|
|
" Lang. Support
|
|
|
|
Plug 'fatih/vim-go'
|
|
|
|
Plug 'artur-shaik/vim-javacomplete2'
|
|
|
|
autocmd FileType java setlocal omnifunc=javacomplete#Complete
|
|
|
|
"Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
|
|
|
|
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
|
|
|
Plug 'zchee/deoplete-jedi'
|
|
|
|
Plug 'davidhalter/jedi-vim'
|
|
|
|
Plug 'rust-lang/rust.vim'
|
|
|
|
Plug 'preservim/nerdcommenter'
|
|
|
|
Plug 'mattn/emmet-vim'
|
|
|
|
|
|
|
|
" Code Folding
|
|
|
|
Plug 'tmhedberg/SimpylFold'
|
|
|
|
|
|
|
|
" Writing
|
|
|
|
Plug 'junegunn/goyo.vim'
|
|
|
|
Plug 'lervag/vimtex'
|
|
|
|
Plug 'xuhdev/vim-latex-live-preview', { 'for': 'tex' }
|
|
|
|
" Plug 'conornewton/vim-latex-preview'
|
|
|
|
|
|
|
|
"Zoxide
|
|
|
|
Plug 'nanotee/zoxide.vim'
|
|
|
|
|
|
|
|
" Vim Wiki
|
|
|
|
Plug 'vimwiki/vimwiki'
|
|
|
|
Plug 'mattn/calendar-vim'
|
|
|
|
|
|
|
|
" Animate
|
|
|
|
" Plug 'camspiers/animate.vim'
|
|
|
|
Plug 'camspiers/lens.vim'
|
|
|
|
|
|
|
|
" Better Syntax Support
|
|
|
|
Plug 'sheerun/vim-polyglot'
|
|
|
|
|
|
|
|
" Git
|
|
|
|
Plug 'airblade/vim-gitgutter'
|
|
|
|
Plug 'tpope/vim-fugitive'
|
|
|
|
|
|
|
|
" Icons
|
|
|
|
Plug 'ryanoasis/vim-devicons'
|
|
|
|
|
|
|
|
" ASCII
|
|
|
|
Plug 'jbyuki/venn.nvim'
|
|
|
|
|
|
|
|
call plug#end()
|
|
|
|
|
|
|
|
"let g:molokai_original = 1
|
|
|
|
"let g:airline_theme='onedark'
|
|
|
|
let g:airline_theme='dracula'
|
|
|
|
let g:ale_enable=0
|
|
|
|
syntax on
|
|
|
|
filetype plugin indent on
|
|
|
|
set shiftwidth=4
|
|
|
|
set softtabstop=4
|
|
|
|
set tabstop=4
|
|
|
|
set expandtab
|
|
|
|
set number relativenumber
|
|
|
|
"colorscheme onedark
|
|
|
|
colorscheme dracula
|
|
|
|
set nocompatible
|
|
|
|
set encoding=UTF-8
|
|
|
|
set clipboard+=unnamedplus
|
|
|
|
|
|
|
|
set mouse=a
|
|
|
|
" Map Leader
|
|
|
|
let mapleader = ","
|
|
|
|
|
|
|
|
|
|
|
|
" Note taking (Mardown, Spelling)
|
|
|
|
let g:vimwiki_list = [{'path': '~/vimwiki/',
|
|
|
|
\ 'syntax': 'markdown', 'ext': '.md'}]
|
|
|
|
|
|
|
|
:map <F11> :setlocal spell! spelllang=en_gb<CR>
|
|
|
|
au BufNewFile ~/vimwiki/diary/*.md :silent 0r !~/.config/nvim/generate-vimwiki-diary-template '%'
|
|
|
|
|
|
|
|
|
|
|
|
let NERDTreeMapOpenInTab='<ENTER>'
|
|
|
|
|
|
|
|
" Insert Date
|
|
|
|
nnoremap <silent><leader>d :put=system('date +%d/%b/%Y')<CR>
|
|
|
|
|
|
|
|
" Tex
|
|
|
|
let g:vimtex_complete_enabled = 1
|
|
|
|
let g:livepreview_previewer = 'zathura'
|
|
|
|
autocmd Filetype tex setl updatetime=1
|
|
|
|
|
|
|
|
" Fzf
|
|
|
|
let g:fzf_nvim_statusline = 0 " disable statusline overwriting
|
|
|
|
|
|
|
|
"remaps for fzf
|
|
|
|
nnoremap <silent> <leader><space> :Files<CR>
|
|
|
|
nnoremap <silent> <leader>w :Windows<CR>
|
|
|
|
nnoremap <silent> <leader>h :History<CR>
|
|
|
|
nnoremap <silent> <leader>G :GFiles<CR>
|
|
|
|
" nnoremap <silent> <leader>GS :GFiles?<CR>
|
|
|
|
|
|
|
|
" Easy to update and reload nvim init file
|
|
|
|
nnoremap <Leader>e :e $MYVIMRC<CR>
|
|
|
|
nnoremap <Leader>S :source $MYVIMRC<CR>
|
|
|
|
|
|
|
|
" Deoplete
|
|
|
|
let g:deoplete#enable_at_startup = 1
|
|
|
|
autocmd InsertLeave,CompleteDone * if pumvisible() == 0 | pclose | endif
|
|
|
|
let g:jedi#completions_enabled = 0
|
|
|
|
let g:jedi#use_splits_not_buffers = "right"
|
|
|
|
" g:deoplete#sources#jedi#python_path = 'python3'
|
|
|
|
let g:python3_host_prog = '/usr/bin/python3'
|
|
|
|
|
|
|
|
" Limeligt Binds
|
|
|
|
nnoremap <Leader>l :Limelight!!<CR>
|
|
|
|
let g:limelight_conceal_guifg = 'DarkGray'
|
|
|
|
let g:limelight_conceal_guifg = '#777777'
|
|
|
|
let g:limelight_conceal_ctermfg = 'gray'
|
|
|
|
let g:limelight_conceal_ctermfg = 240
|
|
|
|
autocmd! User GoyoEnter Limelight
|
|
|
|
autocmd! User GoyoLeave Limelight!
|
|
|
|
|
|
|
|
" <TAB>: completion.
|
|
|
|
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
|
|
|
|
|
|
|
|
" Switching windows
|
|
|
|
nnoremap <A-h> <C-w>h
|
|
|
|
nnoremap <A-j> <C-w>j
|
|
|
|
nnoremap <A-k> <C-w>k
|
|
|
|
nnoremap <A-l> <C-w>l
|
|
|
|
|
|
|
|
" Move tabs
|
|
|
|
nnoremap <A-Down> :tabp<CR>
|
|
|
|
nnoremap <A-Up> :tabn<CR>
|
|
|
|
|
|
|
|
" Basic cmd commands
|
|
|
|
nnoremap <A-n> :!touch<Space>
|
|
|
|
nnoremap <A-o> :e<Space>
|
|
|
|
nnoremap <A-O> :tabe<Space>
|
|
|
|
nnoremap <A-v> :vsplit<Space>
|
|
|
|
|
|
|
|
" Screenshot command
|
|
|
|
nnoremap <silent> <leader>s :!bash /home/simon/.scripts/vscrnpaste<CR><CR>
|
|
|
|
|
|
|
|
" Terminal Maps
|
|
|
|
tnoremap <Esc> <C-\><C-n>
|
|
|
|
nnoremap <leader>t :tabedit term://bash<CR>
|
|
|
|
autocmd BufEnter * silent! lcd %:p:h
|
|
|
|
|
|
|
|
" Indents
|
|
|
|
vmap < <gv
|
|
|
|
vmap > >gv
|
|
|
|
|
|
|
|
" Open NERDTree
|
|
|
|
nnoremap <leader>N :NERDTreeToggle<CR>
|
|
|
|
|
|
|
|
" Vimwiki md2html
|
|
|
|
let g:vimwiki_list = [{
|
|
|
|
\ 'path': '~/vimwiki',
|
|
|
|
\ 'template_path': '~/vimwiki/templates/',
|
|
|
|
\ 'template_default': 'default',
|
|
|
|
\ 'syntax': 'markdown',
|
|
|
|
\ 'ext': '.md',
|
|
|
|
\ 'path_html': '~/vimwiki/site_html/',
|
|
|
|
\ 'custom_wiki2html': 'vimwiki_markdown',
|
|
|
|
\ 'template_ext': '.tpl'}]
|
|
|
|
|
|
|
|
" Vimwiki
|
|
|
|
nnoremap <leader>T :VimwikiTable<CR>
|