コマンドラインで組織モードファイルをPDFとしてエクスポートしますか?


10

Emacsが組織モードファイルをBeamer PDFにエクスポートするために使用するコマンドライン引数は何ですか?(Makefileユーザーが実行したときにPDFを生成するを作成したいと思いますmake。)

私はこの答えに従っみましたが、うまくいきませんでした:

$ emacs --batch foo.org -f org-beamer-export-to-pdf
Symbol's function definition is void: org-beamer-export-to-pdf
$ emacs --batch -l ox-beamer foo.org -f org-beamer-export-to-pdf
Cannot open load file: ox-beamer

上記のエラーは、org-modeファイルがカスタムの場所にあり、私~/.emacs.d/init.elがロードされていない(別名を--batch意味する)ために発生します。-q--no-init-file

Emacsにinitファイルをロードするように指示すると、動作します。

$ emacs --batch -l ~/.emacs.d/init.el foo.org -f org-beamer-export-to-pdf

しかし、これは他のユーザーを使用することで機能しない~/.emacsか、~/.emacs.el代わりに~/.emacs.d/init.el。Emacsにロードするように指示してみましたuser-init-fileが、うまくいきませんでした:

$ emacs --batch --eval '(load user-init-file)' foo.org -f org-beamer-export-to-pdf
Wrong type argument: stringp, nil

C-x C-e l PEmacsをインタラクティブに使用しているときにすべてのユーザーが正常にを押してBeamer PDFをエクスポートできるとすると、どの非インタラクティブコマンドでPDFが生成されますか?


eval (require 'org)またはそのようなもの– initファイル--batchが禁止している読み込みを行っています。
Sean Allred、2015年

のようなものを試してくださいemacs -u $USER --batch --eval '(message "-----> My user-init-file: "%s" user-init-file)'。initファイルをロードしない場合は、おそらくが必要ですox-beamer
mutbuerger 2015年

github.com/fniessen/orgmkが役立つかもしれません。
イスタ2015年

回答:


8

以下は私のために働きました:

emacs \
    -u "$(id -un)" \
    --batch \
    --eval '(load user-init-file)' \
    foo.org \
    -f org-beamer-export-to-pdf

定義-u <username>するために渡すヒントについては、@ mutbuergerに感謝しますuser-init-file


私の場合、それを機能させる(load user-init-file)ために、特定(require 'blah)のs式を削除して置き換える必要があることがわかりました(emacs 24.5.1を使用)。
マーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.