Help us understand the problem. What is going on with this article?

Sublime Text2の複数カーソルの使い方

More than 5 years have passed since last update.

複数カーソルとは

Sublime Text2では複数のカーソルを出して複数の箇所を同時に編集できます。
その基本的な使い方をまとめました。

ソースコード内の複数の単語を変更する

公式ページの1番目の例です。複数箇所に存在する単語を別の文字列に置き換えてみます。
全てのdouble型の変数をfloat型に変換してみます。

編集前
public class Test {
    private double aaa;
    private double bbb;
    public double ccc;
}
編集後
public class Test {
    private float aaa;
    private float bbb;
    public float ccc;
}
  1. 変更したい対象の単語(double)にカーソルを合わせてCmd+Dを押す
  2. この状態で編集対象の選択モードになる。Cmd+Ctrl+Gで同じ単語をすべて選択する
  3. すべての"double"に入力カーソルが作成されるので"float"を入力する

"st01"

tips

  • escで単一のカーソルに戻る
  • Cmd+Dでフォーカスが当たっている要素を選択状態にして次の要素へ(Cmd+Shift+Gで前の要素へ)
  • Cmd+Lでカーソルの1行を選択状態にする
  • Cmd+Dで単語を選択状態にする
  • Cmd+Gでフォーカスを移動(単一の選択のみ)
  • Cmd+Ctrl+Gでフォーカスが当たっている単語と同じ単語をすべて選択
  • Shift+Ctrl+UPで上の行を選択状態にする
  • Shift+Ctrl+DOWNで下の行をを選択状態にする

複数行をまとめて編集する+α

公式ページの2番目の例です。改行されている複数の文字列の前後にダブルクォートを追加し、コンマを追加して、鍵括弧を前後に追加するということをやっていました。同じ操作をやってみます。

編集前
Mon
Tue
Wed
Thu
Fri
Sat
編集後
date = ["Mon","Tue","Wed","Thu","Fri","Sat"]
  1. Cmd+Aですべて選択
  2. Cmd+Shift+Lで選択中の要素の末尾にカーソルを作る
  3. Ctrl+Aで行頭に戻りダブルクォート(")を入力
  4. Ctrl+Eで行末に移動してダブルクォート(")とカンマ(,)を入力
  5. fn+deleteで改行を削除
  6. Escで複数行編集モードを抜ける
  7. Control+Eで末尾に戻り、最後のカンマを消す
  8. Cmd+Lで1行選択し、開きかっこ([)を入力する。同時に閉じ括弧(])も入力される
  9. Ctrl+Aで行頭に戻って変数名とイコールを入力

"st03"

検索した結果を使って編集する

カンマ区切りになっているテキストに対して、カンマの後にスペースを挿入したいケースを考えます。
こういう場合は検索した結果から複数のカーソルを作成し、編集すると便利です。

編集前
date = ["Mon","Tue","Wed","Thu","Fri","Sat"]
編集後
date = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
  1. Cmd+Fで検索バーを開く
  2. テキストボックスにカンマ(,)を入力する
  3. マッチしたもの全てをCmd+Ctrl+Gで編集状態にする
  4. Escで検索バーを閉じる
  5. カンマとスペースを入力する

"st04"

tips

  • 置換と違うのは入力時に補完が効くところ。長いクラス名や型名を置換するときに便利です
  • 検索バーを出した状態でCmd+Alt+Rを押すと正規表現も使えます

"st02"

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away