From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Brian J. Carlson" Subject: Bug: ox-texi language set to uppercase -- causes texi2pdf errors [8.2.7c (8.2.7c-44-g3fed03-elpaplus @ /home/brian/.emacs.d/elpa/org-plus-contrib-20140818/)] Date: Tue, 19 Aug 2014 10:16:02 -0400 Message-ID: <877g24pntp.fsf@verizon.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52684) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XJkCu-0004Ri-3L for emacs-orgmode@gnu.org; Tue, 19 Aug 2014 10:16:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XJkCn-0000HX-R2 for emacs-orgmode@gnu.org; Tue, 19 Aug 2014 10:16:16 -0400 Received: from fldsmtpe01.verizon.com ([140.108.26.140]:9435) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XJkCn-0000HQ-H4 for emacs-orgmode@gnu.org; Tue, 19 Aug 2014 10:16:09 -0400 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org I exported an org document to texi. When I attempt to convert the outputted texi file to pdf using texi2pdf the language setting in the org file gets converted to uppercase: #+LANGUAGE: en --> @documentlanguage EN This causes texi2pdf to encounter errors: ,---- | $ texi2pdf foo.texi | This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) | restricted \write18 enabled. | entering extended mode | (./foo.texi (/usr/share/texmf/tex/texinfo/texinfo.tex | Loading texinfo [version 2013-09-11.11]: pdf, fonts, markup, glyphs, | page headings, tables, conditionals, indexing, sectioning, toc, environments, | defuns, macros, cross references, insertions, | (/usr/share/texlive/texmf-dist/tex/generic/epsf/epsf.tex | This is `epsf.tex' v2.7.4 <14 February 2011> | ) localization, formatting, and turning on texinfo input format.) | Runaway argument? | {EN_\finish }\else \globaldefs = 1 \input txi-EN.tex \fi \closein 1 \endgroup \ | ETC. | ./foo.texi:9: Paragraph ended before \documentlanguagetrywithoutunderscore was | complete. | | \par | l.9 | | ? `---- I believe this is because the replace-regexp-in-string is replacing all uppercase 'AUTO' and the FIXEDCASE argument to replace-regexp-in-string is set to nil. I believe this should be set to t. The following patch to ox-texinfo.el makes certain to use the value of "#+LANGUAGE:" without changing the case. Patch: --8<---------------cut here---------------start------------->8--- --- ox-texinfo.el.~1~ 2014-08-18 15:33:00.390014736 -0400 +++ ox-texinfo.el 2014-08-18 21:31:35.615925585 -0400 @@ -541,7 +541,7 @@ "^@documentencoding \\(AUTO\\)$" coding (replace-regexp-in-string - "^@documentlanguage \\(AUTO\\)$" language header nil nil 1) + "^@documentlanguage \\(AUTO\\)$" language header t nil 1) nil nil 1))) ;; Additional header options set by #+TEXINFO_HEADER. (let ((texinfo-header (plist-get info :texinfo-header))) --8<---------------cut here---------------end--------------->8--- Thanks, ;-b Emacs : GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7) of 2014-03-07 on lamiak, modified by Debian Package: Org-mode version 8.2.7c (8.2.7c-44-g3fed03-elpaplus @ /home/brian/.emacs.d/elpa/org-plus-contrib-20140818/) current state: ============== (setq org-src-lang-modes '(("ocaml" . tuareg) ("elisp" . emacs-lisp) ("ditaa" . artist) ("asymptote" . asy) ("dot" . fundamental) ("sqlite" . sql) ("calc" . fundamental) ("C" . c) ("cpp" . c++) ("screen" . shell-script) ("sql" . sql)) org-export-backends '(ascii html icalendar latex man odt texinfo) org-hide-leading-stars t org-tab-first-hook '(org-hide-block-toggle-maybe org-src-native-tab-command-maybe org-babel-hide-result-toggle-maybe org-babel-header-arg-expand) org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) org-occur-hook '(org-first-headline-recenter) org-metaup-hook '(org-babel-load-in-session-maybe) org-log-done t org-confirm-shell-link-function 'yes-or-no-p org-finalize-agenda-hook '((lambda nil (iimage-mode t)) org-agenda-to-appt) org-special-ctrl-a/e 'reversed org-agenda-custom-commands '(("f" "Agenda and (f)ull TODO list" ((agenda "Daily") (todo "TODO")))) org-use-sub-superscripts '{} org-todo-keyword-faces '(("TODO" . org-todo) ("PROJECT" . org-todo)) org-capture-templates '(("c" "calfw2org" entry (file nil) "* %?\n %(cfw:org-capture-day)")) org-agenda-include-diary t org-after-todo-state-change-hook '(org-clock-out-if-current) org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) org-agenda-before-write-hook '(org-agenda-add-entry-text) org-babel-pre-tangle-hook '(save-buffer) org-remember-templates '(("Tasks" 116 "** TODO %? %i\n %a" "~/doc/inbox.org" "Tasks") ("Appointments" 97 "** APPOINTMENT %?\n%^T\n%i\n %a" "~/doc/inbox.org" "Appointments") ("Note" 110 "** NOTE %? %i\n %a" "~/doc/inbox.org" "Notes")) org-mode-hook '(#[nil "\300\301\302\303\304$\207" [org-add-hook before-save-hook org-encrypt-entries nil t] 5] (lambda nil (set-face-foreground (quote org-hide) (frame-parameter nil (quote background-color)))) (lambda nil (if org-mode-use-flyspell (flyspell-mode))) #[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes org-journal-update-auto-mode-alist) org-fontify-done-headline t org-agenda-time-grid '((daily today require-timed remove-match) #("----------------" 0 16 (org-heading t)) (700 800 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000 2100 2200 2300)) org-agenda-file-regexp "\\`[^.].*\\.\\(org\\|org\\.gpg\\|org.asc\\)\\'" org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point org-babel-execute-safely-maybe) org-directory "~/doc" org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-hide-inline-tasks org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-archive-location "~/doc/archive/%s::datetree/* Finished Tasks\"" org-agenda-finalize-hook '((lambda nil (iimage-mode t)) org-agenda-to-appt) org-lowest-priority 69 org-crypt-key "DD675CD4384F060C" org-todo-keywords '((sequence "TODO(t)" "NEXT(n)" "STARTED(s)" "WAITING(w)" "|" "DONE(d)") (sequence "PROJECT(p)" "|" "COMPLETE(c)") (sequence "SOMEDAY" "|") (sequence "APPOINTMENT" "|" "FINISHED(f)") (sequence "|" "CANCELLED(x)")) org-modules '(org-bbdb org-bibtex org-crypt org-docview org-gnus org-habit org-info org-jsinfo org-irc org-mew org-mhe org-rmail org-vm org-wl org-w3m org-man) org-link-abbrev-alist '(("google" . "http://www.google.com/search?q=")) org-babel-tangle-lang-exts '(("C++" . "cpp") ("haskell" . "hs") ("LilyPond" . "ly") ("emacs-lisp" . "el")) org-confirm-elisp-link-function 'y-or-n-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-babel-load-languages '((emacs-lisp . t) (ditaa . t) (plantuml . t) (dot . t) (lilypond . t) (sh . t) (haskell . t) (C . t) (sql . t)) org-reveal-start-hook '(org-decrypt-entry) org-agenda-files '("~/doc") org-clock-out-hook '(org-clock-remove-empty-clock-drawer) org-src-fontify-natively t )