My self vim settings:
set nu
set nobackup
set hlsearch
set noswapfile
set encoding=utf-8
set nowrap
set cindent
set tabstop=4
set shiftwidth=4
set ruler
set nofoldenable
set scrolloff=5
set showmode
syntax enable
set guifont=Monospace 12
if exists(‘$TMUX‘)
set term=screen-256color
endif
if exists(‘$ITERM_PROFILE‘)
if exists(‘$TMUX‘)
let &t_SI = "<Esc>[3 q"
let &t_EI = "<Esc>[0 q"
else
let &t_SI = "<Esc>]50;CursorShape=1x7"
let &t_EI = "<Esc>]50;CursorShape=0x7"
endif
endif
filetype plugin indent on
call plug#begin(‘~/.vim/plugged‘)
Plug ‘scrooloose/nerdtree‘
Plug ‘jistr/vim-nerdtree-tabs‘
"Plug ‘Xuyuanp/nerdtree-git-plugin‘
" Plug ‘Valloric/YouCompleteMe‘
Plug ‘Raimondi/delimitMate‘
" Plug ‘Shougo/deoplete.nvim‘,{ ‘do‘: ‘:UpdateRemotePlugins‘ }
Plug ‘sheerun/vim-polyglot‘
Plug ‘w0rp/ale‘
Plug ‘rking/ag.vim‘
Plug ‘kien/ctrlp.vim‘
?
Plug ‘vim-airline/vim-airline‘
Plug ‘vim-airline/vim-airline-themes‘
Plug ‘scrooloose/nerdcommenter‘
Plug ‘srcery-colors/srcery-vim‘
Plug ‘scrooloose/syntastic‘
" Plug ‘nvie/vim-flake8‘
Plug ‘airblade/vim-gitgutter‘
Plug ‘tpope/vim-fugitive‘
Plug ‘mattn/emmet-vim‘
Plug ‘othree/html5.vim‘
Plug ‘hail2u/vim-css3-syntax‘
Plug ‘ap/vim-css-color‘
Plug ‘pangloss/vim-javascript‘
Plug ‘mxw/vim-jsx‘
call plug#end()
" autocmd vimenter * NERDTree
map <C-n> :NERDTreeToggle<CR>
let NERDTreeShowHidden=1
let g:NERDTreeShowIgnoredStatus = 1
let g:nerdtree_tabs_open_on_console_startup=1
let g:NERDTreeIndicatorMapCustom = {
"Modified" : "?",
"Staged" : "?",
"Untracked" : "?",
"Renamed" : "?",
"Unmerged" : "═",
"Deleted" : "?",
"Dirty" : "?",
"Clean" : "??",
‘Ignored‘ : ‘?‘,
"Unknown" : "?"
}
"o 打开关闭文件或目录
"e 以文件管理的方式打开选中的目录
" t 在标签页中打开
" T 在标签页中打开,但光标仍然留在 NERDTree
" r 刷新光标所在的目录
" R 刷新当前根路径
" X 收起所有目录
" p 小写,跳转到光标所在的上一级路径
" P 大写,跳转到当前根路径
" J 到第一个节点
" K 到最后一个节点
" I 显示隐藏文件
" m 显示文件操作菜单
" C 将根路径设置为光标所在的目录
" u 设置上级目录为根路径
" ctrl + w + w 光标自动在左右侧窗口切换
" ctrl + w + r 移动当前窗口的布局位置
" :tabc 关闭当前的 tab
" :tabo 关闭所有其他的 tab
" :tabp 前一个 tab
" :tabn 后一个 tab
" gT 前一个 tab
" gt 后一个 tab
let g:ale_linters = {
‘javascript‘: [‘eslint‘],
‘css‘: [‘stylelint‘],
}
let g:ale_fixers = {
‘javascript‘: [‘eslint‘],
}
let g:ale_fix_on_save = 1
let g:ale_sign_column_always = 1
let g:ale_sign_error = ‘●‘
let g:ale_sign_warning = ‘?‘
nmap <silent> <C-k> <Plug>(ale_previous_wrap)
nmap <silent> <C-j> <Plug>(ale_next_wrap)
?
let g:airline_theme=‘papercolor‘
"<leader>cc // 注释
"<leader>cm 只用一组符号注释
" <leader>cA 在行尾添加注释
" <leader>c$ /* 注释 */
" <leader>cs /* 块注释 */
" <leader>cy 注释并复制
" <leader>c<space> 注释/取消注释
" <leader>ca 切换 // 和 /* */
" <leader>cu 取消注释
let g:NERDSpaceDelims = 1
let g:NERDDefaultAlign = ‘left‘
let g:NERDCustomDelimiters = {
‘javascript‘: { ‘left‘: ‘//‘,‘leftAlt‘: ‘/**‘,‘rightAlt‘: ‘*/‘ },
‘less‘: { ‘left‘: ‘/**‘,‘right‘: ‘*/‘ }
}
" let g:user_emmet_leader_key=‘<Tab>‘
let g:user_emmet_settings = {
‘javascript.jsx‘ : {
‘extends‘ : ‘jsx‘,
},
}
?
augroup VimCSS3Syntax
autocmd!
autocmd FileType css setlocal iskeyword+=-
augroup END
?
let g:javascript_plugin_jsdoc = 1
let g:javascript_plugin_ngdoc = 1
?
"let g:javascript_plugin_flow = 1
set foldmethod=syntax
"let g:javascript_conceal_function = "?"
"let g:javascript_conceal_null = "?"
"let g:javascript_conceal_this = "@"
"let g:javascript_conceal_return = "?"
"let g:javascript_conceal_undefined = "?"
"let g:javascript_conceal_NaN = "?"
"let g:javascript_conceal_prototype = "?"
"let g:javascript_conceal_static = "?"
"let g:javascript_conceal_super = "Ω"
"let g:javascript_conceal_arrow_function = "?"
"let g:javascript_conceal_noarg_arrow_function = " "
"let g:javascript_conceal_underscore_arrow_function = " "
"set conceallevel=1
?
let g:jsx_ext_required = 0
"let g:prettier#config#bracket_spacing = ‘true‘
"let g:prettier#config#jsx_bracket_same_line = ‘false‘
"let g:prettier#autoformat = 0
" autocmd BufWritePre *.js,*.jsx,*.mjs,*.ts,*.tsx,*.css,*.less,*.scss,*.json,*.graphql PrettierAsync
" :Prettier
colorscheme srcerylet g:srcery_italic = 1