5일

Article/링크(tab 정리)

6일

7일

현재 쓰고 있는 .vimrc

set number relativenumber

set smartindent
set hlsearch

set history=1000
set ruler

"auto complete setting
set completeopt=longest,menuone

"better match when %
runtime macros/matchit.vim
syntax on

set noet
set sw=4
set sts=4
set ts=4
set wildmode=longest,full
set wildmenu

" indent inside style tag
let g:html_indent_style1 = "inc"

set nocompatible " be iMproved

" for plug in
call plug#begin('~/.vim/plugged')

" tools
Plug 'scrooloose/nerdtree'
Plug 'jistr/vim-nerdtree-tabs'
Plug 'editorconfig/editorconfig-vim'
Plug 'bronson/vim-trailing-whitespace'
Plug 'valloric/youcompleteme'

" language
Plug 'fatih/vim-go'
Plug 'jonsmithers/vim-html-template-literals'
Plug 'pangloss/vim-javascript'
Plug 'tikhomirov/vim-glsl'
Plug 'ekalinin/Dockerfile.vim'
Plug 'othree/html5.vim'
Plug 'walm/jshint.vim'
Plug 'stephpy/vim-yaml'
Plug 'groenewege/vim-less'
Plug 'maxmellon/vim-jsx-pretty'
Plug 'ruanyl/vim-sort-imports'

" Brief help
" :PluginList       - lists configured plugins
" :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
call plug#end()


" shortcut
set pastetoggle=<f2>
map <f3> :NERDTreeTabsToggle<cr>
map <f5> :make<cr>
map <c-f5> :!make<cr>
map <s-f5> :!make<cr>
map <f11> :FixWhitespace<cr>
nnoremap <f4> :grep -nIR <cword> .<cr>
vnoremap <f4> :y:grep -nIR<c-r>"<cr>
nmap <c-l><c-l> :set invrelativenumber<cr>

"go
autocmd FileType go nmap <leader>r <plug>(go-run)
autocmd FileType go nmap <leader>b <plug>(go-build)
autocmd FileType go nmap <leader>t <plug>(go-test)
autocmd FileType go nmap <f12> :GoDoc<cr>
autocmd FileType go nmap <c-f12> :GoDef<cr>
autocmd FileType go map  <c-f9> :GoRename<cr>
autocmd FileType go map  <c-f10> :GoImports<cr>

"mac button
"autocmd FileType go nmap <f7> <c-o>
"autocmd FileType go nmap <f8> :GoDef<cr>
"autocmd FileType go nmap <f9> <c-i>
"c, cpp
autocmd FileType c,cpp nmap <leader>r :make run<cr>
autocmd FileType c,cpp nmap <leader>t :!make test<cr>
autocmd FileType c,cpp map  <f7> :make<cr>
autocmd FileType c,cpp map  <c-f7> :!make<cr>
autocmd FileType c,cpp map  <f8> :!make run<cr>
"java
"autocmd FileType java imap <c-space> <c-x><c-u>
imap <nul> <c-x><c-u>

"javascript
autocmd FileType javascript nmap <leader>t :!mocha<cr>


autocmd FileType c,cpp,java,php,ruby,python,javascript,jsx,javascriptreact,go,html,xml,jsp,lua,makefile,css,stylesheet autocmd BufWritePre <buffer> :FixWhitespace
"taglist
"
"vim-go options
let g:go_highlight_types = 1
let g:go_highlight_functions = 1
let g:go_highlight_function_calls = 1
let g:go_imports_autosave = 0

"set backspace=2

" workaround NerdTree bug
"https://github.com/preservim/nerdtree/issues/1321#issuecomment-1234980190
let g:NERDTreeMinimalMenu=1

27일