1. Overview
今までトラックパッドを用いて作業をしているのですが、キーボードだけの操作に憧れを抱きました。
そこで、この記事では可能な限り、プログラミングの際に必要な操作を全てキーボード上で完結するような状態を目指したいと思います。
私と同じような Vimの初心者の方やVimを使ってみたいという方の助けになればと存じます。
制約としては、MacOSを用いて Chromeの拡張機能が使用できるブラウザ および VS Code を使うこととしています。
2. Strategy
全ての操作をキーボード上で完結させるための私の戦略(*)を説明します。
コードの編集は VSCodeVim/Vim: Vim for Visual Studio Code で行います。ただ、Vimの範疇を超えてファイルの移動をする必要があるため、その場合は可能な限りVSCode上のshortcutを利用します。
また、コーディングをする際にWeb Browserで調べ物をするため、VS CodeとBrowser間の移動やブラウザ内でのshortcutやvim(philc/vimium: The hacker's browser.)を使用します。
(*: こちらの戦略はVim初心者の私が考えたため、最適な戦略ではない可能性があります)
3. Detail
3.1. Move Between Applications
BrowserとVS Codeを簡単に行き来する方法についてまとめます。
3.1.1. MacOS
コマンド | 説明 |
---|---|
Cmd + tab | Macでアプリウインドウを移動する/整理する - Apple サポート (日本) |
3.2. Shortcut on VS Code
VS Codeを扱う上でのShortcutをまとめました。その際にアプリ間の移動のコマンドと競合しないように気をつけます。
3.2.1. MacOS
よく使用するショートカットをまとめました。
設定方法はこちらを参考にしてください: Visual Studio Code Key Bindings
コマンドについては、多少、私独自にカスタムをしているため、参考程度に確認をしてください。
コマンド | 説明 | command ID |
---|---|---|
Cmd + t | ターミナルを開く/閉じる | workbench.action.togglePanel |
Cmd + (j/k) | EditorとTerminalの行き来 | workbench.action.terminal.focus / workbench.action.focusActiveEditorGroup |
Cmd + (l/h) or | Editorのタブの移動(右/左) | workbench.action.nextEditor / workbench.action.previousEditor |
(不明) | VS Codeのターミナルのタブ移動 | (不明) |
Cmd + e (?) | 現在作業中のフォルダからファイルを探し開く方法 | workbench.view.explorer + (?) |
Cmd + p | 過去に開いたもの中から探す | workbench.action.quickOpenSelectPrevious |
Cmd + x | ファイルを閉じる | workbench.action.closeActiveEditor |
Cmd + , | 設定を開く | workbench.action.openSettings |
Cmd + s → Cmd + c | Shortcut設定を開く | workbench.action.openGlobalKeybindings |
3.3. Vim on VS Code
VSCodeVim/Vim: Vim for Visual Studio Code を用いて、VS Code上でVimを利用します。
私は今までVimを利用していなかったため、詳細なコマンドについては割愛させていただき、おすすめの記事や動画を紹介させていただきます。
3.4. Shortcut & Vim on Browser
Chromの拡張機能のVimiumを利用します。また、既存のshortcutも利用しますが、詳細については公式ドキュメントを参考にしてください。
- vimiumについて: vimium/README.md at master · philc/vimium
- Chromeに最初から搭載されてるshortcutについて: Chrome keyboard shortcuts - Computer - Google Chrome Help
4. Summary
以上の戦略をもって快適なVimライフを楽しみたいと思います!
知見が溜まりましたら、随時こちらの記事を更新させていただきます。