SublimeText3でLaTeXとR(ちょこっとPython)
を使いやすくする
はじめに
自分のメモ用です。意外にSublimeでのTeXについてまとめられているサイトを見ないと思ったので、
自分が設定した環境(友人Jの丸パクリ)について書いてみようと思いました。
SublimeText3で、LaTeXとR (ちょっとPython) を使いやすくするための一連の設定手順を記載します。
Sublimeは適宜再起動するようにしてください。
※windowsユーザー向けの記事です。
準備するソフトウェア
- Sublime Text 3
- TeXLive 2019
- SumatraPDF
- R-3.6.2
ソフトウェアの準備手順
TeXLive 2019
TeX Live - TeX Wiki を参考にしながらTeX Liveをインストールします。
Windowsの場合、 TeX Live/Windows - TeX Wiki を参考に、インストーラをダウンロードします。
著者はネットワークインストーラの場合を参考に、 Installing TeX Live over the Internet の install-tl-windows.exe
を利用してTeXLive 2019をインストールしました。
正常にインストールできているかの確認として、Windowsキー + R
を押し、cmd
と入力、コマンドプロンプトを起動します。コマンドラインにlatexmk
と入力した際、以下のような反応があればインストールは成功です。
C:\Users\(User名)>latexmk
Latexmk: This is Latexmk, John Collins, 26 Dec. 2019, version: 4.67.
Latexmk: No file name specified, and I couldn't find any
Use
latexmk -help
to get usage information
C:\texlive\2019\bin\win32\runscript.tlu:907: command failed with exit code 10:
perl.exe c:\texlive\2019\texmf-dist\scripts\latexmk\latexmk.pl
Sublime Text 3
公式HP Sublime Text 3 のDOWNLOAD FOR WINDOWS
よりダウンロードし、
Sublime Text Build 3211 x64 Setup.exe
よりインストールを行います。
SumatraPDF
TeX WikiのDownload SumatraPDFを参考に、
公式HP SumatraPDF の
Installer : SumatraPDF-3.1.2-64-install.exe
よりインストーラをダウンロードし、
Sublime Text Build 3211 x64 Setup.exe
を実行してインストールを行います。
R-3.6.2
The Comprehensive R Archive Network (Download R for Windows -> base)
R-3.6.2 for Windows のDownload R 3.6.2 for Windows
よりインストーラをダウンロードし、
R-3.6.2-win.exe
よりインストールを行います。
設定手順
まずはじめに、Sublime Textを開きCtrl+Shift+P
を押し、Command Paletteを開き、
install Package installer
とPaletteに入力、決定。
これでPackage Controlのインストールは完了です。
次に、以下3つのPackageをインストールします。
- LaTeXTools
- R-Box
- SendCode
LaTeXTools
Package Controlの手順と同様に、Ctrl+Shift+P
を押し、Command Paletteを開きます。
次に、Package Control: Install Package
とPaletteに入力し決定します。
出てきたPaletteにLaTeXTools
と入力、決定すればLaTeXToolsがインストールされます。
(インストールが完了するとSublime Text上でメッセージが表示されます。)
次にLaTeXToolsの設定をします。Sublime Textの上欄のメニュー、
右から2つ目の[Preferences]
から
[Preferences]-> [Package Settings] -> [LaTeXTools] -> [Settings-User]
と選択します。
\Sublime Text 3\Packages\User\LaTeXTools.sublime-settings
が存在しない場合には、
You do not currently have a personalized
LaTeXTools.sublime-setting file.
Create a copy of the default settings file in your
User directory?
上記のようなメッセージが表示されるので[OK]
をクリックします。
Sublime Text上で表示されたLaTeXTools.sublime-settings
に対して、Ctrl + F
を押し、
出てきた検索欄にbuilder_settings
と入力し、(398行目)の"builder_settings"を見つけます。
そして、
(398行目) "builder_settings"
から
(406行目) // General settings:
の間に、以下の内容を追加します。
398 "builder_settings" : {
"command" : ["latexmk", "-cd",
"-e", "$latex = 'uplatex %O -no-guess-input-enc -kanji=utf8 -interaction=nonstopmode -synctex=1 %S'",
"-e", "$biber = 'biber %O --bblencoding=utf8 -u -U --output_safechars %B'",
"-e", "$bibtex = 'upbibtex %O %B'",
"-e", "$makeindex = 'upmendex %O -o %D %S'",
"-e", "$dvipdf = 'dvipdfmx %O -o %D %S'",
"-f", "-%E", "-norc", "-gg", "-pdfdvi"],
406 // General settings:
上記の内容を追加した後Ctrl + S
で保存を行います。
LaTeXのコンパイルができるかどうかを確認します。以下の内容の
text.tex
をSublime Text上で作成した後、Ctrl + B
を押します。
初回はBuildの方法を聞いてくるのでBuild With LaTeX - Traditional
を選びます。
[Tool]->[Build With...]
からもビルド方法の選択は可能です。
Buildingの動作(画面下のバーに動作状況が表示されます)が終了した後、自動的にSumatraPDFが起動され、内容が正常に表示されていれば、確認は完了です。
\documentclass[a4j]{ujarticle}
\title{ {\LaTeX} testファイル }
\author{ほげ-やま-ふが}
\date{\today}
\begin{document}
\maketitle
\section{はじめに}
Hell
\subsection*{おわりに}
World
\end{document}
!!!注意!!!
\documentclass[a4j]{jarticle} ではなく
\documentclass[a4j]{ujarticle} を使ってください!
documentclassがjarticleとなっている場合、正常にコンパイル出来ないようです...
理由が分かる方は、助言をよろしくお願いします。
環境変数を通して便利にしよう!
この記事の中で一番ややこしい所だと思われます。
環境変数を通すことで、SumatraPDF上で文章をダブルクリックすると、
Sublime Textで該当部分のソースコードを開くことができるようになります。
Windowsキー + R
を押し、control
と入力、コントロールパネルを開きます。
右上の検索欄に環境変数
と入力し表示された一覧から、
[システム - システム環境変数の編集] -> 環境変数(N)
を選択します。
[システム環境変数(S)]の一覧から[Path]を選択し、ダブルクリックもしくは[編集(I)]を押します。
[環境変数名の編集] -> [新規(N)]
から以下のPathを追加します。
C:\Program Files\Sublime Text 3\
SumatraPDFを起動して、左上の一覧をクリックして[設定(S)]->[オプション(O)]
を選択します。
逆順検索コマンドラインの設定を以下の内容にします。
sublime_text %f:%l
以上で環境変数の設定は完了です。
確認をするために、test.tex
をSumatraPDfで開き、
そしてSumatraPDF上の文章で[1 はじめに]の部分をダブルクリックして、
Sublime Textで(10行目) \section{はじめに}
を開くようになっていたら成功です。
!!!注意!!!
.tex
ファイルを置いているフォルダ名にはスペースを入れないようにしてください!!
例hoge fuga
フォルダに置いたtest.tex
で上記の確認を行ってみるとわかります。
R-Box
LaTeXToolの手順と同様に、
Package Control: Install Package
からR-Boxをインストールします。
R-Boxに関しては特に設定する必要はありません。
SendCode
LaTeXToolの手順と同様に、
Package Control: Install Package
からSendCodeをインストールする。
SendCodeの設定を行います。こちらもLaTeXToolの設定、の手順と同様に、
[Preferences] -> [Package Settings] -> [SendCode] -> [Settings]
を選択します。
その後設定が表示されるので、その設定欄の右側に以下の内容を記載します。
{
"prog": "r",
"r": {
"prog": "r"
},
}
上記の内容を追加すれば、Sublime Text上で書いたRのコードをCtrl + Enter
でRGuiに送信できるようになります。
但し、あらかじめRGuiを立ち上げておく必要があるので注意してください。
正常に動作するかどうかを確認します。
curve(dnorm(x) , -5, 5)
この行を入力した状態でCtrl+Enter
を押せば、RGuiに送信されます。
RGui上に正規分布のグラフが現れれば成功です。
Pythonのためのシンタックス設定
Pythonのインデントについて
Pythonのコード内において、インデントはブロックを区別する役割があり、
主に半角space 4つ , Tab , 半角space 2つ
の流儀があります。(space 2つ は殆ど見ませんが)
Sublime Textの、Pythonのシンタックス設定において、Tab = space 4つ分
としておけば、
tab
を使ってもspace 4つ
のコードと混同しないようにします。
(混同することは推奨されていないため)
まず、はじめに何でもいいので.py
のファイルをSublime Textで開きます。
(適当にメモ帳を作って、拡張子を.py
に変えたものを開いたら大丈夫です)
後は、LaTeXTool等の設定、と同様におこないます。
[Preferences] -> [Settings-Syntax Specific]
を選択します。
その後設定が表示されるので、その設定欄の右側に以下の内容を記載します。
// These settings override both User and Default settings for the Python syntax
{
"tab_size": 4,
"translate_tabs_to_spaces": true
}
Tab
を押して、半角space 4つ
が出力されていれば設定完了です。
使い方まとめ
LaTeX
-
Ctrl + B
でビルドができる。 -
SumatraPDF上で文章をダブルクリックすると、
Sublime Textで該当部分のソースコードを開くことができる。
R
-
RGuiを起動したのち、Sublime Textにおいて、
Ctrl + Enter
を押すことで、コードの送信、および実行ができる。
Python
-
Tab
を押せば半角space 4つ
を出力することができる。
Sublimeに入れたら便利そうなもの
以上で基本的な環境構成は完了ですが、
ほかに加えたら便利だと思われるPackageを以下に記載します。
-
Japanize
Sublime Textを日本語化してくれます。
細かい設定等が英語だと困ることがあると思ったので入れました。 -
ConvertToUTF8
文字コード関連の問題を解決してくれる(らしい)Packageです。
UTF-8を基準にするなら入れていて悪いことはないかと思います。 -
Alignment
とても便利なPackageです。
例えば、以下のようなコードについて。
int x = 0;
double y = 1;
int z = 10;
このコードの全範囲を選択し、Ctrl + Alt + A
と入力することにより、
int x = 0;
double y = 1;
int z = 10;
=
を基準にして、インデントを調節してくれます。Alignmentの設定Settings-User
を
{
"alignment_space_chars": ["=","-"],
}
上記のように設定することにより、-
も基準に調節してくれるようになり、
Rを使うにあたって便利になります。
また、Alignmentの設定Key Bindings-User
を
設定することにより、コマンドを変更することができます。
(私はCtrl + Shift + A
に変更しています。)