web-dev-qa-db-ja.com

OSXのEmacs.appにAucTeX1.86をインストールする

Emacsformacosx.comからEmacsバイナリ(バージョン24.0.50)にAucTeX1.86をインストールしようとしています。最初の試行で_./configure_出力:

_configure: error: Cannot find the texmf directory!_
_Please use --with-texmf-dir=dir to specify where the preview tex files go_ _configure: error: ./configure failed for preview_

_--with-texmf-dir=/usr/local/texlive/texmf-local_を追加します。これに_./configure_はいくつかのお祝いの言葉を喜んで返信します。 makeと_Sudo make install_を使用してグリッチなしでコンパイルします。

Emacsで.texファイルを開くと、AucTeXがロードされません。 *スクラッチ*バッファーとEmacs出力で_(load auctex.el nil t t)_ C-jを発行します。

Debugger entered--LISP error:(file-error "Cannot open load file" "auctex.el")

何かが起きています。 Emacsがファイルを見つけられなかったので、本来の場所にインストールされていなかったに違いないと思いました。私はほとんどのAucTeXファイルを_/usr/share/emacs/site-LISP_まで追跡します。ここにはEmacs22.1があります。

ここには2つの選択肢がありました。1。EmacsにAucTeXの場所を教えます(方法がわかりません)。 2.より多くの構成オプションを使用してAucTeXを再コンパイルします(これはより簡単に見えました)。

以前のインストールからすべてのAucTeXファイルを削除した後、再コンパイルすることを選択しました。今回はソースを設定し、使用するEmacsがどこにあるかを次のように伝えます。

_./configure -with-emacs=/Applications/Emacs.app/Contents/MacOS/Emacs --with-LISP-dir=/Applications/Emacs.app/Contents/Resources/site-LISP --with-texmf-dir=/usr/local/texlive/texmf-local_

今回は文句を言う:

_`configure: error: Cannot locate LISP directory,`
`use  --with-lispdir, --datadir, or possibly --prefix to rectify this`
_

_--with-LISP-dir=dir_オプションを含めましたが。取り出しても、LISPディレクトリが見つからないと文句を言う。 AucTeXは、Applicationsフォルダー内のEmacs.appを気に入っていないようです。

私の質問は、これをどのように機能させるのですか?

9
Ricardo

Mac/GNUstepのマニュアルから、Finderから起動されたEmacsのインスタンスは環境変数を継承しないため、設定する必要があります。 /etc/pathおよび/etc/path.d/は、環境変数をシステム全体に設定しますが、GUI(Finderで起動されるインスタンス)で使用できるようにするには、~/.MacOSX/environment.plistファイルで設定する必要があります。

ディレクトリとファイルはユーザーが作成する必要があります。それが完了したら、以下を(必要に応じて変更して)environment.plistファイルに貼り付けます。これは、 http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2009-12/msg00199.html にあるメーリングリストのメッセージから取得しました。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd";>
<plist version="1.0">
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/texlive/2009basic/bin/universal-darwin</string>
</dict>
</plist>

AUCTeXは正常に動作するはずです。

5
Ricardo

Auctexを純粋なEmacsで動作させる方法は次のとおりです。

  1. MacTeX配布パッケージをインストールします
  2. OS X emacs をダウンロードし、/Applicationsに配置します
  3. Auctex tarballをダウンロード
  4. Auctexディレクトリに移動し、次のコマンドで設定します。

    ./configure --with-emacs=/Applications/Emacs.app/Contents/MacOS/Emacs --with-lispdir=/Applications/Emacs.app/Contents/Resources/site-LISP --with-texmf-dir=/usr/local/texlive/texmf-local
    
  5. 実行:

    make; Sudo make install
    

    Emacs.app内のelispファイル、/usr/local/share/infoへの情報ファイルなどをインストールします。

  6. ~/.emacsファイルを編集してAuctex/Preview-latexをロードし、EmacsがLaTeX実行可能ファイルを指すようにします。

    (setenv "PATH" (concat "/usr/texbin:/usr/local/bin:" (getenv "PATH")))
    (setq exec-path (append '("/usr/texbin" "/usr/local/bin") exec-path))
    (load "auctex.el" nil t t)
    (load "preview-latex.el" nil t t)
    
  7. Auctexとpreview-latexが機能するようになりました。覚えておくべき1つのこと:古いバージョンのAuctexでは、ps経路はpdfよりもうまく機能するようです。プレビューラテックス画像が「/ typecheckin --setfileposition--」というエラーで表示されない場合は、「メニューバー->コマンド-> TeXingオプション」で「PDFの生成」を無効にしてみてください。


Update:ステップ(2-5)はHomebrewパッケージマネージャーに置き換えることができます:

brew install emacs --cocoa
brew install auctex

他の手順はまだ正しいです。 Emacsの「PDFを生成」オプションが機能するようになりました。

10
Kipton Barros

AUCTeXをロードするには、.emacsファイルを変更する必要があります。 AUCTeXマニュアルから:

Emacsを使用する場合(またはパッケージシステムの使用を明示的に無効にした場合)、スタートアップファイル「auctex.el」および「preview-latex.el」は、「site-start.d /」の種類のディレクトリにすでに存在している可能性があります。 Emacsのインストールはそれを提供します。その場合、それらは起動時に自動的にロードされ、他に何もする必要はありません。そうでない場合は、少なくともロードパスのどこかに配置する必要があります。次に、行を配置してそれらをロードできます

(load "auctex.el" nil t t)

(load "preview-latex.el" nil t t)

initファイルに。

--with-lispdirを明示的に使用した場合は、次のようなものを追加して、指定したディレクトリをEmacsのload-path変数に追加する必要がある場合があります。

(add-to-list 'load-path "~/elisp")

emacsスタートアップファイルへの上記の行の前。

システムに~/elispディレクトリがないため、構成で指定されたディレクトリ(add-to-list 'load-path "/Applications/Emacs.app/Contents/Resources/site-LISP")を追加します。これは、Emacsで.texファイルが開かれるたびにAUCTexをロードする仕事をしているようです。何らかの理由で、ツールバーはデフォルトで有効になっていません。

これで、AUCTeXフックが適用されます。ただし、ドキュメントをラテックス化しようとすると、エラーが発生して終了します。

/bin/sh: pdflatex: command not found

これは$ PATH $の問題のようです。

0
Ricardo