SlideShare a Scribd company logo
易しいvim
asuka y
Dec 23 2021
話すこと
- vimとは
- vimを使う理由
- vim初級編
- 設定
- コマンド
- vim中級編
- プラグイン
- 設定の管理
- vim上級編
vimとは
古代より存在するテキストエディタ
日本で最も勢いのあるエディタ(→)
vim.jpなどのコミュニティもある
vimとは
Qiita Advent Calendar 2021
特徴
- CLIである
- モードが存在する
vimとは
$ vim
特徴
- CLIである
- モードが存在する
- normal
- insert
- visual
- terminal
vimとは
$ vim
vimを使う理由
1. キーボードだけで完結する
a. キーボードからマウス (トラックパッド)に手を伸ばすのが面倒 →ThinkPad購入
b. キーボードの十字キー遠い →vimを利用 : h(←), j(↓), k(↑), l(→)
c. ESC遠い→Ctrl [で対応
d. ホームポジションから大きく手を動かす必要がなくて幸せに
2. CLI上に止まり続けられる
a. アレどこだっけ?→Ctrl zでshellに戻る
b. Makefile仕込んでいたわ→:make fooで実行
c. あのコマンド実行したい →:! fooで実行
d. 今開いているファイルに書かれているこの行を実行したい →yy,:term,pで実行
e. 余計なことを考えずに済んで幸せに
vimを使う理由
vim初級編
vim初級編
設定
- :set number
- :set cursorline
- :set cursorcolumn
コマンド
- i (insertモードへ)
- v (visualモードへ)
- :q (:quit 終了)
- ESC (normalモードへ)
vim初級編
設定
- :set number
- :set cursorline
- :set cursorcolumn
コマンド
- i (insertモードへ)
- v (visualモードへ)
- :q (:quit 終了)
- ESC (normalモードへ)
shell
normal
insert visual
:q
ESC ESC
v
i
vim
コマンドには意味がある
- y : yank(コピー)
- p : put (ペースト)
- d : delete
- u : undo
- w : word
- i : insert, inner
- v : visual
- a : append
- h :help
vim初級編 : コマンド
yy 4p (1行コピーして 4回ペースト)
コマンドには意味がある
- y : yank(コピー)
- p : put (ペースト)
- d : delete
- u : undo
- w : word
- i : insert, inner
- v : visual
- a : append
- h :help
vim初級編 : コマンド
V jj d (visualモードで3行選択して削除)
組み合わせることでより強い意味になる
- y : yank(コピー)
- p : put (ペースト)
- d : delete
- u : undo
- w : word
- i : insert, inner
- v : visual
- a : append
- h :help
vim初級編 : コマンド
yiw 4P (カーソル位置の単語をコピーして ry)
組み合わせることでより強い意味になる
- y : yank(コピー)
- p : put (ペースト)
- d : delete
- u : undo
- w : word
- i : insert, inner
- v : visual
- a : append
- h :help
vim初級編 : コマンド
di' (カーソル位置の'(カンマ)の内側を削除)
組み合わせることでより強い意味になる
- y : yank(コピー)
- p : put (ペースト)
- d : delete
- u : undo
- w : word
- i : insert, inner
- v : visual
- a : append
- h :help
vim初級編 : コマンド
gUU (1行全て大文字)
→ gUi' ('(カンマ)の内側を全て大文字 )
組み合わせることでより強い意味になる
vim初級編 : コマンド
y
x
c
d
v
gU
gu
{
(
[
"
'
`
w
W
i
a
typoを防ぐ方法
insertモード時に Ctrl N or Ctrl P
同じファイル内の単語候補列挙
vim初級編 : コマンド
コマンドを忘れた時に q:
履歴を編集→実行できる
vim初級編 : コマンド
vimコマンド覚える前にCLIコマンドを覚えよう
$ vim /tmp/foo.dart
$ pbcopy < /tmp/foo.dart
$ pbpaste | vim -
macOSの場合、次のコマンド群が便利
- open
- pbcopy
- pbpaste
vim初級編
vim中級編
独自のカリカリチューニングは諸刃の剣
→vimのメリットとして「大体どの環境にも入っている」と言うのがある。
→普通のvimが使えなくなる可能性がある。
vim中級編
個人的におすすめのプラグイン
- easymotion/vim-easymotion
- ctrlpvim/ctrlp.vim
- prabirshrestha/vim-lsp
- mattn/vim-lsp-settings
vim中級編 : プラグイン
個人的におすすめのプラグイン
- easymotion/vim-easymotion
- ctrlpvim/ctrlp.vim
- prabirshrestha/vim-lsp
- mattn/vim-lsp-settings
vim中級編 : プラグイン
個人的におすすめのプラグイン
- easymotion/vim-easymotion
- ctrlpvim/ctrlp.vim
- prabirshrestha/vim-lsp
- mattn/vim-lsp-settings
vim中級編 : プラグイン
githubなど、自由にアクセスできるdotprofileリポジトリを用意
→新しいPCにcloneしてsymlink貼るだけで環境構築が完了する
※うっかり秘密鍵など上げないように
vim中級編 : 設定の管理
vim上級編
1. 好きなプラグイン入れて好きに設定しましょう。
2. 「.vimrc輪読会」というイベントも存在する。
→他人の設定を眺めてみるのも良い。
3. なければ作ればいい → vim-scriptもある。
vim上級編
EOF

More Related Content

PDF
アニメーションの実装つらい話
ODP
tnct.Seminar9.03#1
PPT
Linuxにおける開発環境
KEY
Emacs 使いが Vim を使ってみた(ちょっとだけGit)
PDF
Vim入門 20130210
PDF
Debianを用いたCortex-M3マイコン開発事例のご紹介
PDF
「とても小さいVim」vim tiny
 
PDF
Firefox OS + Raspberry Pi
アニメーションの実装つらい話
tnct.Seminar9.03#1
Linuxにおける開発環境
Emacs 使いが Vim を使ってみた(ちょっとだけGit)
Vim入門 20130210
Debianを用いたCortex-M3マイコン開発事例のご紹介
「とても小さいVim」vim tiny
 
Firefox OS + Raspberry Pi

More from asuka y (6)

PDF
Async await完全に理解した
PDF
Go1.18 Genericsを試す
PDF
Flutter2
PDF
k8sクラスタ構築
PDF
自宅ネットワーク構築
PDF
CASL2実行環境紹介
Async await完全に理解した
Go1.18 Genericsを試す
Flutter2
k8sクラスタ構築
自宅ネットワーク構築
CASL2実行環境紹介
Ad

易しいVim