You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
dotfiles/nvim/init.vim

189 lines
4.2 KiB

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'
" Lang. Support
Plug 'fatih/vim-go'
Plug 'artur-shaik/vim-javacomplete2'
"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'
call plug#end()
"let g:molokai_original = 1
let g:airline_theme='onedark'
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
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<space> :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"
" 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> :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>