WinShellでTeXのコンパイル中にも編集する方法

そろそろ修士論文なり卒業論文なりの締め切りが迫ってきているころだと思いますが、今日、WinShellの驚くべき(?)機能を見つけたので紹介したいと思います。

Winshellはとても便利ですが、1つ問題があります。それはtexファイルのコンパイル中はファイルの編集ができなくなってしまうということです。

例えばWinShellの初期設定ではF5を押すと.texファイルから.dviファイルが作られるようになっていると思います。短い論文とかレポートなら良いのですが、修士論文や卒業論文ぐらいの大きさになると、DVIの生成、もっというとPDFの生成にえらく時間がかかるので、その間編集できないのはなかなかつらいです。

少しPCに詳しければ自分でバッチファイルを書いておいて、それを別途実行したりするんでしょうが、それだと画面を切り替えたりしないといけないし、それはそれで面倒だと思います。

今日、見つけたのはWinShellの機能を使って、なおかつコンパイルを別プロセスで行わせる方法です。ポイントとなるのは**「ユーザ指定プログラム」**というやつです。

このユーザ指定プログラムにはTeX関連プログラム同様に、実行するプログラムとコマンド引数を割り当てておくことができるのですが、下の「オプション」画面中央、「参照(B)」ボタンの右側に「DOS」と書かれたチェックボックスがあるのがお分かりいただけるでしょうか?

user_spacified_programs

このチェックは実行されるコマンドを内部の出力に表示するか、別にDOS窓を開くかを設定するチェックボックスで、このチェックを外しておくと、別のDOS窓でコマンドが実行されます

ということは、TeX関連プログラムの方で、このチェックを外せば、外部にTeXのコンパイルをさせることができる!と思ったのですが、なぜかTeX関連プログラムのDOSチェックボックスはアクティブになっていません

tex_related_programs

そこで、TeX関連プログラムの内容をコピペして、ユーザ指定プログラムに張り付け、唯一変えるのはDOSというチェックボックスにチェックを入れるか入れないかだけ、という状況を作ります。

このユーザ指定プログラムを実行すると、めでたくコンパイルが別プロセスで行われて、いくら時間がかかろうとも、WinShellは編集可能という素晴らしい状況になります!

ちなみに、ユーザ指定プログラムでコンパイルすると、F7などでDVIを閲覧しようとしたときに、勝手にpLaTeXが実行されてしまう人がいるかと思いますが、この場合はTeX関連プログラムのオプションで右側の「プログラム」から「DVIView」を選択し、その下にある「LaTeXを先に実行」などのチェックをすべて外しておけばよいと思います。

dvi_view

これで、TeXの執筆効率UP間違いなしです!!