Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
Search
yasunori
May 31, 2025
Technology
2.8k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
https://gorillavim.connpass.com/event/353161/
yasunori
May 31, 2025
More Decks by yasunori
See All by yasunori
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
540
Tried writing it vim9script
yasunori0418
0
48
Other Decks in Technology
See All in Technology
デジタル・デザイン:次の50年を描く「進化する青写真」
y150saya
0
820
CIで使うClaude
iwatatomoya
0
160
Claude Codeとハーネスについて考えてみる
oikon48
18
8.7k
Kotlin 開発のツラミを爆破した話! / Explode the difficulty of Kotlin dev!
eller86
0
150
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
12
4.8k
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
270
AI時代のエンジニアキャリアについて今一度考える
sakamoto_582
2
1.3k
小さいから、全部わかる。— 常駐AI "xangi" のすすめ
sugupoko
0
270
実装だけじゃない! CCA-F取得エンジニアが教えるClaude Code開発プロセス活用術
diggymo
2
430
最適な自走を最小限の支援で — M&Aで拡大する組織で少人数SREが挑んだ1年 / SRE NEXT 2026
genda
0
190
Why is RC4 still being used?
tamaiyutaro
0
310
AIと共生する開発者プラットフォーム:バクラクのモノレポ×マイクロサービス基盤
sakajunquality
1
2.4k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
460
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
410
Balancing Empowerment & Direction
lara
6
1.2k
Visualization
eitanlees
152
17k
Amusing Abliteration
ianozsvald
1
220
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
GraphQLとの向き合い方2022年版
quramy
50
15k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
It's Worth the Effort
3n
188
29k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
410
Transcript
スポンサーセッション ゴリラ.vim #36 ~ Vim x SNS ~ 2025年5⽉31⽇ 株式会社ログラス
Name: yasunori GitHub: https://github.com/yasunori0418 • I loves • Vim/Neovim •
dotfiles • Linux (NixOS) About
超⼊⾨Vim
これはある⽇のビジネスサイドの⼈との会話
私(yasunori)「⾃分はVimが好きで〜」 Biz(ビジネスサイドの⼈)「そのVimってなんですか?」 私「Vimというのはテキストエディタです。 ざっくり⾔ってしまえば、⾼機能なメモ帳ですね。」 Biz「どの辺りが好きなんですか?」 私「キーボードだけで操作できて⾼速に編集できます。 NotionのMarkdownとかもVimで書いてますよ。」
Biz「⾼速でMarkdownを編集できる?!」 私「Vimはいいぞ…(ニヤ」
ここで本題
• モード編集による効率的な操作 ◦ ノーマル、挿入、ビジュアルなど多彩なモードを使い分け、 少ないキー操作で多くの処理を実行できる • キーボード中心の高速な操作 ◦ ほぼ全ての操作がキーボードで完結するため、マウスへの手の移動がなく、 思考を中断せずに作業に集中できる
• オペレータ、モーション、テキストオブジェクトによる高度な編集 ◦ これらを組み合わせることで、特定の範囲のテキストを効率的に選択・変更・削除できる • 強力な繰り返し機能 ◦ 直前の操作を「.」(ドット)で繰り返したり、 マクロで一連の操作を記録・再生したりできる そもそもVimの良さとは(Geminiに書き出させてみた、その1)
• 軽量で高速な動作 ◦ 起動が非常に速く、リソースの少ない環境や巨大なファイルでも軽快に動作する • 設定ファイル (vimrc) による自由なカスタマイズ性 ◦ キーバインド、外観、動作などを自分の好みに合わせて徹底的にカスタマイズできる
• 豊富なプラグインによる機能拡張 ◦ 多数のプラグインを利用して、コード補完、Git連携など、 自分に必要な機能を自由に追加できる • 充実した内蔵ヘルプと豊富なオンライン情報 ◦ 操作に迷った際も、内蔵ヘルプやWeb上の情報源が豊富で、自己解決しやすい そもそもVimの良さとは(Geminiに書き出させてみた、その2)
• macOS: 最初からインストールされている。できたらbrewで最新をインストールすると更に良い • Windows: vim-jpからのダウンロードしたインストーラーが⼀番良い(個⼈の感想) • Linux: 各⾃、好きなようにインストールしてください(きっとビルドしてくる⼈もいる) Vimのインストール
引用: https://https://vim-jp.org トップページより
• “vimtutor”でチュートリアルモードを起動できる • “vimtutor ja”で⽇本語のチュートリアルも起動できる • Vimの基本のキを抑えることができる ◦ マンガの主⼈公が修⾏編で鍛えるように、 基礎訓練で超絶編集能⼒を⼿に⼊れよう!!!
vimtutorをやってみよう
• とりあえず覚えておくexコマンド ◦ ":q"や":q!"で終了できる ▪ ":q": 保存済みなら終了 ▪ ":q!": 編集した内容を保存せずにエディタが終了
◦ ":e file_name": ファイルを指定して開く ◦ ":w file_name": 保存 ◦ ":wq": 保存して終了 • カーソル移動 ◦ 基本的な⼗字移動は"hjkl"の利⽤を推奨 ◦ "Ctrl-d": 下へスクロール ◦ "Ctrl-u": 上へスクロール ◦ "w": 次の単語へ先頭に移動 ◦ "e": 次の単語へ末尾に移動 ◦ "b": 前の単語へ移動 よく使いそうな操作⼀覧(その1)
• 検索は移動にもなる ◦ "/": 前⽅検索 ◦ "?": 後⽅検索 ◦ "*":
カーソル下の単語を対象に前⽅検索 ◦ "#": カーソル下の単語を対象に後⽅検索 ◦ "n": 次の検索結果へ移動 ◦ "N": 前の検索結果へ移動 • 元に戻す/やり直す ◦ "u": 元に戻す ◦ "Ctrl-r": 1つ前で元に戻した変更をやり直す • 最初は範囲選択しながら ◦ "v": 現在のカーソル位置から⽂字単位選択できるVisualModeに⼊る ◦ "V": 現在のカーソル位置から⾏単位選択できるVisualModeに⼊る ◦ "Ctrl-v": 現在のカーソル位置から矩形選択できるVisualModeに⼊る よく使いそうな操作⼀覧(その2)
• オペレーターって⾔われてもよく分からないよね。とりあえず、前項の範囲選択しながら ◦ "d": 選択範囲を削除 ◦ "c": 選択範囲を削除し、InsertModeに移動 ◦ "y":
選択範囲をコピー ◦ ".": 直前の操作を繰り返す • InsertModeでは⽂字列の⼊⼒のみ ◦ "a": 現在のカーソルの後にInsertModeへ⼊る ◦ "A": 現在のカーソル⾏の⾏末に移動してから、InsertModeへ⼊る ◦ "i": 現在のカーソルの前にInsertModeへ⼊る ◦ "I": 現在のカーソル⾏の⾏頭に移動してから、InsertModeへ⼊る ◦ "o": 現在のカーソル⾏の下に改⾏してからInsertModeへ⼊る ◦ "O": 現在のカーソル⾏の上に改⾏してからInsertModeへ⼊る よく使いそうな操作⼀覧(その3)
すべての基本はNormalMode 困ったら"Esc"を連打して NormalModeに戻ろう!! 引用: https://knowledge.sakura.ad.jp/21687/ モードの切り替えより
VimmerらしくテキストをエディットするTips 引用: https://github.com/yasunori0418/gorilla-vim-36 WorkShop用リポジトリ
vimmerらしくテキストをエディットするTips 1. A(Shift-a)で⾏末に”,”を⼊⼒ 2. EscでNormalModeへ 3. 下の⾏に移動(j) 4. ドットリピート(.) 5.
下の⾏に移動(以降、繰り返し) ⾏末への⼊⼒とドットリピート
vimmerらしくテキストをエディットするTips 1. ⾏頭に移動(0) 2. Ctrl-vで矩形選択モードへ 3. 任意の縦⼀列分のみ範囲を選択 4. I(Shift-i)でInsertModeへ 5.
“- “を⼊⼒しEscでNormalModeに戻る 矩形選択と選択範囲への⼀括⼊⼒
vimmerらしくテキストをエディットするTips 1. 配列内にカーソルを移動 2. ”vi[“で配列内を範囲選択 3. ”:sort”と⼊⼒し実⾏し実⾏ ◦ :入力の後に記号('<,'>)が入るが気にしない 選択範囲に対するexコマンド実⾏によるソート
vimmerらしくテキストをエディットするTips 1. 任意の段落にカーソルを移動 2. “vip”で段落を選択 3. 任意の操作として[”d: 削除”, “c: 変更”,
“y: コピー”] 4. レジスタに⼊っているので、”p”で貼り付けたり、 いろいろな操作を繋げていこう!! 空⾏で区切られた段落(paragraph)を範囲選択し、任意の操作をする
まとめ
まとめ • テキストを編集を中⼼に据えたエディタです。 ‐ 他のエディタはテキスト⼊⼒が中⼼になっている ‐ Vimはテキスト編集(エディット)の基準として、 NormalModeが中⼼に存在している ‐ テキスト編集のために必要な機能が各モードで管理されている
‐ つまり、テキストをエディットしていると⾔えます。 • い、いや、エディットって編集と翻訳できるので…ね? つまり、Vimとは
まとめ • そもそもショートカットキーとコマンドが多すぎて、学習コストが⾼い ‐ たぶん、「Vimはちょっと…」と⾔われる原因 • ⽇本語IMEとの相性が悪い ‐ NormalModeで⽇本語⼊⼒状態になるとカーソル移動などができない ‐
“skkeleton”なるIMEプラグインを使えば解決できる • 強くお勧めできないが興味がある⽅は、どうぞこちらへ…… • カスタム⽅法も覚えてくると無限に時間を使ってしまう ‐ 設定(プログラム)を書くことになるので、無限の可能性が広がっている ‐ 設定の延⻑線がプラグイン ‐ 設定させていただきありがとうございます!! Vimの⽋点
終わりじゃないぞよ もうちっとだけ続くんじゃ
株式会社ログラスについて
None
None
None
None
None