2021-03-18 14:10:29 +01:00
|
|
|
set number
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-08-01 16:09:28 +02:00
|
|
|
set tabstop=2 " The width of a TAB is set to 4.
|
2021-06-11 13:56:40 +02:00
|
|
|
" Still it is a \t. It is just that
|
|
|
|
" Vim will interpret it to be having
|
|
|
|
" a width of 4.
|
|
|
|
|
2021-08-01 16:09:28 +02:00
|
|
|
set shiftwidth=2 " Indents will have a width of 4
|
2021-06-11 13:56:40 +02:00
|
|
|
|
2021-08-01 16:09:28 +02:00
|
|
|
set softtabstop=2 " Sets the number of columns for a TAB
|
2021-06-11 13:56:40 +02:00
|
|
|
|
|
|
|
set expandtab " Expand TABs to spaces
|
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
" Plugins will be downloaded under the specified directory.
|
|
|
|
call plug#begin('~/.vim/plugged')
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
" Declare the list of plugins.
|
2020-11-07 16:40:23 +01:00
|
|
|
Plug 'tpope/vim-sensible'
|
2021-08-01 16:09:28 +02:00
|
|
|
Plug 'prettier/vim-prettier', {
|
|
|
|
\ 'do': 'yarn install',
|
|
|
|
\ 'for': ['javascript', 'typescript', 'css', 'less', 'scss', 'json', 'graphql', 'markdown', 'vue', 'svelte', 'yaml', 'html'] }
|
2021-06-07 14:23:59 +02:00
|
|
|
Plug 'kaicataldo/material.vim', { 'branch': 'main' }
|
2021-03-18 14:10:29 +01:00
|
|
|
Plug 'ryanoasis/vim-devicons'
|
|
|
|
Plug 'preservim/nerdtree'
|
2021-08-01 16:09:28 +02:00
|
|
|
" For searching through file contents
|
|
|
|
Plug 'dyng/ctrlsf.vim'
|
2021-07-14 19:13:48 +02:00
|
|
|
|
2021-06-11 13:56:40 +02:00
|
|
|
" A status line to the bottom
|
2021-07-14 19:13:48 +02:00
|
|
|
" Plug 'itchyny/lightline.vim'
|
|
|
|
Plug 'vim-airline/vim-airline'
|
|
|
|
|
|
|
|
" Asynchronous Lint Engine
|
|
|
|
Plug 'dense-analysis/ale'
|
|
|
|
|
|
|
|
" Autocompletion engine
|
2021-06-11 13:56:40 +02:00
|
|
|
Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
|
|
|
Plug 'mattn/emmet-vim'
|
|
|
|
Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app && yarn install' }
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-07-14 19:13:48 +02:00
|
|
|
" Display Images in Vim
|
2021-08-01 16:09:28 +02:00
|
|
|
" Plug 'ashisha/image.vim'
|
2021-06-15 14:03:42 +02:00
|
|
|
|
2021-06-14 18:28:53 +02:00
|
|
|
" Svelte support
|
|
|
|
Plug 'leafOfTree/vim-svelte-plugin'
|
2021-07-14 19:13:48 +02:00
|
|
|
Plug 'evanleck/vim-svelte', {'branch': 'main'}
|
2021-06-14 18:28:53 +02:00
|
|
|
|
|
|
|
" Multi Cursor select
|
|
|
|
Plug 'mg979/vim-visual-multi', {'branch': 'master'}
|
|
|
|
|
|
|
|
" Plug 'ctrlpvim/ctrlp.vim'
|
|
|
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
|
|
|
|
2021-07-14 19:13:48 +02:00
|
|
|
Plug 'kristijanhusak/vim-dadbod-ui'
|
|
|
|
|
2021-08-01 16:09:28 +02:00
|
|
|
Plug 'liuchengxu/vim-clap'
|
|
|
|
|
|
|
|
Plug 'glepnir/dashboard-nvim'
|
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
" List ends here. Plugins become visible to Vim after this call.
|
2020-11-07 16:40:23 +01:00
|
|
|
call plug#end()
|
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
" Or if you have Neovim >= 0.1.5
|
|
|
|
if (has("termguicolors"))
|
|
|
|
set termguicolors
|
|
|
|
endif
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-06-11 13:56:40 +02:00
|
|
|
let g:svelte_preprocessors = ['typescript']
|
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
" Theme
|
|
|
|
syntax enable
|
2021-06-07 14:23:59 +02:00
|
|
|
let g:material_theme_style = 'ocean-community'
|
|
|
|
colorscheme material
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-08-01 16:09:28 +02:00
|
|
|
" Remove background color
|
|
|
|
highlight Normal guibg=none
|
|
|
|
highlight NonText guibg=none
|
|
|
|
|
2021-06-11 13:56:40 +02:00
|
|
|
let g:lightline = {
|
|
|
|
\ 'colorscheme': 'one',
|
|
|
|
\ 'background': 'dark',
|
|
|
|
\ }
|
|
|
|
|
2021-03-18 14:10:29 +01:00
|
|
|
let mapleader = ","
|
2021-06-11 13:56:40 +02:00
|
|
|
nmap <leader>rn <Plug>(coc-rename)
|
|
|
|
|
2021-06-14 18:28:53 +02:00
|
|
|
"
|
|
|
|
nmap <C-p> :FZF<CR>
|
2021-06-11 13:56:40 +02:00
|
|
|
|
|
|
|
" COC Configs
|
|
|
|
set updatetime=300
|
2020-11-07 16:40:23 +01:00
|
|
|
|
2021-06-11 13:56:40 +02:00
|
|
|
" NerdTREE config
|
2021-03-18 14:10:29 +01:00
|
|
|
nmap <F6> :NERDTreeToggle<CR>
|
2021-06-11 13:56:40 +02:00
|
|
|
let NERDTreeShowHidden=1
|
|
|
|
au VimEnter * NERDTree
|
2021-07-04 16:02:22 +02:00
|
|
|
au VimEnter * if &filetype !=# 'gitcommit' | NERDTree | wincmd p | endif
|
2021-06-11 13:56:40 +02:00
|
|
|
nmap <C-h> <C-w>h
|
|
|
|
nmap <C-j> <C-w>j
|
|
|
|
nmap <C-k> <C-w>k
|
|
|
|
nmap <C-l> <C-w>l
|
|
|
|
|
2021-06-15 14:03:42 +02:00
|
|
|
nnoremap H gT
|
|
|
|
nnoremap L gt
|
2021-08-01 16:09:28 +02:00
|
|
|
:tnoremap <Esc> <C-\><C-n>
|
2021-06-15 14:03:42 +02:00
|
|
|
|
2021-06-11 13:56:40 +02:00
|
|
|
autocmd WinEnter * call s:CloseIfOnlyNerdTreeLeft()
|
|
|
|
|
|
|
|
" Close all open buffers on entering a window if the only
|
|
|
|
" buffer that's left is the NERDTree buffer
|
|
|
|
function! s:CloseIfOnlyNerdTreeLeft()
|
|
|
|
if exists("t:NERDTreeBufName")
|
|
|
|
if bufwinnr(t:NERDTreeBufName) != -1
|
|
|
|
if winnr("$") == 1
|
|
|
|
q
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
endfunction
|