Last active
October 13, 2020 18:34
-
-
Save hyochan/9dbc2e754dd1c8bf561abb317a3a6344 to your computer and use it in GitHub Desktop.
neovim config
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"coc.preferences.formatOnSaveFiletypes": ["css", "markdown", "ts", "tsx", "js", "jsx"], | |
"prettier.eslintIntegration": true | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
filetype plugin indent on | |
syntax on | |
set guicursor= | |
set nu | |
set nowrap | |
set undofile | |
set smartcase | |
set noshowmode | |
set tabstop=4 softtabstop=0 expandtab shiftwidth=2 smarttab | |
set formatprg=prettier | |
call plug#begin("~/.vim/plugged") | |
" Theme | |
Plug 'joshdick/onedark.vim' | |
" Language Client | |
Plug 'neoclide/coc.nvim', {'branch': 'release'} | |
let g:coc_global_extensions = ['coc-emmet', 'coc-css', 'coc-html', 'coc-json', 'coc-prettier', 'coc-tsserver'] | |
" TypeScript Highlighting | |
Plug 'leafgarland/typescript-vim' | |
Plug 'peitalin/vim-jsx-typescript' | |
" File Explorer with Icons | |
Plug 'preservim/nerdtree' | |
Plug 'Xuyuanp/nerdtree-git-plugin' | |
" Plug 'ryanoasis/vim-devicons' | |
" File Search | |
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } | |
Plug 'junegunn/fzf.vim' | |
Plug 'ianks/vim-tsx' | |
Plug 'pangloss/vim-javascript' | |
Plug 'leafgarland/typescript-vim' | |
Plug 'maxmellon/vim-jsx-pretty' | |
Plug 'peitalin/vim-jsx-typescript' | |
Plug 'styled-components/vim-styled-components', { 'branch': 'main' } | |
Plug 'jparise/vim-graphql' | |
Plug 'pantharshit00/vim-prisma' | |
call plug#end() | |
" Enable theming support | |
if (has("termguicolors")) | |
set termguicolors | |
endif | |
" Theme | |
syntax enable | |
colorscheme onedark | |
nnoremap <C-p> :FZF<CR> | |
let g:fzf_action = { | |
\ 'ctrl-t': 'tab split', | |
\ 'ctrl-s': 'split', | |
\ 'ctrl-v': 'vsplit' | |
\} | |
" requires silversearcher-ag | |
" used to ignore gitignore files | |
let $FZF_DEFAULT_COMMAND = 'ag -g ""' | |
" open new split panes to right and below | |
set splitright | |
set splitbelow | |
" turn terminal to normal mode with escape | |
tnoremap <Esc> <C-\><C-n> | |
" use alt+hjkl to move between split/vsplit panels | |
tnoremap <A-h> <C-\><C-n><C-w>h | |
tnoremap <A-j> <C-\><C-n><C-w>j | |
tnoremap <A-k> <C-\><C-n><C-w>k | |
tnoremap <A-l> <C-\><C-n><C-w>l | |
nnoremap <A-h> <C-w>h | |
nnoremap <A-j> <C-w>j | |
nnoremap <A-k> <C-w>k | |
nnoremap <A-l> <C-w>l | |
" start terminal in insert mode | |
au BufEnter * if &buftype == 'terminal' | :startinsert | endif | |
" open terminal on ctrl+; | |
" uses zsh instead of bash | |
function! OpenTerminal() | |
split term://bash | |
resize 10 | |
endfunction | |
nnoremap <c-n> :call OpenTerminal()<CR> | |
" onedark.vim override: Don't set a background color when running in a terminal; | |
if (has("autocmd") && !has("gui_running")) | |
augroup colorset | |
autocmd! | |
let s:white = { "gui": "#ABB2BF", "cterm": "145", "cterm16" : "7" } | |
autocmd ColorScheme * call onedark#set_highlight("Normal", { "fg": s:white }) " `bg` will not be styled since there is no `bg` setting | |
augroup END | |
endif | |
hi Comment cterm=italic | |
let g:onedark_hide_endofbuffer=1 | |
let g:onedark_terminal_italics=1 | |
let g:onedark_termcolors=256 | |
syntax on | |
colorscheme onedark | |
" checks if your terminal has 24-bit color support | |
if (has("termguicolors")) | |
set termguicolors | |
hi LineNr ctermbg=NONE guibg=NONE | |
endif | |
" prettier | |
command! -nargs=0 Prettier :CocCommand prettier.formatFile | |
vmap <leader>f <Plug>(coc-format-selected) | |
nmap <leader>f <Plug>(coc-format-selected) | |
" nerdtree | |
let g:NERDTreeShowHidden = 1 | |
let g:NERDTreeMinimalUI = 1 | |
let g:NERDTreeIgnore = [] | |
let g:NERDTreeStatusline = '' | |
" Automaticaly close nvim if NERDTree is only thing left open | |
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif | |
autocmd StdinReadPre * let s:std_in=1 | |
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif | |
" Toggle | |
" nnoremap <silent> <C-b> :NERDTreeToggle<CR> | |
nmap <C-e> :NERDTreeToggle<CR> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" onedark.vim override: Don't set a background color when running in a terminal; | |
if (has("autocmd") && !has("gui_running")) | |
augroup colorset | |
autocmd! | |
let s:white = { "gui": "#ABB2BF", "cterm": "145", "cterm16" : "7" } | |
autocmd ColorScheme * call onedark#set_highlight("Normal", { "fg": s:white }) " `bg` will not be styled since there is no `bg` setting | |
augroup END | |
endif | |
hi Comment cterm=italic | |
let g:onedark_hide_endofbuffer=1 | |
let g:onedark_terminal_italics=1 | |
let g:onedark_termcolors=256 | |
syntax on | |
colorscheme onedark | |
" checks if your terminal has 24-bit color support | |
if (has("termguicolors")) | |
set termguicolors | |
hi LineNr ctermbg=NONE guibg=NONE | |
endif |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment