9
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Xcode7でオリジナルショットカットキーを作成

Last updated at Posted at 2016-08-14

はじめに

普段Atom等のエディターを使っていてよく使うショットカットキーがXcode7にはなかった(自分が知らないだけかも)ので参考サイトを見ながら自分で作成してみました。備忘録として書き記します。


欲しいショートカットキー

1.行の削除
2.行の入れ替え(カーソルがある行を上下へ移動)
3.行の複製
4.カーソルの位置を問わず改行


設定方法

1.Finder を起動して CommandShiftu
ユーティリティーディレクトリーが開かれるので、ターミナルを選択して起動。

下記のコマンドをターミナルにコピペ。

cp /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions
/A/Resources/IDETextKeyBindingSet.plist ~/Desktop/

スクリーンショット 2016-08-12 19.46.06.png

デスクトップに上記のファイルが作成されます。
※編集権限が必要なので、一度デスクトップに設定ファイルをコピーしてきて編集します。

2.1で作ったファイル(IDETextKeyBindingSet.plist)を適当なエディターで開きます。
(ここではAtomで開いています。https://atom.io/)

スクリーンショット 2016-08-14 19.48.37.png

ファイルの中身はXML形式のデータになっています。
開いたファイルの一番したのほうに(一番下にある</dict>タグの一行上に)下記に
記述したコードをコピペします。
<key>タグはコマンドの名前
<string>タグは実現したい機能の命令


    <key>Original Direction</key>
    <dict>
        // 行の削除
        <key>Delete Line Original</key>
        <string>selectLine:, delete:</string>
        // 行の複製
        <key>Duplicate Line Original</key>
        <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
        // 行を上に移動
        <key>Move Line Up Original</key>
        <string>selectParagraph:, cut:, moveBackward:, moveToBeginningOfParagraph:, paste:, moveBackward:, moveToBeginningOfParagraph:</string>
        // 行を下に移動
        <key>Move Line Down Original</key>
        <string>selectParagraph:, cut:, moveToEndOfParagraph:, moveRight:, paste:, moveBackward:, moveToBeginningOfParagraph:</string>
        // カーソルの位置を問わず改行
        <key>Continue Newline Original</key>
        <string>moveToEndOfLine:, insertNewline:</string>
    </dict>

編集が完了したら、デスクトップにあるファイル(IDETextKeyBindingSet.plist)を
元の場所に戻します。

1の手順でターミナルを開き下記のコマンドをコピペします。

sudo cp ~/Desktop/IDETextKeyBindingSet.plist /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions
/A/Resources/IDETextKeyBindingSet.plist 

※ここで編集したファイルはXcodeをバージョンアップした際に、デフォルトの
状態に戻ってしまうようなので、どこかにバックアップとして保存しておきます。

3.Xcodeを起動して、キーバインドの設定

Xcodeを起動してcommand+,で設定画面を開き
Key Bindingsを選択

スクリーンショット 2016-08-14 20.32.30.png

Key Bindingsを選択し、下のほうへスクロールすると先程作成した
Original Directionという項目があるので
それぞれのCommandに任意のKeyを設定する。

ここでは
・Move Line Up Original(カーソルがある行を上へ)
command+option+shift+

・Move Line Down Original(カーソルがある行を下へ)
command+option+shift+

・Delete Line Original(カーソルがある行の削除)
command+D

・Continue Newline Original(カーソルの位置を問わずに改行)
shift+enter

・Duplicate Line Original(カーソルがある行の複製)
command+shift+V

おわりに

カーソルの位置を問わずに改行などは、特に重宝しています。
任意のKeyを設定する際に、デフォルトで設定されているKeyと同じKeyを設定しようとすると、Xcodeが警告を出します。使わないKeyならデフォルトKeyを削除してしまっても構いませんが、デフォルトKeyを削除、変更する際はよく確認してから編集しましょう。
一度いつのまにか、deletekeyに違うKeyが設定されていて泣きをみました・・・。
下記のサイトを参考にさせていただきました。ありがとうございます。

参考サイト

9
8
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
9
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?