neovim으로 다시 돌아감

This commit is contained in:
2021-07-24 02:40:01 +09:00
parent ed5e9623f3
commit f11ad31663
8 changed files with 176 additions and 99 deletions

3
nvim/coc-settings.json Normal file
View File

@@ -0,0 +1,3 @@
{
"coc.preferences.formatOnSaveFiletypes": ["*"]
}

View File

@@ -1,17 +1,15 @@
call plug#begin('~/.local/share/nvim/plugged')
" Prettier
Plug 'prettier/vim-prettier', {
\ 'do': 'yarn install',
\ 'for': ['javascript', 'typescript', 'css', 'less', 'scss', 'json', 'graphql', 'markdown', 'vue', 'yaml', 'html'] }
call plug#begin(stdpath('data') . '/plugged')
" 아이콘 폰트 사용
Plug 'ryanoasis/vim-devicons'
" Start page
Plug 'mhinz/vim-startify'
" NERDTree
" NERDTree git
Plug 'preservim/nerdtree'
" NERDTree icon color
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
Plug 'preservim/nerdtree' |
\ Plug 'Xuyuanp/nerdtree-git-plugin' |
\ Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
" Restore Session
Plug 'tpope/vim-obsession'
@@ -24,14 +22,16 @@ Plug 'junegunn/fzf.vim'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
" 컬러 테마
Plug 'tomasiser/vim-code-dark'
Plug 'NLKNguyen/papercolor-theme'
Plug 'scheakur/vim-scheakur'
Plug 'junegunn/seoul256.vim'
" color scheme theme
Plug 'dracula/vim', { 'as': 'dracula' }
" automatic closing of quotes, parenthesis, brackets, etc.
Plug 'Raimondi/delimitMate'
" Language Pack
Plug 'sheerun/vim-polyglot'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'styled-components/vim-styled-components', { 'branch': 'main' }
" indent 표시
Plug 'Yggdroot/indentLine'
@@ -42,28 +42,12 @@ Plug 'wakatime/vim-wakatime'
" git status
Plug 'airblade/vim-gitgutter'
" Auto Complete
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
Plug 'Shougo/echodoc.vim'
" LSP
Plug 'autozimu/LanguageClient-neovim', {
\ 'branch': 'next',
\ 'do': 'bash install.sh',
\ }
Plug 'vim-scripts/SyntaxComplete'
" TypeScript
Plug 'HerringtonDarkholme/yats.vim'
Plug 'mhartington/nvim-typescript', {'do': './install.sh'}
Plug 'Shougo/denite.nvim'
call plug#end()
set smartindent
set backspace=2
set autoindent
set cindent
set backspace=2
set tabstop=2
set shiftwidth=2
set expandtab
@@ -72,47 +56,59 @@ set ruler
set title
set hlsearch
set cursorline
syntax on
syntax enable
set t_Co=256
if (has("termguicolors"))
set termguicolors
endif
set clipboard+=unnamedplus
if has('nvim')
set clipboard+=unnamedplus
else
set clipboard=unnamed
end
set laststatus=2
set shell=/bin/bash
set fillchars+=vert:┃
set mouse=a
if !has('nvim')
if has("mouse_sgr")
set ttymouse=sgr
else
set ttymouse=xterm2
end
end
lang ko_KR.UTF-8
set encoding=UTF-8
" theme config
let g:dracula_italic = 0
colorscheme dracula
hi Normal guibg=NONE ctermbg=NONE
" 단축키 설정
nmap <C-p> :FZF<cr>
nmap <Leader>p :FZF<cr>
nmap <Tab> :NERDTreeToggle<cr>
inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
inoremap <expr><s-tab> pumvisible() ? "\<c-p>" : "\<s-tab>"
" theme config
let g:PaperColor_Theme_Options = {
\ 'theme': {
\ 'default': {
\ 'transparent_background': 1
\ }
\ }
\ }
set background=light
colorscheme seoul256-light
hi Normal guibg=NONE ctermbg=NONE
hi EndOfBuffer guibg=NONE ctermbg=NONE
" detect extension
autocmd BufNewFile,BufRead *.tsx set filetype=typescriptreact
autocmd BufNewFile,BufRead *.jsx set filetype=javascriptreact
autocmd BufNewFile,BufRead .eslintrc,.prettierrc,.parcelrc set filetype=json
" devicons
let g:WebDevIconsUnicodeDecorateFolderNodes = 1
let g:DevIconsEnableFoldersOpenClose = 1
" airline
let g:airline_theme = 'base16'
let g:airline_theme='dracula'
let g:airline_powerline_fonts=0
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#tab_nr_type = 1 " tab number
@@ -129,28 +125,52 @@ let g:cpp_class_decl_highlight = 1
let g:cpp_concepts_highlight = 1
let g:cpp_experimental_template_highlight = 1
" LSP
let g:LanguageClient_serverCommands = {
\ 'rust': ['~/.cargo/bin/rustup', 'run', 'stable', 'rls'],
\ 'c': ['clangd'],
\ 'cpp': ['clangd'],
\ }
execute 'autocmd FileType '
\ . join(keys(g:LanguageClient_serverCommands), ',')
\ . ' autocmd BufWritePre <buffer> call LanguageClient#textDocument_formatting_sync()'
" deoplete
let g:deoplete#enable_at_startup = 1
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<S-TAB>"
set shortmess+=c
set completeopt-=preview
" echodoc
let g:echodoc#enable_at_startup = 1
let g:echodoc#type = 'floating'
highlight link EchoDocFloat Pmenu
" prettier
let g:prettier#autoformat = 1
let g:prettier#autoformat_require_pragma = 0
" nerdtree
let g:NERDTreeWinPos = 'right'
let g:NERDTreeShowHidden=1
let g:NERDTreeAutoDeleteBuffer=1
let g:NERDTreeMinimalUI=1
" If another buffer tries to replace NERDTree, put it in the other window, and bring back NERDTree.
autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 |
\ let buf=bufnr() | buffer# | execute "normal! \<C-W>w" | execute 'buffer'.buf | endif
" Open the existing NERDTree on each new tab.
autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif
let g:indentLine_char='│'
let g:indentLine_color_gui='gray'
"""
" Coc
"""
" Use K to show documentation in preview window.
nmap <leader>f <Plug>(coc-codeaction)
" GoTo code navigation.
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)
" Use K to show documentation in preview window.
nnoremap <silent> K :call <SID>show_documentation()<CR>
function! s:show_documentation()
call CocActionAsync('doHover')
endfunction
" Cursor symbol highlight
autocmd CursorHold * silent call CocActionAsync('highlight')
" Coc Prettier
command! -nargs=0 Prettier :CocCommand prettier.formatFile
""" delimitMate
let delimitMate_expand_cr=1