2007-01-17

AUCTeX 11.84 の tex-jp.el のバグ・フィクス

AUCTeX 11.84 の tex-jp.el にバグがある (井汲さん、報告ありがとう)。日本語ファイルを AUCTeX からコンパイルしても、コンパイルが終了しない。その状態で C-c C-l を打ってコンパイル・ログを表示させると (下記)、コンパイル自体が始まっていないことが分かる。

Running `LaTeX' on `foo' with ``platex " -interaction=nonstopmode\input{"foo.tex"}"''
This is pTeX, Version 3.14159-p3.1.3 (euc) (Web2C 7.4.5)
pLaTeX2e <2001/09/04>+0 (based on LaTeX2e <2001/06/01> patch level 0)
! I can't find file `" -interaction=nonstopmode"'.
<to be read again>
\let
<*> " -interaction=nonstopmode\input
{foo.tex}"
Please type another input file name: 

AUCTeX はバージョン 11.84 から、空白を含むファイル名に対応した。

この時、日本語関連のコードの修正を (ぼくが) 怠ったのが、今回のバグの原因 (なので、英語ファイルを編集するだけなら、このバグは顕在化しない)。

パッチと tex-jp.el.11.84

修正パッチは以下の通り。

Index: tex-jp.el
===================================================================
RCS file: /sources/auctex/auctex/tex-jp.el,v
retrieving revision 5.91
retrieving revision 5.92
diff -u -r5.91 -r5.92
--- tex-jp.el 7 Jun 2006 20:26:51 -0000 5.91
+++ tex-jp.el 17 Jan 2007 01:32:02 -0000 5.92
@@ -52,13 +52,13 @@
   ;; Changed to double quotes for Windows afflicted people.  I don't
   ;; use the %(latex) and %(tex) shorthands here because I have not
   ;; clue whether Omega-related versions exist.  --dak
-  '(("jTeX" "%(PDF)jtex %S%(PDFout) \"%(mode)\\input %t\""
+  '(("jTeX" "%(PDF)jtex %`%S%(PDFout)%(mode)%' %t"
      TeX-run-TeX nil (plain-tex-mode) :help "Run NTT jTeX")
-    ("jLaTeX" "%(PDF)jlatex %S%(PDFout) \"%(mode)\\input{%t}\""
+    ("jLaTeX" "%(PDF)jlatex %`%S%(PDFout)%(mode)%' %t"
      TeX-run-TeX nil (latex-mode) :help "Run NTT jLaTeX")
-    ("pTeX" "%(PDF)ptex %S%(PDFout) \"%(mode)\\input %t\""
+    ("pTeX" "%(PDF)ptex %`%S%(PDFout)%(mode)%' %t"
      TeX-run-TeX nil (plain-tex-mode) :help "Run ASCII pTeX")
-    ("pLaTeX" "%(PDF)platex %S%(PDFout) \"%(mode)\\input{%t}\""
+    ("pLaTeX" "%(PDF)platex %`%S%(PDFout)%(mode)%' %t"
      TeX-run-TeX nil (latex-mode) :help "Run ASCII pLaTeX")
     ("Mendex" "mendex %s" TeX-run-command nil t :help "Create index file with mendex")
     ("jBibTeX" "jbibtex %s" TeX-run-BibTeX nil t :help "Run jBibTeX"))

パッチをあてるのが面倒な人のために、修正済みの tex-jp.el を tex-jp.el.11.84 として下記リンク先に置いた。ダウンロード後、ファイル名を tex-jp.el に変更して古いファイルと置き換えられたし。

AUCTeX の CVS 版は、上記バグを修正済み。

4 comments:

  1. はじめまして。この記事を見つけて、やっと解決したので、おもわずTrackBackしてしまいました。ありがとうございました。

    ReplyDelete
  2. こちらの不手際で、ご迷惑おかけしました。
    ちゃんと動くようになって、良かったです :)

    ReplyDelete
  3. いえいえ、こういうものを公開していただけて、とても助かります。

    ReplyDelete