142 lines
4.2 KiB
VimL
142 lines
4.2 KiB
VimL
" This is vimrc file, using as the profile of vim.
|
||
" After modify vimrc, use `:so $MYVIMRC` to reload new profile.
|
||
|
||
" This part is only for gvim {{{
|
||
|
||
if has("gui_running")
|
||
if has("gui_gtk2")
|
||
set guifont=Inconsolata\ 12
|
||
elseif has("gui_macvim")
|
||
set guifont=Menlo\ Regular:h14
|
||
elseif has("gui_win32")
|
||
set guifont=Consolas:h12
|
||
endif
|
||
set go-=T
|
||
set go-=m
|
||
set go-=r
|
||
set go-=L
|
||
endif
|
||
|
||
" gvim part ends }}}
|
||
|
||
" Easymotion {{{
|
||
packadd! vim-easymotion
|
||
let g:EasyNotion_do_mapping = 0 " Disable default mapping
|
||
map <Leader> <Plug>(easymotion-prefix)
|
||
|
||
" <Leader>f{char} to move to {char}
|
||
map <Leader>f <Plug>(easymotion-bd-f)
|
||
nmap <Leader>f <Plug>(easymotion-overwin-f)
|
||
|
||
" s{char}{char} to move to {char}{char}
|
||
nmap s <Plug>(easymotion-overwin-f2)
|
||
|
||
" Move to line
|
||
map <Leader>L <Plug>(easymotion-bd-jk)
|
||
nmap <Leader>L <Plug>(easymotion-overwin-line)
|
||
|
||
" Move to word
|
||
map <Leader>w <Plug>(easymotion-bd-w)
|
||
nmap <Leader>w <Plug>(easymotion-overwin-w)
|
||
|
||
" Gif config
|
||
nmap s <Plug>(easymotion-s2)
|
||
nmap t <Plug>(easymotion-t2)
|
||
map / <Plug>(easymotion-sn)
|
||
omap / <Plug>(easymotion-tn)
|
||
|
||
" These `n` & `N` mappings are options. You do not have to map `n` & `N` to EasyMotion.
|
||
" Without these mappings, `n` & `N` works fine. (These mappings just provide
|
||
" different highlight method and have some other features )
|
||
map n <Plug>(easymotion-next)
|
||
map N <Plug>(easymotion-prev)
|
||
|
||
" Gif config
|
||
map <Leader>l <Plug>(easymotion-lineforward)
|
||
map <Leader>j <Plug>(easymotion-j)
|
||
map <Leader>k <Plug>(easymotion-k)
|
||
map <Leader>h <Plug>(easymotion-linebackward)
|
||
|
||
let g:EasyMotion_startofline = 0 " keep cursor column when JK motion
|
||
let g:Easymotion_smartcase = 1
|
||
" Easymotion }}}
|
||
|
||
" ale
|
||
" packadd! ale
|
||
" ale
|
||
|
||
" NerdTree {{{
|
||
packadd! nerdtree
|
||
nnoremap <leader>n :NERDTreeFocus<CR>
|
||
" }}}
|
||
|
||
filetype plugin indent on " Load plugins according to detected filetype.
|
||
syntax on " Enable syntax highlighting.
|
||
|
||
set autoindent " Indent according to previous line.
|
||
set expandtab " Use spaces instead of tabs.
|
||
set softtabstop =4 " Tab key indents by 4 spaces.
|
||
set shiftwidth =4 " >> indents by 4 spaces.
|
||
set shiftround " >> indents to next multiple of 'shiftwidth'.
|
||
|
||
set backspace =indent,eol,start " Make backspace work as you would expect.
|
||
set hidden " Switch between buffers without having to save first.
|
||
set laststatus =2 " Always show statusline.
|
||
set display =lastline " Show as much as possible of the last line.
|
||
|
||
set showmode " Show current mode in command-line.
|
||
set showcmd " Show already typed keys when more are expected.
|
||
|
||
set incsearch " Highlight while searching with / or ?.
|
||
set hlsearch " Keep matches highlighted.
|
||
|
||
set ttyfast " Faster redrawing.
|
||
set lazyredraw " Only redraw when necessary.
|
||
|
||
set splitbelow " Open new windows below the current window.
|
||
set splitright " Open new windows right of the current window.
|
||
|
||
set cursorline " Find the current line quickly.
|
||
set wrapscan " Searches wrap around end-of-file.
|
||
set report =0 " Always report changed lines.
|
||
set synmaxcol =200 " Only highlight the first 200 columns.
|
||
|
||
set list " Show non-printable characters.
|
||
|
||
if has('multi_byte') && &encoding ==# 'utf-8'
|
||
let &listchars = 'tab:▸ ,extends:❯,precedes:❮,nbsp:±'
|
||
else
|
||
let &listchars = 'tab:> ,extends:>,precedes:<,nbsp:.'
|
||
endif
|
||
|
||
" The fish shell is not very compatible to other shells and unexpectedly
|
||
" breaks things that use 'shell'.
|
||
if &shell =~# 'fish$'
|
||
set shell=/bin/bash
|
||
endif
|
||
|
||
if has('win32')
|
||
set shell=pwsh.exe
|
||
set shellcmdflag=-command
|
||
set shellquote=\"
|
||
set shellxquote=
|
||
endif
|
||
|
||
" Put all temporary files under the same directory.
|
||
" https://github.com/mhinz/vim-galore#temporary-files
|
||
set backup
|
||
set backupdir =$USERPROFILE/vimfiles/backup/
|
||
set backupext =-vimbackup
|
||
set backupskip =
|
||
set directory =$USERPROFILE/vimfiles/swap/
|
||
set updatecount =100
|
||
set undofile
|
||
set undodir =$USERPROFILE/vimfiles/undo/
|
||
|
||
" set textwidth =80
|
||
|
||
set updatetime =300
|
||
set signcolumn =yes
|
||
|
||
set foldmethod =manual
|