-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdot_vimrc
206 lines (177 loc) · 5.23 KB
/
dot_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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
"エンコーディング
set encoding=utf-8
scriptencoding utf-8
" vim-plug
call plug#begin('~/.vim/plugged')
Plug 'itchyny/lightline.vim'
Plug 'kana/vim-tabpagecd'
Plug 'junegunn/fzf' , { 'dir': '~/.fzf', 'do': './install --all --no-update-rc' }
Plug 'junegunn/fzf.vim'
Plug 'tpope/vim-surround'
Plug 'tpope/vim-commentary'
Plug 'easymotion/vim-easymotion'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'Krasjet/auto.pairs'
Plug 'rhysd/clever-f.vim'
Plug 'kana/vim-operator-user'
Plug 'kana/vim-operator-replace'
Plug 'tpope/vim-fugitive'
Plug 'cocopon/iceberg.vim'
Plug 'preservim/nerdtree'
Plug 'dart-lang/dart-vim-plugin'
Plug 'liuchengxu/vim-which-key'
Plug 'thinca/vim-localrc'
Plug 'jparise/vim-graphql'
Plug 'tpope/vim-rails'
Plug 'peitalin/vim-jsx-typescript'
Plug 'lambdalisue/nerdfont.vim'
Plug 'lambdalisue/fern.vim'
Plug 'lambdalisue/fern-renderer-nerdfont.vim'
Plug 'preservim/vim-markdown'
Plug 'github/copilot.vim'
if has('python3')
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
Plug 'prabirshrestha/asyncomplete-ultisnips.vim'
endif
call plug#end()
let g:fern#renderer = "nerdfont"
if has('python3')
let g:UltiSnipsExpandTrigger="<c-e>"
" call asyncomplete#register_source(asyncomplete#sources#ultisnips#get_source_options({
" \ 'name': 'ultisnips',
" \ 'allowlist': ['*'],
" \ 'completor': function('asyncomplete#sources#ultisnips#completor'),
" \ }))
augroup ultisnip-dart
autocmd!
autocmd BufRead,BufNewFile,BufEnter *.dart UltiSnipsAddFiletypes dart-flutter
augroup END
endif
" call asyncomplete#register_source(asyncomplete#sources#emmet#get_source_options({
" \ 'name': 'emmet',
" \ 'whitelist': ['html'],
" \ 'completor': function('asyncomplete#sources#emmet#completor'),
" \ }))
let g:lsp_diagnostics_echo_cursor = 1
let g:vim_markdown_folding_disabled = 1
set signcolumn=yes
" noremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
" inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
" inoremap <expr> <cr> pumvisible() ? asyncomplete#close_popup() : "\<cr>"
" inoremap <expr> <cr> pumvisible() ? asyncomplete#close_popup() . "\<cr>" : "\<cr>"
"基本設定
set number
set title
syntax on
set re=0
set expandtab
set smarttab
set tabstop=4
set shiftwidth=4
" set smartindent
set ignorecase
set smartcase
set wrapscan
set laststatus=2
set showmode
set showcmd
set ruler
set hidden
set wildmenu
set wildmode=list:longest,full
set backspace=indent,eol,start
nnoremap j gj
nnoremap k gk
nnoremap gj j
nnoremap gk k
nnoremap <C-j> :bnext<cr>
nnoremap <C-k> :bprev<cr>
inoremap <silent>jj <ESC>
inoremap <C-b> <Left>
inoremap <C-f> <Right>
cnoremap <C-b> <Left>
cnoremap <C-f> <Right>
cnoremap <C-a> <HOME>
cnoremap <C-e> <END>
cnoremap <C-h> <BS>
cnoremap <C-d> <Del>
let mapleader="\<Space>"
nnoremap <silent><F12> <Plug>(coc-definition)
nnoremap <silent><F2> <Plug>(coc-rename)
nnoremap <silent><leader> :WhichKey '<Space>'<cr>
function! ShowDocumentation()
if CocAction('hasProvider', 'hover')
call CocAction('definitionHover')
endif
endfunction
let g:which_key_map = {
\ 'h': [':call ShowDocumentation()', 'hover-information'],
\ 'a': ['<Plug>(coc-codeaction)', 'code-action'],
\ 'd': [':CocDiagnostics', 'diagnostics'],
\ 'r': ['<Plug>(coc-references)', 'references']
\ }
call which_key#register('<Space>', "g:which_key_map")
"カラースキーム
set background=dark
silent! colorscheme iceberg
highlight Normal ctermbg=none
highlight NonText ctermbg=none
highlight LineNr ctermbg=none
highlight Folded ctermbg=none
highlight EndOfBuffer ctermbg=none
"自動コメントアウトをオフに
augroup auto_comment_off
autocmd!
autocmd BufEnter * setlocal formatoptions-=r
autocmd BufEnter * setlocal formatoptions-=o
augroup END
augroup dart
autocmd!
autocmd BufEnter *.dart setlocal tabstop=2
autocmd BufEnter *.dart setlocal shiftwidth=2
" autocmd BufWritePre *.dart execute('LspCodeActionSync source.organizeImports') | execute('LspCodeActionSync source.fixAll') | LspDocumentFormatSync
augroup END
"lightline
let g:lightline={
\ 'separator':{'left':"\ue0b0",'right':"\ue0b2"},
\ 'subseparator':{'left':"\ue0b1",'right':"\ue0b3"}
\ }
"Markdown
" augroup Markdown
" autocmd!
" autocmd BufNewFile,BufRead *.{md} set filetype=markdown
" autocmd BufWritePre *.md execute("LspDocumentFormatSync --server=efm-langserver")
" augroup END
"Makefile
augroup Makefile
autocmd!
autocmd FileType make setlocal noexpandtab
augroup END
augroup TypeScript
autocmd!
" autocmd BufWritePre *.ts execute("LspDocumentFormatSync --server=efm-langserver")
augroup END
augroup Scheme
autocmd!
autocmd FileType scheme setlocal noautoindent
augroup END
"sonictemplate
let g:sonictemplate_vim_template_dir=[
\ '~/.vim/template'
\ ]
"fzf-vim
nnoremap gf :Files<cr>
nnoremap gb :Buffers<cr>
"vim-easymotion
let g:EasyMotion_do_mapping = 0
nmap s <Plug>(easymotion-s2)
nnoremap <silent><ESC><ESC> :noh<cr>
map , <Plug>(operator-replace)
let g:clever_f_across_no_line = 1
let g:UltiSnipsExpandTrigger="<c-e>"
let g:UltiSnipsJumpForwardTrigger="<c-b>"
let g:UltiSnipsJumpBackwardTrigger="<c-z>"
nnoremap <silent><C-p> :Fern . -drawer<cr>
set notitle
set vb t_vb=