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

VSCodeで快適に卒論を書く

More than 1 year has passed since last update.

こちらのアドベントカレンダーの13日目の記事になります。

この記事は、「Visual Studio Codeで卒論を書けばストレスなく書けるよ!」というのを伝えたい記事です。

快適なところ

  • .texファイル保存時に自動でpdf作成、pdfプレビュー。
  • スニペット + IntelliSenseで楽に書ける
  • 普段コードを書くように作業できる([⌘+C]1行コピー、[⌘+/]コメントアウトなどのショートカットがそのまま出来る。)
  • 画像ファイルをrenameしたい時もVSCode上で完結できる
  • そのまま研究室サーバーにアップしたいなどやりたいこと大体プラグインで解決できる

個人的には、普段コードを書くように作業できるのが非常にストレスなくて気に入ってます。

こんな雰囲気です(一応中身サンプルにして解像度落としました)
気合で感じ取ってください。
スクリーンショット 2017-12-12 16.05.09.png

ぶっちゃけイケてない所

  • (Macだと?)エラー文が文字化けするので、記述ミスが見つけづらい。
    • こまめにコンパイルしとくと良いです。
  • コンパイル方式が色々あることで、違う方式だと先輩の論文が読み込めない。
    • pdfでもらいましょう。

VSCode + Tex

環境構築についてはVS CodeでTeXを使う方法 - elechoのぶろぐが非常によくまとまっているので参考にして下さい。

※1 私はTeXLive 2017を使用しました。
※2 現在は、記事にあるLaTeX Language Supportは入れる必要ないです。

拡張機能である「LaTeX Workshop」を入れるだけで、以下が出来るようになり超快適になります。

  • 保存時、コンパイル
  • 分割画面でpdfプレビュー
  • スニペット + IntelliSense

ちなみに、latexlanguage idが使用できるようになるので、個別の設定追加もできます。

タイプセットの設定のptex2pdfについて補足。

ptex2pdf は uplatex, euptex, uptex, platex, eptex, ptex の中から指定したコマンドと dvipdfmx とを連続して実行する Lua スクリプトです.

setting.json
  "latex-workshop.latex.toolchain": [
        {
            "command": "ptex2pdf",
            "args": [
                "-l",
                "-ot",
                "-kanji=utf8 -synctex=1",
                "%DOC%"
            ]
        }
    ]
args 説明
-l platexを使用する
-ot Texコンパイラオプションを使用する
-kanji=utf8 ファイルの文字コードにutf8指定
-synctex=1 SyncTeXを使うようにする
(編集行にあたるpdfの箇所にジャンプできるようになる)
%DOC% 出力ファイル名の指定。詳しくはLaTeX-Workshop#faq

VSCode + スタイルファイルの読み込み

大学、研究室では指定されている論文のスタイルファイルがあると思います。
.styのやつですね。他にも.clsなど色々あります。

基本的に、.texファイルと同ディレクトリにあれば読み込んでくれるのですが、Tex側で管理させるようにした方が、作業フォルダを分けた際のストレスがなくなります。

  1. スタイルファイルの文字コード変更
    • Macの場合はスタイルファイルがshiftjisだと読み込めないので、nkfなどで、utf8に変換。
  2. /usr/local/texlive/2017/texmf-dist/tex/latex/配下にコピー
    • TeXLive 2017 + Macの場合です。。Windowsだとどうなんでしう。。
  3. sudo mktexlsr

「あらかじめファイルの一覧表を作っておき,ファイルを探すときにはそれを参照する」という仕組みで,この一覧表 (ls-R) を作るコマンドが mktexlsr です。

VSCode + 研究室サーバー

私の研究室では、研究室サーバーへの提出を促されます。

最初はFileZillaというFTPクライアントアプリを使ってアップロードしていたのですが、毎回起動するのも面倒なのでVSCodeからアップロードしてます。

VSCodeにはstfpというありがたいプラグインがあるのでそれを使います。

  1. 拡張機能sftpをインストール
  2. Ctrl+Shift+P -> SFTP: configコマンド実行
    • .vscode/sftp.jsonが作成されます。
  3. sftp.json内に設定を記述
    • 各項目はsftpリポジトリのREADME.mdを参照して下さい。
    • 下記は私の設定項目だけ抜粋してます。
vscode/sftp.json
{
    "host": "研究室サーバURL",
    "username": "ユーザー名",
    "password": "パスワード",
    "protocol": "sftp",
    "remotePath": "アップロードパス",
    "ignore": [
        "**/.vscode/**",
        "**/.git/**",
        "**/.DS_Store",
        "*.DS_Store"
    ]
}

あとは、アップロードしたいときにSFTP: Uploadコマンドを実行すればアップロード完了です。とても快適。

(え、Gitで管理してるだって!そんなあなたに つ CircleCIで卒論リポジトリを研究室サーバに自動アップロードする

VSCode + 卒論 どうですか

卒論を初めた5月頃からこのVSCode環境でやっていますが、問題なく出来てます。
友達にまだWordでやってるひとや、TexStudio動かなくなった人が居たらおすすめしてみてください。

y428_b
mixi
全ての人に心地よいつながりを
http://mixi.co.jp
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
ユーザーは見つかりませんでした