Slide 1

Slide 1 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 vimの操作と俺と ホットキー 伊藤 邦彦 Toyamarb#17 エディタについて語ろう会 2017-05-13

Slide 2

Slide 2 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 p self name: 伊藤 邦彦 ✓ github: kunitoo ✓ work: [Ruby, Rails, Neo4j] ✓

Slide 3

Slide 3 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 My Editor History Eclipse(Emacs key bind) ✓ Emacs ✓ Vim ✓

Slide 4

Slide 4 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 きっかけ https://www.slideshare.net/pharaohkj/ ss-70439887

Slide 5

Slide 5 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 俺とホットキー 大変共感しました ✓ 自分の使ってる Vim はこうだ よって言いたい 比較みたいにまとめてみました ✓ Vimではホットキーというかは微妙ですが ✓ ✓

Slide 6

Slide 6 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 キーの表記 Control key と v を同時に入力 Vim Ctrl-v ✓ Emacs Ctrl + v "俺とホットキー"の表記 ✓

Slide 7

Slide 7 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 上下左右 Vim j k h l ✓ Emacs (Ctrl + p ・ 同n ・ 同b ・同f)

Slide 8

Slide 8 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 範囲選択開始 Vim v ✓ Emacs (Ctrl + h, Ctrl +h)

Slide 9

Slide 9 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 コピー Vim y ✓ yy (1行コピー) ✓ Emacs (Cmd + w)

Slide 10

Slide 10 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 カット Vim d ✓ dd (1行カット) ✓ Emacs (Ctrl + w)

Slide 11

Slide 11 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 ペースト Vim p ✓ Emacs (Ctrl + y)

Slide 12

Slide 12 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 アンドゥ・リドゥ Vim u ✓ Ctrl-r ✓ Emacs (Ctrl + - ・ Ctrl + ?)

Slide 13

Slide 13 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 矩形選択 Vim Ctrl-v ✓ Emacs (Ctrl + h > Ctrl + b)

Slide 14

Slide 14 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 カーソル単語選択 Vim viw ✓ Emacs (Cmd + , )

Slide 15

Slide 15 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 単語右・左 Vim w (words forward) ✓ b (words backward) ✓ Emacs (Cmd + f ・ Cmd + b)

Slide 16

Slide 16 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 行末・行頭 Vim $ ✓ 0 ✓ Emacs (Ctrl + e ・ Ctrl + a > Ctrl + a)

Slide 17

Slide 17 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 論理行頭 Vim ^ ✓ Emacs (Ctrl + a)

Slide 18

Slide 18 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 行削除 Vim dd ✓ Emacs (Ctrl + a > Ctrl + k)

Slide 19

Slide 19 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 空行挿入 Vim o ✓ Emacs (Ctrl + o)

Slide 20

Slide 20 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 行クローン Vim yyp ✓ Emacs (Cmd + Enter) 動作同じじゃないかも

Slide 21

Slide 21 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 カーソル行コピー Vim yy ✓ Emacs (Cmd + Shift + Enter)

Slide 22

Slide 22 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 編集行画面中央 Vim zz ✓ Emacs (Ctrl + l)

Slide 23

Slide 23 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 カーソル単語削除・単語削除 Vim diw (bdw) ✓ dw ✓ Emacs (Cmd + d ・ Cmd + BS)

Slide 24

Slide 24 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 ファイル先頭・ファイル末尾 Vim gg ✓ G ✓ Emacs (Ctrl + < ・ Ctrl + > )

Slide 25

Slide 25 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 入力補完 Vim(insert mode) Ctrl-x Ctrl-l ✓ (ervandew/supertab plugin を利用) ✓ Emacs (Ctrl + SPC)

Slide 26

Slide 26 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 ファイル履歴から開く Vim :b (補完) ✓ b Shougo/unite.vim plugin を入れて nnoremap b :Unite buffer ✓ Emacs (Ctrl + ;) 動作同じじゃないかも

Slide 27

Slide 27 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 最後に編集した箇所に移動 Vim Ctrl-o ✓ Emacs (Ctrl + j > Ctrl + j)

Slide 28

Slide 28 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 直前に開いていたウィンドウ @kunitoo - (Awesome Window Manager) @pharaohkj さん (OS) (Cmd + Tab)

Slide 29

Slide 29 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 タグジャンプ Vim Ctrl-] ✓ Emacs (Ctrl + j > Ctrl + t)

Slide 30

Slide 30 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 バックタグジャンプ Vim Ctrl-t tmux の prefix-key に使ってるので使ってない ✓ Emacs (Ctrl + j > Ctrl + b)

Slide 31

Slide 31 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 指定行に移動 Vim :{number} ✓ Emacs (Ctrl + j > Ctrl + g)

Slide 32

Slide 32 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 行ブックマーク Vim 使ってない Emacs (Ctrl - ' > Ctrl - a)

Slide 33

Slide 33 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 対応するカッコに移動 Vim % ✓ Emacs (Cmd + Ctrl + n/p)

Slide 34

Slide 34 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 対応するカッコの自動入力 Vim 使ってないです Emacs ()

Slide 35

Slide 35 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 カーソルの下のファイル開く Vim この操作が分かりませんでした... Emacs (+その行へ) (compile 実行後 対象行 で enter)

Slide 36

Slide 36 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 これ以降は kunitoo がよく使う便利な操作

Slide 37

Slide 37 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 インデント >> ✓

Slide 38

Slide 38 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 フォーマット = ✓

Slide 39

Slide 39 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 引用符を含む文字列の操作 (text-objects) operator と text-objects を組み合 わせる operator y コピー ✓ d 削除 ✓

Slide 40

Slide 40 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 引用符を含む文字列の操作 (text-objects) text-objects a' ('を含む'で囲われた文字列) ✓ i' ('を含まない'で囲われた文字列) ✓ 例 ya' ✓ yi" ✓ tpope/vim-surround でさらに便利に

Slide 41

Slide 41 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 最後の操作を繰返す . ✓

Slide 42

Slide 42 text

vimの操作と俺とホットキー Powered by Rabbit 2.2.0 設定(~/.vimrc) if &compatible set nocompatible endif set runtimepath+=~/.vim/repos/github.com/Shougo/dein.vim if dein#load_state('~/.vim/dein') call dein#begin('~/.vim/dein') call dein#add('Shougo/unite.vim') call dein#add('ervandew/supertab') call dein#add('tpope/vim-surround') call dein#add('vim-scripts/twilight256.vim') call dein#end() call dein#save_state() endif filetype plugin indent on syntax enable colorscheme twilight256 set clipboard=unnamedplus set expandtab tabstop=2 shiftwidth=2 set nobackup noremap ; : noremap : ; nnoremap b :Unite buffer