※ 本記事は2022年に書いた記事を更新したものです.少々情報が古いかもしれません.

はじめに

LaTeX で論文や資料を作成していると,「ビルドが終わるまで何度も画面を確認してしまう…」そんな経験はありませんか?
特に,図表や数式が多い大規模なプロジェクトでは,ビルドに数十秒〜数分かかることも珍しくありません.
本記事では,VSCode(MacOS)の LaTeX Workshop でビルド完了時に自動で通知を出す方法を,実用的な観点から丁寧に解説します.

この記事で得られること

  • ビルド完了を見逃さず,作業効率を向上できる
  • Mac の通知センターを活用したスマートなワークフロー
  • 設定のカスタマイズや応用例も紹介

本記事の内容で通知を行った結果(右上)
本記事の内容で通知を行った結果(右上)


なぜ「通知」が必要なのか?

LaTeX のビルドは,ちょっとした修正でも意外と時間がかかります.
その間,エディタやターミナルを何度も見に行くのは非効率ですよね.
通知を活用すれば,

  • 他の作業に集中できる
  • ビルド完了を確実にキャッチできる
  • エラー時のアラートにも応用可能
    といったメリットがあります.

実現のアイデアと全体像

VSCode の LaTeX Workshop には,ビルド時に任意のコマンドを実行できる「ツール」機能があります.
ここでは,Mac 標準の osascript コマンドを使い,ビルド完了時に通知を出す仕組みを組み込みます.


ステップ1:通知コマンドの動作確認

まずはターミナルで,下記コマンドを実行してみてください.

osascript -e 'display notification "ビルドが完了しました!" with title "LaTeX Workshop"'

右上に通知が表示されれば準備OKです.

通知結果(右上)
通知結果(右上)


ステップ2:LaTeX Workshop の設定

VSCode の settings.json に,通知用ツールを追加します.
latex-workshop.latex.tools に以下の設定を追記してください.

"latex-workshop.latex.tools": [
  {
    "name": "notify", // 通知用のツール
    "command": "osascript",
    "args": [
      "-e",
      "display notification \"TeXファイル(%DOCFILE_EXT%)のビルドが完了し,%OUTDIR% に保存されました!\" with title \"LaTeX Workshop\""
    ]
  },
  // ...他のツール設定
]

ポイント

  • name は分かりやすく notify などにしましょう.
  • args の通知メッセージやタイトルは自由にカスタマイズできます.

ステップ3:レシピに通知ツールを組み込む

ビルドレシピ(latex-workshop.latex.recipes)に,先ほど定義した notify ツールを追加します.
通常のビルドツールの後に notify を並べることで,ビルド完了時に通知が出ます.

"latex-workshop.latex.recipes": [
  {
    "name": "with-notify",
    "tools": [
      "pdflatex", // 例:ビルド用ツール
      "notify"    // 通知用ツール
    ]
  },
  // ...他のレシピ
]

Tips

  • 既存のレシピに notify を追加するだけでもOKです.
  • 複数のビルドツールを組み合わせる場合も,最後に notify を入れると便利です.

おまけ:通知音でさらに快適に

通知だけでなく,音でもビルド完了を知らせたい場合は,Mac 標準の afplay コマンドを使う方法もあります.

"latex-workshop.latex.tools": [
  {
    "name": "bell",
    "command": "afplay",
    "args": [
      "/System/Library/Sounds/Hero.aiff" // 任意の音声ファイル
    ]
  },
  // ...他のツール設定
]

レシピに bell を追加すれば,ビルド完了時に通知音が鳴ります.


補足・注意点

  • MacOS専用
    osascriptafplay は MacOS 固有のコマンドです.Windows や Linux では動作しません.
  • 通知内容のカスタマイズ
    メッセージやタイトルは自由に編集できます.用途に応じて工夫してください.
  • エラー通知への応用
    ビルド失敗時にのみ通知を出す設定も可能です.詳細は LaTeX Workshop の公式ドキュメントを参照してください.

まとめ

LaTeX のビルド完了通知を活用すれば,作業効率が大きく向上します.
「ビルド待ちのストレス」から解放され,より快適な執筆環境を手に入れてみませんか?