mecobalamin’s diary

人間万事塞翁が馬

https://help.hatenablog.com/entry/developer-option

Atomからvscodeに移行する

Atomの開発が終了した
www.itmedia.co.jp

2022年12月15日を過ぎちゃったけどvscodeに移行するのでその忘備録。

Atomで使っていたのは主にPython, R, LaTeXで、これらをvscodeでも実行できる環境を用意したい
PCにはPython、R、LaTeXをインストール済み
これらの実行ファイルにPATHが通っているのでそのまま利用する

PATHの確認
PATHの確認は、”設定"で”環境変数"を検索して現れる環境変数のウィンドウから行える
ウィンドウの上段はユーザーの環境変数で下段はシステム環境変数である
上段のユーザー環境変数のPATHにPython、R、LaTeXのインストール先が記入されていれば大丈夫

私はそれぞれDドライブにインストールしているので以下のように書かれている
環境によってインストール先が異なるので確認が必要

D:\Python\Python37-32\
D:\R\R-4.2.2\bin
D:\texlive\2022\bin\win32

以下のコマンドをPowerShellに入力することでもPATHを確認できる
ヘルプが表示されればPATHが通っている

> python --help
> R.exe -h
> ptex2pdf -h

やること

  1. Rのパッケージをインストールする
  2. vscodeをインストールする
  3. vscodeに拡張機能をインストールする
  4. vscodeのsettings.jsonを書き換える
  5. キーバインドを変更する
  6. (おまけ)Rの旧バージョンから新バージョンへのRパッケージを移行する


1. Rのパッケージをインストールする


languageserverのインストール

RGuiでインストールする

install.packages("languageserver")


vscDebuggerのインストール

ファイルはCRANのサイトにはないのでvscDebuggerのサポートサイトからダウンロードする
いくつかのファイル形式があるがwindowsの場合はzip形式で良いはず
(tar.gz形式ではインストールできなかった)
manuelhentschel.github.io
RGuiのコマンドライン

install.packages("/path/to/vscDebugger_0.5.2.zip")

またはPowerShellから

R.exe CMD INSTALL /path/to/vscDebugger_0.5.2.zip

でインストールする
ちなみにRでディレクトリの取得と変更は

getwd()
setwd()

を使う

また、サポートサイトにあるように依存関係のある次のパッケージもRGuiからインストールする

install.packages(c('R6', 'jsonlite'))

Rのパッケージ管理についてはこちらのサイトを参考にした
www.task-notes.com


2. vscodeのインストール

ファイルをダウンロードして実行する
code.visualstudio.com


3. vscode拡張機能をインストールする

vscode左側のツールバー拡張機能を使ってインストールする
インストールしたのは
python、R、R Debbuger、LaTeX Workshop、Japanese Language Pack for Visual Studio Code

Marketplaceで拡張機能の名前を検索してインストールした


4. vscodeのsettings.jsonを書き換える

texファイルをコンパイルできるようにsettings.jsonコンパイルの設定を記入する
左下の歯車をクリックし、"設定"を開く
"設定”はctrl + ,(コンマ)でも開ける
"設定"タブの右上に"設定(JSON)を開く"ボタンがある
クリックするとsettings.jsonが開き、編集できるようになる

LaTeXコンパイルにはptex2pdfを、文献リストの作成にはbiberを使う
biberを使ったのはAtomで使っていたから(たぶん)
pbibtexも試してみたが、私の環境ではうまくコンパイルできなかった
biblatex+biberについてはこちらの記事を読ませてもらった
tm23forest.com

settings.jsonの記入方法だが、まずlatex-workshop.latex.toolsにptex2pdfとbiberに必要な引数を定義する
次にtoolsに記入したコマンドをどの様に実行するか、latex-workshop.latex.recipesに記入する
通常のコンパイルならptex2pdfを1回通せばよいが、文献を引用するならptex2pdfのあとにbiberを通し、更にptex2pdfを2回通す
recipesにはその動作を記入する

実際のLaTeX関連の設定は以下の通り

{
    "latex-workshop.latex.recipes": [
        {
            "name": "ptex2pdf",
            "tools": [
                "ptex2pdf"
            ]
        },
        {
            "name": "ptex2pdf -> biber -> ptex2pdf*2",
            "tools": [
                "ptex2pdf",
                "biber",
                "ptex2pdf",
                "ptex2pdf"
                ]
            }
    ],

    "latex-workshop.latex.tools": [ 
        {
            "name": "ptex2pdf",
            "command": "ptex2pdf",
            "args": [
                "-l",
                "-ot",
                "-kanji=utf8 -synctex=1",
                "%DOCFILE%.tex"
            ]
        },
        {
            "name": "biber",
            "command": "biber",
            "args": [
                "%DOCFILE%"
            ]
        }
    ],
    "latex-workshop.view.pdf.viewer": "tab",
    "latex-workshop.latex.autoBuild.cleanAndRetry.enabled": false
}

最後の2行は、それぞれ次の設定をする

  • pdfファイルをタブで開く

"latex-workshop.view.pdf.viewer": "tab",

  • auxファイルを自動で削除しない

"latex-workshop.latex.autoBuild.cleanAndRetry.enabled": false

"自動削除する"にするとコンパイルできなかった

bibtexの記述だけど、エントリーに"_"が入る場合、
バックスラッシュをつけて"\_"とする


5. キーバインドを変更する

AtomのときはCtrl + Shift + Bでスクリプトを実行していた
VS codeではこの組み合わせに割当があるのでCtrl + Shift + Aにスクリプトの実行を割当てた

左下の歯車マークをクリックして

  1. ”キーボードショートカット"を起動
  2. "R:Run Souce"をCtrl + Shift + S -> Ctrl + Shift + Aに変更した
  3. "Python: ターミナルでPythonファイルを実行する"にCtrl + Shift + Aを割当てた

もし他に割当がある場合は警告が出る


6. (おまけ)Rの旧バージョンから新バージョンへのRパッケージを移行する

旧バージョンから新バージョンへRのパッケージの移行
ameblo.jp