Vimã®æäœã§ã¯ãããŒãã«ã¢ãŒããšããžã¥ã¢ã«éžæã¢ãŒãã®æäœæ§ã®çµ±äžã倧åã ãVimã¯æåãå ¥åããã¢ãŒããšãæåãç·šéããã¢ãŒããæç¢ºã«åããããŠããããã®ãããæ¬é£èŒã§ç޹ä»ããŠãããããªã«ãŒãœã«ã®ç§»åãå¯èœãªã®ã ãããããŸã§ã®èšå®ã¯ããŒãã«ã¢ãŒããåæãšãããã®ã§ãã£ããããããžã¥ã¢ã«ã¢ãŒãã§ã¯åãããã«æ©èœããªãéšåããããããŒãã«ã¢ãŒãã§ã®ã«ãŒãœã«ã®é«éç§»åã«æ £ããŠãããšãåãæäœãããžã¥ã¢ã«ã¢ãŒãã§äœ¿ããªãã®ã¯ããªãã¹ãã¬ã¹ãããŸãã ãããä»åã¯ãã®éšåãæ¹åããŠããã
ããžã¥ã¢ã«ã¢ãŒãã§ã(ããšã)ãã§ç§»å
ååãäžæåäœã§ã®ç§»åã§ããã(ããšã)ããæ¥æ¬èªã®å¥èªç¹ã«å¯ŸããŠãæ©èœããããã«ããèšå®ãåãäžãããããã䜿ãããšãã«ãŒãœã«ã®ç§»åãå°ãæ©ãã§ããããã«ãªãããã®ç§»åéåºŠã«æ £ããŠãããšãããžã¥ã¢ã«éžæã¢ãŒãã§ãåãããã«ç§»åã§ããããã«ããããšæãã¯ãã ã
æ¬é£èŒã§ã¯ä»¥åããvisãã§ã®äžæéžæãæ¥æ¬èªæã«å¯ŸããŠãæ©èœããããã«æ¡åŒµããèšå®ãåãäžããããvisã ãšäžæãå šéžæãããŠããŸããã ããã«ãŒãœã«ã®ãããšãããããã®ææ«ãŸã§ããŸãã¯ãã«ãŒãœã«ã®ãããšããããæé ãŸã§ãéžæããŠã³ããŒããããåé€ããããããããšãããããããªãšããvisã§ã¯éžæç¯å²ãåºãããã®ã ã
ãšãªããšãããžã¥ã¢ã«éžæã¢ãŒãã«å ¥ã£ãŠããã(ããŸãã¯ã)ãã§å¥èªç¹ãžã«ãŒãœã«ãç§»åããŠããããšå¬ãããããã§ãããã§ã¯æ¬¡ã®èšå®ã§æ©èœã远å ããã
vnoremap ( hh?\(ã\\|ã\\|[.:][ \t\n]\)<CR>l
vnoremap ) /\(ã\\|ã\\|[.:][ \t\n]\\|^\n\)<CR>
åäœã確èªããŠã¿ããããŸãããCtrlãïŒãvãã§æååäœã®ããžã¥ã¢ã«éžæã¢ãŒããžç§»è¡ããã
次ã«ã)ããå ¥åãããããã©ã«ãã§ã¯ã)ããå ¥åããŠãæå³ããããã«ã¯åããªãã®ã ããäžèšãèšå®ããŠããã°ã次ã®ããã«æ¥æ¬èªã®æ¬¡ã®å¥èªç¹ãžã«ãŒãœã«ãç§»åããã
æ³å®éãã«æ©èœããŠãããä»åºŠã¯ã(ãã®åäœã確èªããŠã¿ããããŸãããCtrlãïŒãvãã§æååäœã®ããžã¥ã¢ã«éžæã¢ãŒããžç§»è¡ããã
ã(ãã§1ã€åã®å¥èªç¹ãžã«ãŒãœã«ãç§»åããããšã確èªã§ããã
ããžã¥ã¢ã«éžæã¢ãŒãã§éžæåŠçãé«éåã§ãããšããªãæ°æã¡ãè¯ããæåã®éžæã¯ãç·šéäžã«è¡ãããšãå€ããç¹å®ã®å Žæããæã®å é ãŸã§ããŸãã¯ãææ«ãŸã§ãéžæããŠåé€ããããåé€ããŠããå¥ã®æã«è²Œãä»ããããšãã£ã现ããäœæ¥ãçºçããããã®éžæåŠçãçŽ æ©ããã°ãããšãã§ãããšãããªãã®æçã«ãªãã¯ãã ããã²ãšã身ã«ä»ããŠããã ãããã
ããžã¥ã¢ã«ã¢ãŒãã§ãCtrlãïŒãAããšãCtrlãïŒãEãã§ç§»å
ååãè¡é ã«ç§»åããæ¹æ³ãšè¡æ«ã«ç§»åããæ¹æ³ãšããŠãCtrlãïŒãAããšãCtrlãïŒãEããåãäžãããããã¯Vimã§ã¯ããã©ã«ãèšå®ãããŠããªãã·ã§ãŒãã«ããããŒãªã®ã ãããããã®ããŒãè¡é ïŒè¡æ«ãžã®ç§»åã·ã§ãŒãã«ããã«èšå®ããŠããã¢ããªã±ãŒã·ã§ã³ã¯å€ãããã®ãããVimã§ããã®èšå®ãæå¹ã«ããŠãããšãã»ãã®ã¢ããªã±ãŒã·ã§ã³ãšåãæäœãã§ããããã«ãªãã®ã§äœ¿ãããããªãã ããããšãã説æãããã
åœç¶ãåãããžãã¯ã¯ããžã¥ã¢ã«éžæã¢ãŒãã«ãããŠãåœãŠã¯ãŸããããžã¥ã¢ã«éžæã¢ãŒãã§ããCtrlãïŒãAããšãCtrlãïŒãEãã§è¡é ïŒè¡æ«ãžç§»åããŠãããã»ããæäœã«äžè²«æ§ãçãŸããããã®èšå®ã¯æ¬¡ã®éãã ã
vnoremap <C-a> <Home>
vnoremap <C-e> <End>
åäœã確èªããŠã¿ããããŸãããCtrlãïŒãvãã§ããžã¥ã¢ã«éžæã¢ãŒããžå ¥ãã
ãã®ç¶æ ã§ãCtrlãïŒãAããæŒãã°ã«ãŒãœã«ã¯è¡é ãžç§»åãããCtrlãïŒãEããæŒãã°ã«ãŒãœã«ã¯è¡æ«ãžç§»åããã
ããŒãã«ã¢ãŒãã§ã®ã«ãŒãœã«ç§»åã®é«éåãé²ãã§ããããæ¬¡ã¯ããžã¥ã¢ã«éžæã¢ãŒãã ããã¡ãã«é¢ããŠãããŒãã«ã¢ãŒããšåãç§»åãã§ããããã«èª¿æŽããŠããããšã§ãããå¹çã®è¯ãç·šéãå¯èœã«ãªãã
ããžã¥ã¢ã«ã¢ãŒãã§w qã§ç§»å
Vimã«ãããåèªåäœã®ç§»åã¯ãwããšãbãã代衚çã ããwãã§æ¬¡ã®åèªã®é ããbãã§åã®åèªã®é ãžç§»åããŠãããååã¯ã»ãã®ã·ã§ãŒãã«ããããŒãšåãããã«ååŸã®ç§»åãé£ã®ããŒã«å²ãåœãŠãããšããããšã§ããbãã®æ©èœããqãã«å²ãåœãŠããããã§ãqããwããšããé£ãåã£ãããŒããåã®åèªã®é ãžç§»åããæ¬¡ã®åèªã®é ãžç§»åããšããåŠçã«ãªããæçã§åèªåäœã®ç§»åãå¯èœã«ãªã£ãŠäŸ¿å©ã ããšãã話ãããã
ããžã¥ã¢ã«éžæã¢ãŒãã§ããwããbãã«ããåèªéç§»åãå¯èœã ãããããåœç¶ã ããqãã§ã¯ç§»åã§ããªãããšããããšã§ãããžã¥ã¢ã«éžæã¢ãŒãã§ããqãã§ãbããšåãç§»åãå¯èœã«ãªãããã«æ¬¡ã®èšå®ã远å ããã
vnoremap q b
ããã§ããžã¥ã¢ã«éžæã¢ãŒãã«ãããŠããwããqãã§åèªéãç§»åã§ããããã«ãªããããžã¥ã¢ã«éžæã¢ãŒãã§ææ©ãçã£ãç¯å²ãéžæã§ãããšç¯å²èª¿æŽã§ãã¹ãããããšãæžããããèŠãã®èšå®ã ã
ãã®ããã«Vimã§ã¯ã«ãŒãœã«ã®ç§»åã«é¢ããŠããªãèªç±ã«èšå®ãè¡ãããšãã§ãããç·šéãããã¡ã€ã«ã®çš®é¡ããšã«ç§»åãããå Žæãšããã®ã¯å€ãããã®ã ããVimã§ã¯ããã«é©ããã·ã§ãŒãã«ããç§»åãèšå®ããããšãã§ããããªããªããããèšå®ããæ¹ã¯å°ãªãããšæããããããèšå®ãããšããªããšã§ã¯ãæäœã®æéã倧ããéã£ãŠããããã²ãšãç¹°ãè¿ãå¿ èŠã«ãªãç§»åãã¿ãŒã³ãæŽçããã·ã§ãŒãã«ããã§ææ©ãç§»åã§ããããã«åãçµãã§ãããããã
ä»é²: 䜿ã£ãŠããèšå®ãã¡ã€ã«ãšã»ããã¢ããæ¹æ³
ãã©ã°ã€ã³ã䜿ãããã«Deinãã»ããã¢ããããæ¹æ³
mkdir -p ~/.cache/dein
cd ~/.cache/dein/
curl https://raw.githubusercontent.com/Shougo/dein.vim/master/bin/installer.sh > installer.sh
sh ./installer.sh .
rm ./installer.sh
æ¬é£èŒã§äœ¿ã£ãŠãã~/.vimrcãã¡ã€ã«
"dein Scripts=============================
if &compatible
set nocompatible " Be iMproved
endif
" Required:
set runtimepath+=~/.cache/dein/./repos/github.com/Shougo/dein.vim
" Required:
if dein#load_state('~/.cache/dein/.')
call dein#begin('~/.cache/dein/.')
" Let dein manage dein
" Required:
call dein#add('~/.cache/dein/./repos/github.com/Shougo/dein.vim')
" Add or remove your plugins here
call dein#add('junegunn/seoul256.vim')
call dein#add('vim-airline/vim-airline')
call dein#add('vim-airline/vim-airline-themes')
call dein#add('preservim/nerdtree')
call dein#add('tpope/vim-commentary')
call dein#add('tpope/vim-fugitive')
call dein#add('fholgado/minibufexpl.vim')
call dein#add('dense-analysis/ale')
call dein#add('junegunn/fzf', {'build': './install --all'})
call dein#add('junegunn/fzf.vim')
call dein#add('sheerun/vim-polyglot')
call dein#add('junegunn/vim-easy-align')
" Required:
call dein#end()
call dein#save_state()
endif
" Required:
filetype plugin indent on
syntax enable
" If you want to install not installed plugins on startup.
if dein#check_install()
call dein#install()
endif
" seoul256
let g:seoul256_background = 233
colo seoul256
" vim-airline
let g:airline_powerline_fonts = 1
let g:airline_theme = 'molokai'
" NERDTree
" <C-o> open NERDTree
nnoremap <silent> <C-o> :NERDTreeToggle<CR>
" minibufexpl
nnoremap <silent> bn :<C-u>:bnext<CR>
nnoremap <silent> b1 :<C-u>:b1<CR>
nnoremap <silent> b2 :<C-u>:b2<CR>
nnoremap <silent> b3 :<C-u>:b3<CR>
nnoremap <silent> b4 :<C-u>:b4<CR>
nnoremap <silent> b5 :<C-u>:b5<CR>
nnoremap <silent> b6 :<C-u>:b6<CR>
nnoremap <silent> b7 :<C-u>:b7<CR>
nnoremap <silent> b8 :<C-u>:b8<CR>
nnoremap <silent> b9 :<C-u>:b9<CR>
" fzf
nnoremap <silent> fzf :Files<CR>
nnoremap <silent> ls :Buffers<CR>
" vim-easy-align
xmap ga <Plug>(EasyAlign)
nmap ga <Plug>(EasyAlign)
"End dein Scripts=========================
set number
syntax on
set whichwrap=b,s,[,],<,>,~,h,l
set cursorline
set incsearch
set hlsearch
set ignorecase
nnoremap k gk
nnoremap gk k
nnoremap j gj
nnoremap gj j
nnoremap q b
vnoremap q b
nnoremap <Tab> 15<Right>
nnoremap <S-Tab> 15<Left>
nnoremap vis ?\(ã\\|\.\\|^$\\|>\)<CR>lv/\(ã\\|\.\\|^$\\|<\\|:\)<CR>
nnoremap >< /<\([^>/]\+\)><\/\1><CR>/<<CR>
nnoremap <> ?<<CR>h?<\([^>/]\+\)><\/\1><CR>/<<CR>
nnoremap ( ?\(ã\\|ã\\|[.:][ \t\n]\)<CR>h?\(ã\\|ã\\|[.:][ \t\n]\)<CR>l
vnoremap ( hh?\(ã\\|ã\\|[.:][ \t\n]\)<CR>l
nnoremap ) /\(ã\\|ã\\|[.:][ \t\n]\\|^\n\)<CR>l
vnoremap ) /\(ã\\|ã\\|[.:][ \t\n]\\|^\n\)<CR>
nnoremap "" /""<CR>l
nnoremap '' /''<CR>l
nnoremap :: ?""<CR>l
nnoremap ;; ?''<CR>l
nnoremap <C-a> <Home>
inoremap <C-a> <Home>
cnoremap <C-a> <Home>
vnoremap <C-a> <Home>
nnoremap <C-e> <End>
inoremap <C-e> <End>
cnoremap <C-e> <End>
vnoremap <C-e> <End>











