ååãæ¬¡ã®Vimãã©ã°ã€ã³ãšããŠãjunegunn/vim-easy-alignããã€ã³ã¹ããŒã«ãããããªãã¿åºåãã®ããã¹ãããŒã¿ãã¹ãã¬ããã·ãŒãã¢ããªã±ãŒã·ã§ã³ã®ããã«è¡šç¶ã«æŽçããVimãã©ã°ã€ã³ã ããããããã©ã°ã€ã³ã¯ã»ãã«ãããã€ãååšããŠããããããããã©ã°ã€ã³ã®ãªãã§ãvim-easy-alignã¯å©çšè ãå€ããèšå®ãè±å¯ã§ã衚ããŒã¿ã®ã¿ãªããJSONãããã°ã©ãã³ã°èšèªãšãã£ãæ§é åãããããã¹ãããŒã¿ãæŽçã§ãããšããã人æ°ã®ããçç±ãããããªãã
ä»åã¯vim-easy-alignã䜿ã£ãŠããªãã¿åºåãã®ããã¹ãããŒã¿ã衚圢åŒã«å€æããéã®åºæ¬çãªæäœæ¹æ³ãåãäžãããããã¹ãããŒã¿ã衚圢åŒã«æŽçããæ¹æ³ã¯ãããããšå¿çšãå¹ãã®ã§ãç¥ã£ãŠãããŠæã¯ãªãã ããã衚圢åŒããŒã¿ã®æŽçãã§ãããšããããšã¯ã2å€ã®ããã¹ãããŒã¿ã®æŽçãåœç¶è¡ãããšãã§ãããäœããšäŸ¿å©ãªæäœæ¹æ³ã ã
vim-easy-alignã®äœ¿ãæ¹ åºç€
æäœããããã¹ãããŒã¿ã¯äœã§ããããããªãã¿åºåãã®ããã¹ãããŒã¿ã§ä»£è¡šçãªãã®ã¯ã«ã³ãåºåãã®CSVããŒã¿ã ããã®é¡äŒŒããŒã¿ãšããŠã¯ã空çœåºåãã®SSVããŒã¿ãã¿ãåºåãã®TSVããŒã¿ãªã©ããããäŸãã°ãLinuxã®èšå®ãã¡ã€ã«ã®äŸã ãšãã¢ã«ãŠã³ãããŒã¿ãä¿æããŠãã/etc/passwdãã³ãã³åºåãã®ããŒã¿ã«ãªã£ãŠãããããã衚ããŒã¿ã®äžã€ãšããããšã«ãªããä»åã¯/etc/passwdãvim-easy-alignã§æäœããŠã¿ãã
ãŸããæãåºæ¬çãªæäœãšããŠãvipga:ããåãäžããããvipãã§ããŒã¿ãããžã¥ã¢ã«éžæããgaãã§vim-easy-alignã®åŒã³åºããã:ãã§ããªãã¿ãæå®ãã ããã®æå®æ¹æ³ã§ãã®è¡ã®æåã®ã:ããåºåãæåãšããŠããŒã¿ãæŽçãããå®è¡ãããšæ¬¡ã®ããã«ãªãã
ãã£ãšçãå ¥åããããªããgaip:ãã§ããããé ã®ãªãã§æäœã®ã€ã¡ãŒãžãã§ããŠãããªãããã¡ãã®ã»ããæäœãéããŠæžãããã ãããã®æ¹æ³ã ãšæç€ºçã«ããžã¥ã¢ã«éžæã衚瀺ãããããã§ã¯ãªãã®ã§ãéžæãããŠããç¯å²ããããã«ããããã®ãããæ¬çš¿ã§ã¯ãvipãã®ã»ãã§æäœãçµ±äžããŠããããvipãã§ç®çã®ç¯å²ãéžæãããªãå Žåã«ã¯ããããŸã§ã«èª¬æããæ¹æ³ã§ããžã¥ã¢ã«éžæãè¡ãããã®åŸã§ãgaããå ¥åããŠvim-easy-alignã®æ©èœãå®è¡ããŠã¿ãŠã»ããã
å ã»ã©ã¯ã2å€ã®ããŒã¿æŽçã«ãªã£ãŠãããæ¬¡ã¯ãvipga*:ãã ããvipãã§å¯Ÿè±¡ãããžã¥ã¢ã«éžæããgaãã§vim-easy-alignã®æ©èœã«å ¥ããã*:ãã§å šãŠã®ã:ãã察象ãšã衚çãªããŒã¿ãšããŠåŠçãè¡ããå ã»ã©ãšã®éãã¯ã:ããã*:ããã ãvim-easy-alignã§ã¯åºæ¬çã«ãå Žæããããªãã¿ããšããæå®ãè¡ããã:ãã ãæå®ãããšãã¯ã1:ããšããæå®ãããã®ãšåãæå³ãšããŠåŠçãããŠãããçç¥åœ¢ã§ã®æå®ãšããæ±ãã«ãªããã*ãã¯ã¯ã€ã«ãã«ãŒãã§å šãŠã®ããªãã¿ã察象ãšããŠããããã®ããããvipga*:ãã§å¯Ÿè±¡ã衚ãšããŠåŠçãããšããããšã«ãªããå®è¡ãããšæ¬¡ã®ããã«ãªãã
vim-easy-alignã¯å¯Ÿè±¡æå®ã«ã*ãã ãã§ã¯ãªãã**ããšããã¯ã€ã«ãã«ãŒãã2åç¶ãã衚èšãçšæããŠãããããã¯å®è¡çµæãèŠãŠã¿ãã»ããããããããã ãããæ¬¡ã®ã¹ã¯ãªãŒã³ã·ã§ããããvipga**:ãã®å®è¡çµæã ã
ã*ãã§æŽçããå Žåãããããã®ã»ã«ã¯å·Šå¯ãã«ãªã£ãŠãããã**ãã§æŽçããå Žåãå¯ãã®æ¹åãè¡é ããé ã«å·Šå¯ããå³å¯ããå·Šå¯ããå³å¯ããå·Šå¯ããå³å¯ãâŠâŠãšäº€äºã«ãªã£ãŠãããã©ãã«éèŠãããã®ãããããããªãããããããæå®ãå¯èœã ã
ãvipga5:ãã®ããã«ãããšã5ã€ç®ã®åã«å¯ŸããŠåŠçãè¡ãããšãã§ããããŸããããã¹ãããŒã¿ããvipga*ãã§æ¬¡ã®ããã«è¡šãšããŠæŽçããç¶æ ã«ããŠããã
次ã«ããvipga5â©ïž:ããšå®è¡ãããããã§5åç®ãå³å¯ãã«ãªãããEnterãããŒãæŒããšãå¯ãã®æ¹åãããã©ã«ãã®å·Šå¯ãããå³å¯ãã«å€ãããå®è¡ãããšæ¬¡ã®ããã«ãªãã
ãvipga*:ãããåŸã®ç¶æ ãããvipga5â©ïžâ©ïž:ãã®ããã«å®è¡ãããšãä»åºŠã¯5åç®ãäžå€®å¯ãã«ãªãããEnterãããŒãæŒãããšã§ã(å·Šå¯ã)âå³å¯ãâäžå€®å¯ãâå·Šå¯ãâå³å¯ãâäžå€®å¯ãâŠâŠãšå¯ããæ¹åãå€ãã£ãŠããããã®ããããEnterãããŒ2åã§äžå€®å¯ãã«ãªã£ãŠããã
ããäžã€ãããªãã¿ã®äœçœ®ã調æŽããæ¹æ³ãåãäžããŠããããŸããåºæ¬ãšãªãvipga*:ã«æ»ã£ãŠãããã
ãã®å Žåãããªãã¿ãã»ã«ã®ããã¹ãã®ã»ãã«ãã£ã€ããŠããç¹ã«æ³šç®ããŠã»ããããvipga*:ããå®è¡ããåã®çŽ ã®ããã¹ãããŒã¿ã«æ»ããç¶æ ã§ãä»åºŠã¯ãvipga*â:ããšå®è¡ããããâãã¯ãã³ããŒã®å³ç¢å°ã ãå®è¡ãããšæ¬¡ã®ããã«ãªãã
ä»åºŠã¯ããªãã¿ãã»ã«ãšã¯ç¬ç«ããŠãããåäœãšããŠæŽã£ãããšããããããã®å Žåã¯ã:ãã ãããããã|ãã ã£ãããããšããªã衚æãåºãŠããããã®ããã«ãâãã¯ããªãã¿ãç¬ç«ãããæå®ã§ãããéã«ãâãã«ãããšã»ã«ã®ããã¹ãã«ãã£ã€ãããã«ãªãã
ãããŸã§ã«èª¬æããŠããããã«ãåŠçã¯åããšã«æå®ããããšãã§ãããäŸãã°ãçŽ ã®ããã¹ãããŒã¿ã®ç¶æ ãããvipga*â:vipga1:ãã®ããã«å ¥åããã°ã1åç®ã¯ããªãã¿ãã»ã«ã«æ¥ç¶ãã2ã€ç®ä»¥éã®ããªãã¿ãç¬ç«ããããã«ãªãã
ããã¹ãããŒã¿ã衚ãšããŠæŽçãããšãªããšãããªãã¿ã®äœçœ®ãæããŠè¡šã®ããã«èŠããããšããã®ã¯ããããããšã ãä»ååãäžããã®ã¯åºæ¬çãªæäœã ããããã ãã§ãå€ãã®ããšãã§ããã
ãvipga*â:vipga1:ãã®ãããªæäœã«ãªã£ãŠãããšããããåªææãåºãŠããããäžèšã§èª¬æããããã«æ £ããŠããŸãã°ã·ã³ãã«ãªæäœã§ããããããããããã®ã ãVimã¯ãã®ããã«æäœã®ç®çã«å¿ããŠãã©ã°ã€ã³ãèšå®ããŠåœä»€ãæŽããŠããããšã§ãèªåã ãã®é«å¹çç·šéç°å¢ãçšæããŠããããšãã§ãããæŽçã«æè³ããã ãã®èŠè¿ããåŸããããšãã£ã¿ã§ãããåŸå°ãã ããããã¡ãã£ãšã ããšã€ãå ¥ã蟌ãã§ããŸãããããâæ²Œâããæä»¥ã ã
ä»é²: vim-easy-alignã®äž»ãªèšå®ãšæäœæ¹æ³
| æäœ | å 容 |
|---|---|
| ããŒãã«ã¢ãŒãã§:EasyAlignãŸãã¯ããžã¥ã¢ã«ã¢ãŒãã§ga | vim-easy-alignã®ã€ã³ã¿ã©ã¯ãã£ãã¢ãŒããèµ·åããã |
| ããã©ã«ãã®ããªãã¿æå | åè |
|---|---|
| ç©ºçœ = : , | . # & | =ã¯==ã!=ã+=ãšãã£ãããã«çå·ãå«ãæŒç®åãããªãã¿ãšèªèãããã |
| Ctrl-X æ£èŠè¡šçŸ | Ctrl-Xãå ¥åãããšãã®ããšã¯ããªãã¿ãšããŠæ£èŠè¡šçŸã䜿çšã§ããã |
| ã㌠| å 容 |
|---|---|
| ããªãã¿ | æåã«äžèŽããããªãã¿ã§å·Šæãã |
| 2ããªãã¿ | 2çªç®ã«äžèŽããããªãã¿ã§å·Šæãã |
| 3ããªãã¿ | 3çªç®ã«äžèŽããããªãã¿ã§å·Šæãã |
| -ããªãã¿ | æåŸã«äžèŽããããªãã¿ã§å·Šæãã |
| -2ããªãã¿ | æåŸãã1ã€åã«äžèŽããããªãã¿ã§å·Šæãã |
| -3ããªãã¿ | æåŸãã2ã€åã«äžèŽããããªãã¿ã§å·Šæãã |
| *ããªãã¿ | äžèŽãããã¹ãŠã®ããªãã¿ã§å·Šæãã |
| **ããªãã¿ | äžèŽãããã¹ãŠã®ããªãã¿ã§æãïŒå·Šæããšå³æãã亀äºã«é©çšïŒã |
| ã㌠| äœçœ® | å 容 |
|---|---|---|
| â©ïž | æå | æŒãããšã«å³æããäžå€®æããå·Šæãã峿ããäžå€®æããå·ŠæãâŠããšæãã倿Žã |
| ã·ã§ãŒãã«ããã㌠| ãªãã·ã§ã³ã | å€ |
|---|---|---|
| Ctrl-F | filter | æåå([gv]/.*/?) |
| Ctrl-I | indentation | shallowãdeepãnoneãkeep |
| Ctrl-L | left_margin | æ°åãŸãã¯æåå |
| Ctrl-R | right_margin | æ°åãŸãã¯æåå |
| Ctrl-D | delimiter_align | leftãcenterãright |
| Ctrl-U | ignore_unmatched | 0ã1 |
| Ctrl-G | ignore_groups | [], [âStringâ], [âCommentâ], [âStringâ, âCommentâ] |
| Ctrl-A | align | æåå(/[lrc]+\*{0,2}/) |
| â | stick_to_left | { âstick_to_leftâ: 1, âleft_marginâ: 0 } |
| â | stick_to_left | { âstick_to_leftâ: 0, âleft_marginâ: 1 } |
| â | *_margin | { âleft_marginâ: 0, âright_marginâ: 0 } |
ä»é²: 䜿ã£ãŠããèšå®ãã¡ã€ã«ãšã»ããã¢ããæ¹æ³
ãã©ã°ã€ã³ã䜿ãããã«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









