-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.vimrc
108 lines (83 loc) · 2.14 KB
/
.vimrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
" vim-plug plugins
call plug#begin('~/.vim/plugged')
" Airline
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
" Markdown
Plug 'godlygeek/tabular'
Plug 'plasticboy/vim-markdown'
" Kotlin
Plug 'udalov/kotlin-vim'
" Go
Plug 'fatih/vim-go'
" Javascript & Web dev
Plug 'pangloss/vim-javascript'
Plug 'leafgarland/typescript-vim'
Plug 'maxmellon/vim-jsx-pretty'
Plug 'mattn/emmet-vim'
" Elixir
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'elixir-editors/vim-elixir'
" Others
Plug 'tpope/vim-surround'
" Plug 'tpope/vim-fugitive'
Plug 'scrooloose/nerdtree'
Plug 'scrooloose/syntastic'
Plug 'tomtom/tcomment_vim'
Plug 'mhinz/vim-startify'
Plug 'sheerun/vim-polyglot'
Plug 'airblade/vim-gitgutter'
Plug 'sonph/onehalf', { 'rtp': 'vim' }
Plug 'drewtempelmeyer/palenight.vim'
Plug 'morhetz/gruvbox'
Plug 'dracula/vim', { 'name': 'dracula' }
Plug 'catppuccin/vim', { 'as': 'catppuccin' }
Plug 'arcticicestudio/nord-vim'
" Java
"Plug 'williamboman/nvim-lsp-installer'
"Plug 'neovim/nvim-lspconfig'
call plug#end()
filetype plugin indent on
" Configure tabbing
set tabstop=2 shiftwidth=2 expandtab
" Add relative line numbers
set number relativenumber
" Configure airline theme
" let g:airline_theme='catppuccin_mocha'
let g:airline_theme='nord'
set nocompatible
" Configure theme
if has('termguicolors')
set termguicolors
endif
" let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
" let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
set background=dark
syntax on
" colorscheme catppuccin_mocha
colorscheme nord
" Show matching braces
set showmatch
" Enable right margin
set cc=120
set textwidth=120 " Auto wrap text at 120 characters
" Toggle cursors for Konsole
" let &t_SI = "\<Esc>]50;CursorShape=1\x7"
" let &t_SR = "\<Esc>]50;CursorShape=2\x7"
" let &t_EI = "\<Esc>]50;CursorShape=0\x7"
let &t_SI = "\<Esc>[6 q"
let &t_SR = "\<Esc>[4 q"
let &t_EI = "\<Esc>[2 q"
" Auto-close brackets
inoremap " ""<left>
inoremap ' ''<left>
inoremap ( ()<left>
inoremap [ []<left>
inoremap { {}<left>
inoremap {<CR> {<CR>}<ESC>O
inoremap {;<CR> {<CR>};<ESC>O
inoremap jk <Esc>
" Keyboard shortcuts
map <C-n> :NERDTreeToggle<CR>
let g:user_emmet_leader_key=','
set nofoldenable