* [new exporter] fails on double backslashes
@ 2012-07-17 9:05 Thomas Holst
2012-07-17 10:12 ` Nicolas Goaziou
0 siblings, 1 reply; 2+ messages in thread
From: Thomas Holst @ 2012-07-17 9:05 UTC (permalink / raw)
To: emacs-orgmode Mode
[-- Attachment #1: Type: text/plain, Size: 1438 bytes --]
Hello,
right now I am testing the new exporter. It works very well except on
backslashes. Here is a minimal example which shows the problem:
#+BEGIN_SRC org
#+TITLE: new-exporter.org
#+AUTHOR: Thomas Holst
#+EMAIL: thomas.holst@de.bosch.com
#+DATE: 2012-07-16 Mo
#+DESCRIPTION:
#+KEYWORDS:
#+LANGUAGE: en
#+OPTIONS: H:3 num:t toc:t \n:nil @:t ::t |:t ^:{} -:t f:t *:t <:t
#+OPTIONS: TeX:t LaTeX:t skip:nil d:t todo:t pri:nil tags:t
#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:
#+LINK_HOME:
#+XSLT:
* headline
some text \\
more text
#+END_SRC
When I try to export to LaTeX (M-x org-export-dispatch <RET> L) there is
an error:
and: Invalid search bound (wrong side of point)
No LaTeX code is produced.
This is with emacs -Q and only the relevant org files loaded:
emacs-vesion:
GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600) of 2011-09-19 on 3249CTO
org-version:
Org-mode version 7.8.11
(release_7.8.11-196-g5dbd13 @
c:/daten/users/de_hts2fe/git/org-mode/lisp/)
OS: WinXP (also tested with emacs 23.2)
I know that it does not make sense to have an empty line after the
backslashes, but I think there should be no error. It only happens when
there is an empty line after the backslashes. Without the empty line
there is no error.
Backtrace:
[-- Attachment #2: backtrace of error --]
[-- Type: text/plain, Size: 43764 bytes --]
Debugger entered--Lisp error: (error "Invalid search bound (wrong side of point)")
re-search-forward("[^\\\\]\\(\\\\\\\\\\)[ ]*$" 518 t)
(and (re-search-forward "[^\\\\]\\(\\\\\\\\\\)[ ]*$" limit t) (goto-char (match-beginning 1)))
(let ((beg (and (re-search-forward "[^\\\\]\\(\\\\\\\\\\)[ ]*$" limit t) (goto-char (match-beginning 1))))) (when (and beg (re-search-backward "\\S-" (point-at-bol) t)) (cons (quote line-break) beg)))
(save-excursion (let ((beg (and (re-search-forward "[^\\\\]\\(\\\\\\\\\\)[ ]*$" limit t) (goto-char (match-beginning 1))))) (when (and beg (re-search-backward "\\S-" (point-at-bol) t)) (cons (quote line-break) beg))))
org-element-line-break-successor(518)
funcall(org-element-line-break-successor 518)
(let* ((successor-fun (intern (format "org-element-%s-successor" (or (cdr (assq type org-element-object-successor-alist)) type)))) (obj (funcall successor-fun limit))) (and obj (push obj next-candidates)))
(lambda (type) (let* ((successor-fun (intern (format "org-element-%s-successor" (or (cdr ...) type)))) (obj (funcall successor-fun limit))) (and obj (push obj next-candidates))))(line-break)
mapc((lambda (type) (let* ((successor-fun (intern (format "org-element-%s-successor" (or (cdr ...) type)))) (obj (funcall successor-fun limit))) (and obj (push obj next-candidates)))) (line-break))
(let (next-candidates types-to-search) (if (not objects) (setq types-to-search restriction) (mapc (lambda (obj) (if (< (cdr obj) (point)) (push (car obj) types-to-search) (push obj next-candidates))) objects)) (mapc (lambda (type) (let* ((successor-fun (intern (format "org-element-%s-successor" ...))) (obj (funcall successor-fun limit))) (and obj (push obj next-candidates)))) types-to-search) next-candidates)
org-element-get-next-object-candidates(518 (export-snippet footnote-reference inline-babel-call inline-src-block latex-or-entity line-break link macro radio-target statistics-cookie sub/superscript target text-markup timestamp) ((line-break . 516)))
(setq candidates (org-element-get-next-object-candidates end restriction candidates))
(while (setq candidates (org-element-get-next-object-candidates end restriction candidates)) (let ((next-object (let ((pos (apply ... ...))) (save-excursion (goto-char pos) (funcall (intern ...)))))) (let ((obj-beg (org-element-property :begin next-object))) (unless (= (point) obj-beg) (setq acc (org-element-adopt-element acc (replace-regexp-in-string " " (make-string tab-width 32) (buffer-substring-no-properties ... obj-beg)) t)))) (let ((obj-end (org-element-property :end next-object)) (cont-beg (org-element-property :contents-begin next-object))) (when (and (memq (car next-object) org-element-recursive-objects) cont-beg) (save-restriction (narrow-to-region cont-beg (org-element-property :contents-end next-object)) (org-element-parse-objects (point-min) (point-max) next-object (org-element-restriction next-object)))) (setq acc (org-element-adopt-element acc next-object t)) (goto-char obj-end))))
(save-excursion (goto-char beg) (while (setq candidates (org-element-get-next-object-candidates end restriction candidates)) (let ((next-object (let ((pos ...)) (save-excursion (goto-char pos) (funcall ...))))) (let ((obj-beg (org-element-property :begin next-object))) (unless (= (point) obj-beg) (setq acc (org-element-adopt-element acc (replace-regexp-in-string " " ... ...) t)))) (let ((obj-end (org-element-property :end next-object)) (cont-beg (org-element-property :contents-begin next-object))) (when (and (memq (car next-object) org-element-recursive-objects) cont-beg) (save-restriction (narrow-to-region cont-beg (org-element-property :contents-end next-object)) (org-element-parse-objects (point-min) (point-max) next-object (org-element-restriction next-object)))) (setq acc (org-element-adopt-element acc next-object t)) (goto-char obj-end)))) (unless (= (point) end) (setq acc (org-element-adopt-element acc (replace-regexp-in-string " " (make-string tab-width 32) (buffer-substring-no-properties (point) end)) t))) acc)
(let (candidates) (save-excursion (goto-char beg) (while (setq candidates (org-element-get-next-object-candidates end restriction candidates)) (let ((next-object (let (...) (save-excursion ... ...)))) (let ((obj-beg (org-element-property :begin next-object))) (unless (= (point) obj-beg) (setq acc (org-element-adopt-element acc ... t)))) (let ((obj-end (org-element-property :end next-object)) (cont-beg (org-element-property :contents-begin next-object))) (when (and (memq ... org-element-recursive-objects) cont-beg) (save-restriction (narrow-to-region cont-beg ...) (org-element-parse-objects ... ... next-object ...))) (setq acc (org-element-adopt-element acc next-object t)) (goto-char obj-end)))) (unless (= (point) end) (setq acc (org-element-adopt-element acc (replace-regexp-in-string " " (make-string tab-width 32) (buffer-substring-no-properties (point) end)) t))) acc))
org-element-parse-objects(506 518 (paragraph (:begin 506 :end 520 :contents-begin 506 :contents-end 518 :post-blank 1) "some text " (line-break (:begin 516 :end 519 :post-blank 0 :parent #0))) (export-snippet footnote-reference inline-babel-call inline-src-block latex-or-entity line-break link macro radio-target statistics-cookie sub/superscript target text-markup timestamp))
(cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type))))
(let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))
(while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote ...)) (and (eq granularity ...) (eq type ...)) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if ... ... ...)) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t)))
(save-excursion (goto-char beg) (when (and (eq granularity (quote headline)) (not (org-at-heading-p))) (org-with-limited-levels (outline-next-heading))) (while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity ...) (and ... ...) (eq type ...))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline ...) (plain-list ...) (table ...)) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))) acc)
org-element-parse-elements(506 530 nil nil nil nil (section (:begin 506 :end 530 :contents-begin 506 :contents-end 530 :post-blank 0)))
(cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type))))
(let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))
(while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote ...)) (and (eq granularity ...) (eq type ...)) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if ... ... ...)) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t)))
(save-excursion (goto-char beg) (when (and (eq granularity (quote headline)) (not (org-at-heading-p))) (org-with-limited-levels (outline-next-heading))) (while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity ...) (and ... ...) (eq type ...))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline ...) (plain-list ...) (table ...)) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))) acc)
org-element-parse-elements(506 530 section nil nil nil (headline (:raw-value "headline" :begin 495 :end 530 :pre-blank 0 :hiddenp outline :contents-begin 506 :contents-end 530 :level 1 :priority nil :tags nil :todo-keyword nil :todo-type nil :scheduled nil :deadline nil :timestamp nil :clock nil :post-blank 0 :footnote-section-p nil :archivedp nil :commentedp nil :quotedp nil :category nil :title ("headline"))))
(cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type))))
(let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))
(while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote ...)) (and (eq granularity ...) (eq type ...)) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if ... ... ...)) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t)))
(save-excursion (goto-char beg) (when (and (eq granularity (quote headline)) (not (org-at-heading-p))) (org-with-limited-levels (outline-next-heading))) (while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity ...) (and ... ...) (eq type ...))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline ...) (plain-list ...) (table ...)) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))) acc)
org-element-parse-elements(1 530 nil nil nil nil (section (:begin 1 :end 530 :contents-begin 1 :contents-end 530 :post-blank 0) (keyword (:key "TITLE" :value "new-exporter.org" :begin 1 :end 31 :post-blank 0 :parent #0)) (keyword (:key "AUTHOR" :value "Thomas Holst" :begin 31 :end 57 :post-blank 0 :parent #0)) (keyword (:key "EMAIL" :value "thomas.holst@de.bosch.com" :begin 57 :end 96 :post-blank 0 :parent #0)) (keyword (:key "DATE" :value "2012-07-16 Mo" :begin 96 :end 123 :post-blank 0 :parent #0)) (keyword (:key "DESCRIPTION" :value "" :begin 123 :end 138 :post-blank 0 :parent #0)) (keyword (:key "KEYWORDS" :value "" :begin 138 :end 150 :post-blank 0 :parent #0)) (keyword (:key "LANGUAGE" :value "en" :begin 150 :end 166 :post-blank 0 :parent #0)) (keyword (:key "OPTIONS" :value "H:3 num:t toc:t \\n:nil @:t ::t |:t ^:{} -:t f:t *:t <:t" :begin 166 :end 235 :post-blank 0 :parent #0)) (keyword (:key "OPTIONS" :value "TeX:t LaTeX:t skip:nil d:t todo:t pri:nil tags:t" :begin 235 :end 297 :post-blank 0 :parent #0)) (keyword (:key "INFOJS_OPT" :value "view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js" :begin 297 :end 397 :post-blank 0 :parent #0)) (keyword (:key "EXPORT_SELECT_TAGS" :value "export" :begin 397 :end 426 :post-blank 0 :parent #0)) (keyword (:key "EXPORT_EXCLUDE_TAGS" :value "noexport" :begin 426 :end 458 :post-blank 0 :parent #0)) (keyword (:key "LINK_UP" :value "" :begin 458 :end 472 :post-blank 0 :parent #0)) (keyword (:key "LINK_HOME" :value "" :begin 472 :end 486 :post-blank 0 :parent #0)) (keyword (:key "XSLT" :value "" :begin 486 :end 495 :post-blank 1 :parent #0))))
(cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type))))
(let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote (element object nil))) (and (eq granularity (quote greater-element)) (eq type (quote section))) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if (org-element-property :quotedp element) (quote quote-section) (quote section))) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))
(while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity (quote ...)) (and (eq granularity ...) (eq type ...)) (eq type (quote headline)))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline (if ... ... ...)) (plain-list (quote item)) (table (quote table-row))) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t)))
(save-excursion (goto-char beg) (when (and (eq granularity (quote headline)) (not (org-at-heading-p))) (org-with-limited-levels (outline-next-heading))) (while (< (point) end) (let* ((element (org-element-current-element end granularity special structure)) (type (org-element-type element)) (cbeg (org-element-property :contents-begin element))) (goto-char (org-element-property :end element)) (cond ((or (and visible-only (org-element-property :hiddenp element)) (not cbeg))) ((and (memq type org-element-greater-elements) (or (memq granularity ...) (and ... ...) (eq type ...))) (org-element-parse-elements cbeg (org-element-property :contents-end element) (case type (headline ...) (plain-list ...) (table ...)) (org-element-property :structure element) granularity visible-only element)) ((memq granularity (quote (object nil))) (org-element-parse-objects cbeg (org-element-property :contents-end element) element (org-element-restriction type)))) (org-element-adopt-element acc element t))) acc)
org-element-parse-elements(1 530 section nil nil nil (org-data nil))
(save-excursion (goto-char (point-min)) (org-skip-whitespace) (org-element-parse-elements (point-at-bol) (point-max) (quote section) nil granularity visible-only (list (quote org-data) nil)))
org-element-parse-buffer(nil nil)
(progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only))
(let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- (overlay-start ov) --offset) (- (overlay-end ov) --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))
(progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- (overlay-start ov) --offset) (- (overlay-end ov) --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only))))
(unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- (overlay-start ov) --offset) (- (overlay-end ov) --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- ... --offset) (- ... --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let (...) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
(with-current-buffer temp-buffer (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- ... --offset) (- ... --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let (...) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
(let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-buffer temp-buffer (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov ... ... ...)) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ... ...)) (goto-char (point-min)) (let (...) (run-hooks ...)) (org-element-parse-buffer nil visible-only)))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))))
(with-temp-buffer (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- (overlay-start ov) --offset) (- (overlay-end ov) --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only))))
(let ((--original-buffer (current-buffer)) (--offset (1- (point-min))) (--buffer-string (buffer-string)) (--overlays (mapcar (quote copy-overlay) (overlays-in (point-min) (point-max))))) (with-temp-buffer (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (mapc (lambda (ov) (move-overlay ov (- (overlay-start ov) --offset) (- (overlay-end ov) --offset) (current-buffer))) --overlays) (goto-char (point-min)) (progn (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))))
(org-export-with-current-buffer-copy (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only))
(let ((buf (or (buffer-file-name (buffer-base-buffer)) (current-buffer)))) (org-export-with-current-buffer-copy (unless noexpand (org-export-expand-include-keyword) (let ((org-current-export-file buf)) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only)))
(let ((info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (tree (let ((buf (or (buffer-file-name ...) (current-buffer)))) (org-export-with-current-buffer-copy (unless noexpand (org-export-expand-include-keyword) (let (...) (org-export-blocks-preprocess))) (goto-char (point-min)) (let ((org-export-current-backend backend)) (run-hooks (quote org-export-before-parsing-hook))) (org-element-parse-buffer nil visible-only))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) tree info)) (setq info (org-combine-plists info (org-export-collect-tree-properties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq (quote template) (plist-get info :translate-alist)))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if (or (not ...) body-only) body (funcall template body info)) info))) (when org-export-copy-to-kill-ring (org-kill-new output)) output))
(save-restriction (cond ((org-region-active-p) (narrow-to-region (region-beginning) (region-end))) (subtreep (org-narrow-to-subtree) (goto-char (point-min)) (forward-line) (narrow-to-region (point) (point-max)))) (let ((info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (tree (let ((buf (or ... ...))) (org-export-with-current-buffer-copy (unless noexpand (org-export-expand-include-keyword) (let ... ...)) (goto-char (point-min)) (let (...) (run-hooks ...)) (org-element-parse-buffer nil visible-only))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) tree info)) (setq info (org-combine-plists info (org-export-collect-tree-properties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq (quote template) (plist-get info :translate-alist)))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if (or ... body-only) body (funcall template body info)) info))) (when org-export-copy-to-kill-ring (org-kill-new output)) output)))
(save-excursion (save-restriction (cond ((org-region-active-p) (narrow-to-region (region-beginning) (region-end))) (subtreep (org-narrow-to-subtree) (goto-char (point-min)) (forward-line) (narrow-to-region (point) (point-max)))) (let ((info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (tree (let ((buf ...)) (org-export-with-current-buffer-copy (unless noexpand ... ...) (goto-char ...) (let ... ...) (org-element-parse-buffer nil visible-only))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) tree info)) (setq info (org-combine-plists info (org-export-collect-tree-properties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq ... ...))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if ... body ...) info))) (when org-export-copy-to-kill-ring (org-kill-new output)) output))))
org-export-as(e-latex nil nil nil nil nil)
(let ((out (org-export-as backend subtreep visible-only body-only ext-plist noexpand)) (buffer (get-buffer-create buffer))) (with-current-buffer buffer (erase-buffer) (insert out) (goto-char (point-min))) buffer)
org-export-to-buffer(e-latex "*Org E-LaTeX Export*" nil nil nil)
(let ((outbuf (org-export-to-buffer (quote e-latex) "*Org E-LaTeX Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (with-current-buffer outbuf (latex-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))
(cond ((eql --cl-var-- (quote 113)) nil) ((member* --cl-var-- (quote (65 78 85))) (let ((outbuf (org-export-to-buffer (quote e-ascii) "*Org E-ASCII Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset ...))))) (with-current-buffer outbuf (text-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((member* --cl-var-- (quote (97 110 117))) (org-e-ascii-export-to-ascii (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset (\, (case raw-key (97 ...) (110 ...) (t ...))))))) ((eql --cl-var-- (quote 76)) (let ((outbuf (org-export-to-buffer (quote e-latex) "*Org E-LaTeX Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (with-current-buffer outbuf (latex-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((eql --cl-var-- (quote 108)) (org-e-latex-export-to-latex (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 112)) (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 100)) (org-open-file (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 72)) (let ((outbuf (org-export-to-buffer (quote e-html) "*Org E-HTML Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (with-current-buffer outbuf (nxml-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((eql --cl-var-- (quote 104)) (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 98)) (org-open-file (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 111)) (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 79)) (org-open-file (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 70)) (org-e-publish-current-file (memq (quote force) optns))) ((eql --cl-var-- (quote 80)) (org-e-publish-current-project (memq (quote force) optns))) ((eql --cl-var-- (quote 88)) (let ((project (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist))) (org-e-publish project (memq (quote force) optns)))) ((eql --cl-var-- (quote 69)) (org-e-publish-all (memq (quote force) optns))) (t (error "No command associated with key %s" (char-to-string raw-key))))
(let ((--cl-var-- (if (< raw-key 27) (+ raw-key 96) raw-key))) (cond ((eql --cl-var-- (quote 113)) nil) ((member* --cl-var-- (quote (65 78 85))) (let ((outbuf (org-export-to-buffer (quote e-ascii) "*Org E-ASCII Export*" (memq ... optns) (memq ... optns) (memq ... optns) (\` ...)))) (with-current-buffer outbuf (text-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((member* --cl-var-- (quote (97 110 117))) (org-e-ascii-export-to-ascii (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset (\, (case raw-key ... ... ...)))))) ((eql --cl-var-- (quote 76)) (let ((outbuf (org-export-to-buffer (quote e-latex) "*Org E-LaTeX Export*" (memq ... optns) (memq ... optns) (memq ... optns)))) (with-current-buffer outbuf (latex-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((eql --cl-var-- (quote 108)) (org-e-latex-export-to-latex (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 112)) (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 100)) (org-open-file (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 72)) (let ((outbuf (org-export-to-buffer (quote e-html) "*Org E-HTML Export*" (memq ... optns) (memq ... optns) (memq ... optns)))) (with-current-buffer outbuf (nxml-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((eql --cl-var-- (quote 104)) (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 98)) (org-open-file (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 111)) (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) ((eql --cl-var-- (quote 79)) (org-open-file (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) ((eql --cl-var-- (quote 70)) (org-e-publish-current-file (memq (quote force) optns))) ((eql --cl-var-- (quote 80)) (org-e-publish-current-project (memq (quote force) optns))) ((eql --cl-var-- (quote 88)) (let ((project (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist))) (org-e-publish project (memq (quote force) optns)))) ((eql --cl-var-- (quote 69)) (org-e-publish-all (memq (quote force) optns))) (t (error "No command associated with key %s" (char-to-string raw-key)))))
(case (if (< raw-key 27) (+ raw-key 96) raw-key) (113 nil) ((65 78 85) (let ((outbuf (org-export-to-buffer (quote e-ascii) "*Org E-ASCII Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset ...))))) (with-current-buffer outbuf (text-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((97 110 117) (org-e-ascii-export-to-ascii (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset (\, (case raw-key (97 ...) (110 ...) (t ...))))))) (76 (let ((outbuf (org-export-to-buffer (quote e-latex) "*Org E-LaTeX Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (with-current-buffer outbuf (latex-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) (108 (org-e-latex-export-to-latex (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (112 (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (100 (org-open-file (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (72 (let ((outbuf (org-export-to-buffer (quote e-html) "*Org E-HTML Export*" (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (with-current-buffer outbuf (nxml-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) (104 (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (98 (org-open-file (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (111 (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (79 (org-open-file (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (70 (org-e-publish-current-file (memq (quote force) optns))) (80 (org-e-publish-current-project (memq (quote force) optns))) (88 (let ((project (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist))) (org-e-publish project (memq (quote force) optns)))) (69 (org-e-publish-all (memq (quote force) optns))) (t (error "No command associated with key %s" (char-to-string raw-key))))
(let* ((input (org-export-dispatch-ui (if (listp org-export-initial-scope) org-export-initial-scope (list org-export-initial-scope)) org-export-dispatch-use-expert-ui)) (raw-key (car input)) (optns (cdr input))) (case (if (< raw-key 27) (+ raw-key 96) raw-key) (113 nil) ((65 78 85) (let ((outbuf (org-export-to-buffer (quote e-ascii) "*Org E-ASCII Export*" (memq ... optns) (memq ... optns) (memq ... optns) (\` ...)))) (with-current-buffer outbuf (text-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) ((97 110 117) (org-e-ascii-export-to-ascii (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns) (\` (:ascii-charset (\, (case raw-key ... ... ...)))))) (76 (let ((outbuf (org-export-to-buffer (quote e-latex) "*Org E-LaTeX Export*" (memq ... optns) (memq ... optns) (memq ... optns)))) (with-current-buffer outbuf (latex-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) (108 (org-e-latex-export-to-latex (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (112 (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (100 (org-open-file (org-e-latex-export-to-pdf (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (72 (let ((outbuf (org-export-to-buffer (quote e-html) "*Org E-HTML Export*" (memq ... optns) (memq ... optns) (memq ... optns)))) (with-current-buffer outbuf (nxml-mode)) (when org-export-show-temporary-export-buffer (switch-to-buffer-other-window outbuf)))) (104 (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (98 (org-open-file (org-e-html-export-to-html (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (111 (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns))) (79 (org-open-file (org-e-odt-export-to-odt (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (70 (org-e-publish-current-file (memq (quote force) optns))) (80 (org-e-publish-current-project (memq (quote force) optns))) (88 (let ((project (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist))) (org-e-publish project (memq (quote force) optns)))) (69 (org-e-publish-all (memq (quote force) optns))) (t (error "No command associated with key %s" (char-to-string raw-key)))))
org-export-dispatch()
call-interactively(org-export-dispatch t nil)
execute-extended-command(nil)
call-interactively(execute-extended-command nil nil)
[-- Attachment #3: Type: text/plain, Size: 29 bytes --]
--
Bis neulich ...
Thomas
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [new exporter] fails on double backslashes
2012-07-17 9:05 [new exporter] fails on double backslashes Thomas Holst
@ 2012-07-17 10:12 ` Nicolas Goaziou
0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2012-07-17 10:12 UTC (permalink / raw)
To: Thomas Holst; +Cc: emacs-orgmode Mode
Hello,
Thomas Holst <thomas.holst@de.bosch.com> writes:
> right now I am testing the new exporter. It works very well except on
> backslashes. Here is a minimal example which shows the problem:
Indeed. It chokes on line break. It should be fixed now.
Thank you for testing the new exporter and reporting this bug.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-07-17 10:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-17 9:05 [new exporter] fails on double backslashes Thomas Holst
2012-07-17 10:12 ` Nicolas Goaziou
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.