Slide 1

Slide 1 text

スポンサーセッション ゴリラ.vim #36 ~ Vim x SNS ~ 2025年5⽉31⽇ 株式会社ログラス

Slide 2

Slide 2 text

Name: yasunori GitHub: https://github.com/yasunori0418 ● I loves ● Vim/Neovim ● dotfiles ● Linux (NixOS) About

Slide 3

Slide 3 text

超⼊⾨Vim

Slide 4

Slide 4 text

これはある⽇のビジネスサイドの⼈との会話

Slide 5

Slide 5 text

私(yasunori)「⾃分はVimが好きで〜」 Biz(ビジネスサイドの⼈)「そのVimってなんですか?」 私「Vimというのはテキストエディタです。 ざっくり⾔ってしまえば、⾼機能なメモ帳ですね。」 Biz「どの辺りが好きなんですか?」 私「キーボードだけで操作できて⾼速に編集できます。 NotionのMarkdownとかもVimで書いてますよ。」

Slide 6

Slide 6 text

Biz「⾼速でMarkdownを編集できる?!」 私「Vimはいいぞ…(ニヤ」

Slide 7

Slide 7 text

ここで本題

Slide 8

Slide 8 text

● モード編集による効率的な操作 ○ ノーマル、挿入、ビジュアルなど多彩なモードを使い分け、 少ないキー操作で多くの処理を実行できる ● キーボード中心の高速な操作 ○ ほぼ全ての操作がキーボードで完結するため、マウスへの手の移動がなく、 思考を中断せずに作業に集中できる ● オペレータ、モーション、テキストオブジェクトによる高度な編集 ○ これらを組み合わせることで、特定の範囲のテキストを効率的に選択・変更・削除できる ● 強力な繰り返し機能 ○ 直前の操作を「.」(ドット)で繰り返したり、 マクロで一連の操作を記録・再生したりできる そもそもVimの良さとは(Geminiに書き出させてみた、その1)

Slide 9

Slide 9 text

● 軽量で高速な動作 ○ 起動が非常に速く、リソースの少ない環境や巨大なファイルでも軽快に動作する ● 設定ファイル (vimrc) による自由なカスタマイズ性 ○ キーバインド、外観、動作などを自分の好みに合わせて徹底的にカスタマイズできる ● 豊富なプラグインによる機能拡張 ○ 多数のプラグインを利用して、コード補完、Git連携など、 自分に必要な機能を自由に追加できる ● 充実した内蔵ヘルプと豊富なオンライン情報 ○ 操作に迷った際も、内蔵ヘルプやWeb上の情報源が豊富で、自己解決しやすい そもそもVimの良さとは(Geminiに書き出させてみた、その2)

Slide 10

Slide 10 text

• macOS: 最初からインストールされている。できたらbrewで最新をインストールすると更に良い • Windows: vim-jpからのダウンロードしたインストーラーが⼀番良い(個⼈の感想) • Linux: 各⾃、好きなようにインストールしてください(きっとビルドしてくる⼈もいる) Vimのインストール 引用: https://https://vim-jp.org トップページより

Slide 11

Slide 11 text

● “vimtutor”でチュートリアルモードを起動できる ● “vimtutor ja”で⽇本語のチュートリアルも起動できる ● Vimの基本のキを抑えることができる ○ マンガの主⼈公が修⾏編で鍛えるように、 基礎訓練で超絶編集能⼒を⼿に⼊れよう!!! vimtutorをやってみよう

Slide 12

Slide 12 text

● とりあえず覚えておくexコマンド ○ ":q"や":q!"で終了できる ■ ":q": 保存済みなら終了 ■ ":q!": 編集した内容を保存せずにエディタが終了 ○ ":e file_name": ファイルを指定して開く ○ ":w file_name": 保存 ○ ":wq": 保存して終了 ● カーソル移動 ○ 基本的な⼗字移動は"hjkl"の利⽤を推奨 ○ "Ctrl-d": 下へスクロール ○ "Ctrl-u": 上へスクロール ○ "w": 次の単語へ先頭に移動 ○ "e": 次の単語へ末尾に移動 ○ "b": 前の単語へ移動 よく使いそうな操作⼀覧(その1)

Slide 13

Slide 13 text

● 検索は移動にもなる ○ "/": 前⽅検索 ○ "?": 後⽅検索 ○ "*": カーソル下の単語を対象に前⽅検索 ○ "#": カーソル下の単語を対象に後⽅検索 ○ "n": 次の検索結果へ移動 ○ "N": 前の検索結果へ移動 ● 元に戻す/やり直す ○ "u": 元に戻す ○ "Ctrl-r": 1つ前で元に戻した変更をやり直す ● 最初は範囲選択しながら ○ "v": 現在のカーソル位置から⽂字単位選択できるVisualModeに⼊る ○ "V": 現在のカーソル位置から⾏単位選択できるVisualModeに⼊る ○ "Ctrl-v": 現在のカーソル位置から矩形選択できるVisualModeに⼊る よく使いそうな操作⼀覧(その2)

Slide 14

Slide 14 text

● オペレーターって⾔われてもよく分からないよね。とりあえず、前項の範囲選択しながら ○ "d": 選択範囲を削除 ○ "c": 選択範囲を削除し、InsertModeに移動 ○ "y": 選択範囲をコピー ○ ".": 直前の操作を繰り返す ● InsertModeでは⽂字列の⼊⼒のみ ○ "a": 現在のカーソルの後にInsertModeへ⼊る ○ "A": 現在のカーソル⾏の⾏末に移動してから、InsertModeへ⼊る ○ "i": 現在のカーソルの前にInsertModeへ⼊る ○ "I": 現在のカーソル⾏の⾏頭に移動してから、InsertModeへ⼊る ○ "o": 現在のカーソル⾏の下に改⾏してからInsertModeへ⼊る ○ "O": 現在のカーソル⾏の上に改⾏してからInsertModeへ⼊る よく使いそうな操作⼀覧(その3)

Slide 15

Slide 15 text

すべての基本はNormalMode 困ったら"Esc"を連打して NormalModeに戻ろう!! 引用: https://knowledge.sakura.ad.jp/21687/ モードの切り替えより

Slide 16

Slide 16 text

VimmerらしくテキストをエディットするTips 引用: https://github.com/yasunori0418/gorilla-vim-36 WorkShop用リポジトリ

Slide 17

Slide 17 text

vimmerらしくテキストをエディットするTips 1. A(Shift-a)で⾏末に”,”を⼊⼒ 2. EscでNormalModeへ 3. 下の⾏に移動(j) 4. ドットリピート(.) 5. 下の⾏に移動(以降、繰り返し) ⾏末への⼊⼒とドットリピート

Slide 18

Slide 18 text

vimmerらしくテキストをエディットするTips 1. ⾏頭に移動(0) 2. Ctrl-vで矩形選択モードへ 3. 任意の縦⼀列分のみ範囲を選択 4. I(Shift-i)でInsertModeへ 5. “- “を⼊⼒しEscでNormalModeに戻る 矩形選択と選択範囲への⼀括⼊⼒

Slide 19

Slide 19 text

vimmerらしくテキストをエディットするTips 1. 配列内にカーソルを移動 2. ”vi[“で配列内を範囲選択 3. ”:sort”と⼊⼒し実⾏し実⾏ ○ :入力の後に記号('<,'>)が入るが気にしない 選択範囲に対するexコマンド実⾏によるソート

Slide 20

Slide 20 text

vimmerらしくテキストをエディットするTips 1. 任意の段落にカーソルを移動 2. “vip”で段落を選択 3. 任意の操作として[”d: 削除”, “c: 変更”, “y: コピー”] 4. レジスタに⼊っているので、”p”で貼り付けたり、 いろいろな操作を繋げていこう!! 空⾏で区切られた段落(paragraph)を範囲選択し、任意の操作をする

Slide 21

Slide 21 text

まとめ

Slide 22

Slide 22 text

まとめ • テキストを編集を中⼼に据えたエディタです。 ‐ 他のエディタはテキスト⼊⼒が中⼼になっている ‐ Vimはテキスト編集(エディット)の基準として、 NormalModeが中⼼に存在している ‐ テキスト編集のために必要な機能が各モードで管理されている ‐ つまり、テキストをエディットしていると⾔えます。 • い、いや、エディットって編集と翻訳できるので…ね? つまり、Vimとは

Slide 23

Slide 23 text

まとめ • そもそもショートカットキーとコマンドが多すぎて、学習コストが⾼い ‐ たぶん、「Vimはちょっと…」と⾔われる原因 • ⽇本語IMEとの相性が悪い ‐ NormalModeで⽇本語⼊⼒状態になるとカーソル移動などができない ‐ “skkeleton”なるIMEプラグインを使えば解決できる • 強くお勧めできないが興味がある⽅は、どうぞこちらへ…… • カスタム⽅法も覚えてくると無限に時間を使ってしまう ‐ 設定(プログラム)を書くことになるので、無限の可能性が広がっている ‐ 設定の延⻑線がプラグイン ‐ 設定させていただきありがとうございます!! Vimの⽋点

Slide 24

Slide 24 text

終わりじゃないぞよ もうちっとだけ続くんじゃ

Slide 25

Slide 25 text

株式会社ログラスについて

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

No content