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

【gifアニメつき】テキストエディタとしてのRStudioを極めたい

More than 3 years have passed since last update.

RStudioはエディタ

古事記にも書かれている 野球好きな人が言っていた。実際、RStudioのエディタ機能はテキストエディタに引けをとらないくらい完成度が高く充実していて大変良い。RStudioはエディタである。そんなエディタ機能を極めるべく、RStudioのテキスト編集機能についてメモしておく。すべてではないし、使えそうなものだけをメモしたつもり。操作をところどころ間違えていて格好悪いがgifアニメを加えてみたので実際わかりやい(自賛)。

RStudioのバージョンは0.99.xxであれば問題ないと思われる。なお、Macで試しているのでWindowsやLinuxではショートカットキーが異なるはずなので注意されたし。ショートカットキーは記号で表現されることが多いが、ここでは英語表記で統一する(すなわち、⌘... command, ⇧... shift, ^... control, ⌥... option)。

ちなみに、RStudioで使えるキーボードショートカットを表示するにはoption + shift + K。早引き版が表示される。全てを見たい場合は早引き版の右上にある"See All Shortcuts..."を押すと良い。

ファイルの操作

新規ファイルの作成

  • command + N... R Markdown
  • command + shift + N... Rスクリプト

ファイルを開く

0xkhhp97HG.gif

control + .

作業ディレクトリ以下にあるファイルを開く際に便利。開きたいファイル名を聞いてくるウィンドウが立ち上がるので、そこからファイルを選択する。.R, .rmd, .mdであれば検索の対象になるが、対象外となるファイル(画像など)もある。同名のファイルであっても、内包されているフォルダ名を表示してくれるので便利。またcommand + Oでもファイルを選択できる。

タブ(編集ファイル)の移動

sjb5Ts4944.gif

  • control + F11... 前のタブに移動
    • control + shift + F11... 最初のタブに移動
  • control + F12... 次のタブに移動
    • control + shift + F12... 最後のタブに移動

RStudioではタブ機能によって複数のファイルを同時に開くことができる。

字下げ(インデント)

tab。元に戻すにはcommand + I

検索と置換

  • command + F... 検索と置換機能の起動。escで解除
  • command + G, command + shift + G... 前後で対象文字列を検索
  • command + shift + J... 検索して置換

気に入っているところは、テキストを選択しているとはじめからその部分が検索・置換の対象となることだ。

選択範囲の拡張・縮小

LbQeE8FU1p.gif

  • shift + 矢印キー... 一文字ずつ選択範囲を広げていく
  • option + command + shift + 上下矢印キー... (基準がよくわからないが)選択範囲を順次拡張

編集系

行操作

aQQxMCjitb.gif

行の削除

command + D

カーソルがある行を削除する

行の移動・コピー

  • option + 上下矢印キー... カーソルがある行のテキストを上下に移動
  • option + command + 上下矢印キー... 現在のカーソル行のテキストを上下にコピー

複数行の同時編集

control + option + 上下矢印キーで範囲を選択、対象行に対して同様の処理が行われる。編集を終える際はescで離脱するか、適当な箇所をクリックする。

行の先頭または末尾を対象に編集する際はcontrol + option + 上下矢印キー

カーソル位置より前(後)のテキストを削除、挿入(ヤンクする)

CRfpnBl6fb.gif

  • control + U... カーソル位置より前の部分を削除
  • control + K... カーソル位置より後ろを削除
  • control + Y... ヤンクの挿入

複数箇所の同時編集

Lwh9JMHSTT.gif

option + command + shift + M

関数を書いているときなど、変数名や引数名を変更するのは面倒なので、一度にやりたい。検索して置換しても良いけど、こういう方法もある。注意が必要なのは、例えば関数内に含まれる別の関数は編集の対象にならないということ。

挿入関係

まとめてどうぞ。

hQ4JbyU08D.gif

コメント

command + shift + Ccommand + shift + /で複数行のコメントを整理する

空行の挿入

option + command + 上下矢印キー... 矢印キーの上下に対応した空の行を加える

chunkの挿入

option + command + I

コードセクションの挿入

command + shift + R

セクション名を入力するように求められるので、適当な名前をつける。これが見出しとして使用される。

代入演算子の挿入

option + -

パイプ演算子の挿入

command + shift + M

snippetの挿入

shift + tab

スニペットについての過去記事 -> RStudio v0.99に搭載されたコードスニペット機能が便利 - Qiita

補助系

アウトラインの表示・移動

shift + command + O

wkN4cTUM0H.gif

見出し(#やコメント)に応じてアウトラインをよしなに表示してくれる。ジャンプしたい見出し名をクリックするとそこに飛ぶ。ソースパネルの左下にある見出しリンクと同様の機能。

ポップアップで移動先の見出しを表示するにはoption + command + shift + J。キーが多いので基本的に私はアウトラインパネルを使っている。

実際大事なのでこれから書くコードには適宜見出しやコメントを付けるようにしたい。また、行を指定して移動する場合にはoption + command + shift + G

関数ファイルのソースを閲覧する

F2

関数名にカーソルを置いた状態でF2を押すと関数のソースファイルを表示する。俺々関数であっても、開くので便利。ただ、このファイルは閲覧専用なので編集することはできない。

キーボードショートカットキーの変更機能が付いた

coming soon v0.99.644からの機能。RStudioで設定されているショートカットに対して任意のキーを割り振ることができる。メニューバーのTools -> Modify Keyboard Shortcuts...で編集可能

参照) Customizing Keyboard Shortcuts – RStudio Support

他にもいろいろと設定できそうだ。

Why not register and get more from Qiita?
  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
No 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
ユーザーは見つかりませんでした