Tôi sử dụng đối số dòng lệnh nào để nhận Emacs để xuất tệp chế độ org sang Beamer PDF? (Tôi muốn tạo một Makefilebản PDF tạo ra khi người dùng chạy make.)
Tôi đã cố gắng làm theo câu trả lời này nhưng không thể làm cho nó hoạt động:
$ 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
Lỗi trên xuất phát từ thực tế là các tệp chế độ org nằm ở vị trí tùy chỉnh và tệp của tôi ~/.emacs.d/init.elkhông được tải ( --batchngụ ý -qaka --no-init-file).
Nếu tôi bảo Emacs tải tập tin init của tôi thì nó sẽ hoạt động:
$ emacs --batch -l ~/.emacs.d/init.el foo.org -f org-beamer-export-to-pdf
Tuy nhiên, điều này không hoạt động đối với những người dùng khác sử dụng ~/.emacshoặc ~/.emacs.elthay vì ~/.emacs.d/init.el. Tôi đã cố nói với Emacs tải user-init-filenhưng nó không hoạt động:
$ emacs --batch --eval '(load user-init-file)' foo.org -f org-beamer-export-to-pdf
Wrong type argument: stringp, nil
Giả sử tất cả người dùng có thể nhấn thành công C-x C-e l Pđể xuất Beamer PDF khi sử dụng Emacs một cách tương tác, lệnh không tương tác nào sẽ tạo ra PDF?
emacs -u $USER --batch --eval '(message "-----> My user-init-file: "%s" user-init-file)'. Nếu bạn không tải tập tin init của mình, có lẽ bạn cần phải yêu cầu ox-beamer.
(require 'org)hoặc một cái gì đó tương tự - tập tin init của bạn đang thực hiện một số tải--batchbị cấm.