RubyMineでマルチカーソル/選択

このエントリーをはてなブックマークに追加

IntelliJ IDEA 13.1がリリースされ、マルチカーソル/選択が好評ですが、もちろんRubyMineにも搭載されます。既に最新のEAPバージョンで実装されていますのでお試しください。

 

multiple_cursors

 

 

 

マルチカーソル/選択はエディタ機能の中でも最も望まれていた機能ですので、皆様にも気に入って頂けるかと存じます。詳しい使い方を以下に説明いたします。

マルチカーソルのセット

まず⌥⇧/Alt+Shiftでマウスクリックをすると好きなところにいくらでもカーソルをおけます。 ちなみにデフォルトキーマップは次のビルドからは⌥/Altに変更予定で、Settings -> Keymap -> Editor Actions -> Add or Remove Caretより設定変更できます。

multiple_cursors_1

multiple_cursors_2

Settings -> Keymap -> Editor Actions -> Clone Caret Above / Clone Caret Belowアクションにキーマップを設定すればキーボードからもマルチカーソルを置くことが出来ます。

multiple_cursors_3

multiple_cursors_4

 

 

 

 

マルチカーソルからシングルカーソルモードへ戻すにはEscを押してください。

コードを複数箇所同時に編集する

マルチカーソルをセットしたら、編集に入ります。例えばMove Caret to Next Word with Selectionアクション(カーソルを次の単語へ移動しながら選択を行う)と行い、⌘X/Ctrl+Xでカットし、⌘→/Endで行末にカーソル移動し、⌘V/Ctrl+Vでペーストをすると以下のようになります。

multiple_cursors_5

multiple_cursors_6

 

 

 

または⌘←/Homeで行頭に移動し、Shift+→で最初の一文字を選択して⌘⇧U/Ctrl+Shift+UでToggle Caseアクション(大文字小文字を切り替える)で行頭を大文字にすることができます:

multiple_cursors_7

multiple_cursors_8

コード補完を複数箇所で同時に働かせる

さらに自動補完やlive templateもマルチ選択で働きます。補完のベースとなるのはプライマリカーソル(マルチカーソルを始める前からあったカーソル)の位置で、補完結果は全てのカーソル位置に反映されます。

multiple_cursors_9

multiple_cursors_10

同様の編集をすべき箇所を見つける

変数やメソッドなど、同じものが複数回コード内にある場合、⌃⌘G/Ctrl+Shift+Alt+Jでカーソル位置にあるシンボルと同じ物を全て選択、または⌃G と ⇧⌃G、Alt+JとShift+Alt+Jでカーソル位置と同じ次のシンボルも選択、または解除できます:

multiple_cursors_11

multiple_cursors_12


マルチカーソル/選択はまだまだ改善の余地があります。是非お試しになって掲示板YouTrackへフィードバックを頂ければと思います。

Develop with pleasure!

JetBrains RubyMine チーム

原文

このエントリーをはてなブックマークに追加

Share and Enjoy

  • Facebook
  • Twitter
  • LinkedIn
  • Add to favorites
  • Email
  • RSS
This entry was posted in RubyMine. Bookmark the permalink.

One Response to RubyMineでマルチカーソル/選択

  1. Pingback: RubyMine 「ひのき」ベータリリース | JetBrains ブログ

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">