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

Visual Studio Codeを使ったR言語開発環境の利用ガイド

はじめに

Visual Studio Code(以下VSCode)でR Studioのような環境vscode-rを開発しました.
本記事はより快適にR言語をVS Codeで利用していただくために以下のトピックを紹介します.

2019/3/7 開発を再開しました.補完機能を開発したので追記
2020/3/24 コラボレーターの方がwiki (英語) を作ってくださいました

想定読者

  • RユーザーでVS Codeを利用し始めた人
  • R以外の言語も同一プロジェクトで管理したい人
  • 開発環境を一つに統一したい人

他開発環境との比較

他のR開発環境で代表的なものは以下となります.

VSCode版を利用するメリット,デメリットは以下の通りとなります.
他の開発環境の利用歴が短いためVS Codeよりの内容となっています.

メリット

  • Rと他言語と並行して利用可能
  • シンタックスハイライトが豊富
  • Windows, Mac, Linuxで利用可能
  • VS Code自体が成長中(日本語にも対応)
  • 日本語でのバグ報告,リクエスト,質問歓迎 (https://github.com/Ikuyadeu/vscode-R/issues)

デメリット

  • パッケージ管理ができない (2020/3/24 最近少しできるようになりました)
  • 日本語関係が弱いのかも [参考記事]
  • 関連ドキュメントが少ない

R以外の開発言語を利用しない,パッケージ管理が必須な方はR Studioをおすすめします.

初めての実行

実行環境の導入については別の利用者様が記事を書いてくださった為そちらをご参照ください.

読むのがめんどうな方は
* VS Code
* R
* R-LSP
* vscode-r
を取得してwindows版のみsetting.jsonでRのパスを定義してもらえば十分です.

実行はR Studioと同じく

  • 現在の行または選択行を実行: Ctrl + Enter(Macは+Enter)
  • ソースコード全体を実行: Ctrl + Shift + Enter(Macは + Shift + Enter)またはソースコード上のボタン

で可能となっています.

機能ガイド

上の初めての実行で書かれてない設定やコマンドについて紹介

Rに限らず設定はsetting.jsonから変更できます.(詳しくはこちら)

コマンドはF1キー(Macのバージョンによってはfn+F1)から呼び出せます.

lintr

lintrはコードを綺麗にするためのツールです.

LSPでサポートされているので必要な方はLSPのインストールをしてください

プレビュー

R Studioのようにデータの状況を見ることができます.

  • データフレームの内容を閲覧: データフレーム名を選択 -> F1 -> R: Preview Dataframe
    DataframePreview.gif

  • 環境変数の閲覧: F1 -> R: Preview Environment

下のようなソースコードを読み込んだ場合

test.r
# © Microsoft. All rights reserved.

#' Add together two numbers.
#'
#' @param x A number.
#' @param y A number.
#' @return The sum of \code{x} and \code{y}.
#' @examples
#' add(1, 1)
#' add(10, 1)
add <- function(x, y) {
  x + y
}

hello <- rnorm(100)

#region

print(add(1, -2))
print(add(1.0e10, 2.0e10))

#endregion

print(paste("one", NULL))
print(paste(NA, 'two'))

print(paste("multi-
line",
'multi-
line'))

こうなります(利用テーマは同じく開発中のlucario).

Screen Shot 2017-12-24 at 18.16.56.png

Git

R Studioなどの開発環境から移行した場合はF1 -> R: Create gitignoreで設定ファイルを無効にできます.

まとめ

学業の都合であまりお返事はできていませんが,機能リクエストなど気軽にコメントいただけると幸いです.(https://github.com/Ikuyadeu/vscode-R/issues).
コラボレーターの方が優秀でリモート環境やプロットの表示などが実装されました.おかげで利用者もissueも増えています.お手伝いいただける方を募集しています.

Ikuyadeu
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
ユーザーは見つかりませんでした