LoginSignup
3
3

More than 3 years have passed since last update.

SublimeText3でLaTeXとR(ちょこっとPython)の環境構築(Windows)

Last updated at Posted at 2020-02-21

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 Internetinstall-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 3DOWNLOAD 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 WindowsDownload 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:の間に、以下の内容を追加します。

\User\LaTeXTools.sublime-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が起動され、内容が正常に表示されていれば、確認は完了です。

test.tex

\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となっている場合、正常にコンパイル出来ないようです...
理由が分かる方は、助言をよろしくお願いします。

追記(2020/04/30)
unknown.png
友人より、上記のような修正でも良いと教えていただきました。

環境変数を通して便利にしよう!

この記事の中で一番ややこしい所だと思われます。

環境変数を通すことで、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.texSumatraPDfで開き、
そして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]を選択します。

その後設定が表示されるので、その設定欄の右側に以下の内容を記載します。

\User\SendCode.sublime-settings
{
    "prog": "r",
    "r": {
        "prog": "r"
    },
}

上記の内容を追加すれば、Sublime Text上で書いたRのコードをCtrl + EnterRGuiに送信できるようになります。
但し、あらかじめRGuiを立ち上げておく必要があるので注意してください。

正常に動作するかどうかを確認します。

R.r
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]を選択します。

その後設定が表示されるので、その設定欄の右側に以下の内容を記載します。

\User\Python.sublime-settings
// 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です。

例えば、以下のようなコードについて。

sample.c
int x = 0;
double y = 1;
int z = 10;

このコードの全範囲を選択し、Ctrl + Alt + Aと入力することにより、

sample.c
int x    = 0;
double y = 1;
int z    = 10;

=を基準にして、インデントを調節してくれます。Alignmentの設定Settings-User

Settings-User
{
    "alignment_space_chars": ["=","-"],
}

上記のように設定することにより、-も基準に調節してくれるようになり、
Rを使うにあたって便利になります。
また、Alignmentの設定Key Bindings-User
設定することにより、コマンドを変更することができます。
(私はCtrl + Shift + Aに変更しています。)

参考文献

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3