Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
VSVimの間合いですよ
Search
anozon
November 22, 2021
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
VSVimの間合いですよ
VSCode Vim の縦移動を強化する VSCode 拡張を開発した話
anozon
November 22, 2021
More Decks by anozon
See All by anozon
PWAを活用している_ガジェットアプリの話.pdf
anozon
0
29
埼玉県の描き方.pdf
anozon
0
42
Other Decks in Programming
See All in Programming
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
210
Railsバージョンを4倍にした話
optim
0
360
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
270
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
590
複雑なUIコンポーネントとの ⻑い付き合い⽅:波及するバグからテスト戦略を経て、安全な再設計へ
mixplace
0
410
カツオ、ご期待ください
suneo3476
0
190
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
130
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
660
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
220
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
390
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
280
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Ruling the World: When Life Gets Gamed
codingconduct
0
400
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
370
Paper Plane
katiecoart
PRO
5
54k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
800
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Believing is Seeing
oripsolob
1
240
Transcript
VSVimの間合いですよ vscode-maai-cursor あのぞん (@anozon,(/elzup))
About me あのぞん (@anozon) elzup · GitHub 株式会社プランクユニッツ PlanckUnits VSCode(5年)
Vim(8年) React,TypeScript .vimrc 1300行
今回の話 VSCode 拡張開発に入門して コーディングを快適にした VSVimの間合いですよ • Vim の間合いはすごい ◦ 5Jump
Keymap の提唱 • VSCode 拡張作ってみた! ◦ 5Jump Keymap の強化
Vim の間合いはすごい
Vim とは Vim の間合いはすごい • Vimとは ◦ テキストエディタ ◦ モードを切り替えながらテキストを編集する
◦ ↑↓←→ が jklm • VSCode の Vim 拡張もある ◦ VSCodeVim ◦ vscode-neovim
Vim は高速で任意の場所へ移動できる 水平移動 Vim の間合いはすごい
垂直移動 Vim の間合いはすごい
弱点はどこでしょう? Vim の間合いはすごい
Vimの弱点はここです Vim の間合いはすごい
前後5行目あたりへ高速移動したい → 5Jump keybind を提唱します Vim の間合いはすごい 5Jump keybind とは
“5行上へ移動をショートカットキーに登録すること” nnoremap <C-j> 5j nnoremap <C-k> 5k vnoremap <C-j> 5j vnoremap <C-k> 5k
5Jump keybind により 前後7行へ3ストローク以下で移動できる Vim の間合いはすごい -7 `<C-k>` kk -6
`<C-k>` k -5 `<C-k>` -4 `<C-k>` j -3 kkk -2 kk -1 k 0 `<curren>` +1 j +2 jj +3 jjj +4 `<C-j>` k +5 `<C-j>` +6 `<C-j>` j +7 `<C-j>` jj
5Jump keybind の問題点 Vim の間合いはすごい どこに移動するかが大まかにしかわからない - 行数は数えたくない - 飛んでから考えたくない
→ 目印が欲しい
VSCode 拡張作ってみた!
成果物 GitHub elzup/vscode-maai-cursor MarketPlace anozon.maai-cursor VSCode 拡張作ってみた!
None
簡単な作成の流れ VSCode 拡張作ってみた! 1. npx yo code (with-typescript) 2. コーディング
3. npx vsce package 4. (マーケットプレイスアカウント作成) 5. npx vsce publish
初めて触った学び VSCode 拡張作ってみた! • package.json で Config を定義する ◦ マーケットプレイスMETA情報だけでなく
◦ 定義する Config Param や Command ◦ 使う activationEvents のタイプなど • Range ◦ x,y は line, charactor • yo code で全部定義されてて快適 ◦ debug, publish
このプラグインにおける要点 VSCode 拡張作ってみた! vscode.window.onDidChangeTextEditorSelection でカーソル移動イベントを取る activeEditor.selection.anchor でカーソル位置を取る → Decorator 当てたい位置を計算して装飾
50行程度の簡単なロジック
開発で参考にした部分 VSCode 拡張作ってみた! 同じ Decorator タイプの普段お世話になってる plugin • Indent Rainbow
• Bracket Colorlizer microsoft/vscode-extension-samplesに サンプルパターンが豊富 • Decorator 2桁の数字と3桁以上の数字の Style を変える (わかりやすい)
オプションの追加 VSCode 拡張作ってみた! • その行の文字全部にハイライトするモード • 5行区切りで全部ハイライトするモード • 5行以外の指定
躓いた点 VSCode 拡張作ってみた! - package.json の "activationEvents" のイベン トの設定が必要 -
マーケットプレイス・デプロイ権限設定
(初心者の)疑問点 VSCode 拡張作ってみた! elzup/vscode-maai-cursor/issues
感想・まとめ VSCode 拡張作ってみた! • Electron の開発に入門したときに感覚似てた • Type が効いて良い (import
"vscode") • `yo code` で Release まで楽だった • アドバイス改善点レビュー嬉しいです ◦ github.com/elzup/vscode-maai-cursor