LoginSignup
12
11

More than 5 years have passed since last update.

XVimでXcodeのエリア周りの操作もvimにする

Last updated at Posted at 2016-08-07

はじめに

XVimでXcodeのエリア等で使うショートカットもVimで使っているものにしようと思います

XVim導入

導入法に関しては情報が点在しているため割愛します。

基本操作

普段自分が愛用しているキーバインドが全て揃っていてほぼ文句無しです。
モード, 移動, マーク, マクロ等
詳しくは公式ドキュメントに一覧があります。

Xcode操作

Xcodeのエリア周りや実行等のショートカットをいつものVimのキーバインドと同様にするができます。
よく使いそうな例をあげておきます。

コマンド 動作
:run Run
:xcmenucmd Build Build
:xcmenucmd Clean Clean
:xccmd openQuickly ファイル名入力してファイル開く
:xhelp カーソル上の単語のドキュメントを開く
:xcmenucmd Jump to Next Issue エラーへ飛ぶ(次)
:xcmenucmd Jump to Previous Issue エラーへ飛ぶ(前)
:xcmenucmd Fix Next Issue エラー修正する(次)
:xcmenucmd Fix Previous Issue エラー修正する(前)
:xccmd selectNextTab タブ移動(次)
:xccmd selectPreviousTab タブ移動(前)
:ncounterpart headerファイルと入れ替え
:xccmd toggleBreakpointAtCurrentLine ブレイクポイントのトグル
:xccmd commentAndUncommentCurrentLines コメントのトグル
:xccmd findSelectedTextInWorkspace カーソルの乗っている単語をgrep検索する
:xccmd toggleNavigatorsVisibility ナビゲーションエリアの表示/非表示
:xccmd toggleDebuggerVisibility デバッグエリアの表示/非表示
:xccmd toggleToolbarShown ツールバーの表示/非表示
:xccmd toggleUtilitiesVisibility ユーティリティエリアの表示/非表

設定ファイル

.vimrc同様、ホームに.xvimrcを置いて書きます
xcodeに特化した部分を晒しておきます(ほぼ上記の表のもの)

set incsearch
set hlsearch
nnoremap sn :xccmd selectNextTab<Cr>
nnoremap sp :xccmd selectPreviousTab<Cr>
nnoremap <C-o> :xccmd goBackInHistoryByCommand<Cr>
nnoremap <C-i> :xccmd goForwardInHistoryByCommand<Cr>
nnoremap <C-n> :xcmenucmd Jump to Next Issue<Cr>
nnoremap <C-p> :xcmenucmd Jump to Previous Issue<Cr>
nnoremap <C-N> :xcmenucmd Fix Next Issue<Cr>
nnoremap <C-P> :xcmenucmd Fix Previous Issue<Cr>
nnoremap <C-h> :xhelp<Cr>
nnoremap <C--><C--> :xccmd commentAndUncommentCurrentLines<Cr>
nnoremap <Space>r :run<CR>
nnoremap <Space>b :xcmenucmd Build<Cr>
nnoremap <Space>c :xcmenucmd Clean<Cr>
nnoremap <Space>e :xccmd openQuickly<Cr>
nnoremap <Space>a :ncounterpart<Cr>
nnoremap <Space><Space> :xccmd toggleBreakpointAtCurrentLine<Cr>
nnoremap <Space>F viw:xccmd findSelectedTextInWorkspace<Cr>
nnoremap <Space>h :xccmd toggleNavigatorsVisibility<Cr>
nnoremap <Space>j :xccmd toggleDebuggerVisibility<Cr>
nnoremap <Space>k :xccmd toggleToolbarShown<Cr>
nnoremap <Space>l :xccmd toggleUtilitiesVisibility<Cr>
nnoremap <Space>a :xccmd toggleToolbarShown<Cr>:xccmd toggleDebuggerVisibility<Cr>:xccmd toggleNavigatorsVisibility<Cr>:xccmd toggleUtilitiesVisibility<CR>

公式の提供コマンドの追加方法

こちらで提供されているものを使う方法
- Title: 概要
- Action: xccmdを付けて実際に入力する


例:
Title:Show Standard Editor Action:changeToStandardEditor:
Standard Editorを表示するコマンド
:xccmd changeToStandardEditor


ショートカットがXcodeと競合した場合

Xcodeが優先されます。
Xcodeのデフォに合わせるよりVimの操作に合わせたいので
Preferences > Key Bindingsよりショートカットを削除します

参考サイト

12
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
11