[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [bug] "Invalid face" when exporting code block to HTML
From: |
Sebastien Vauban |
Subject: |
[O] [bug] "Invalid face" when exporting code block to HTML |
Date: |
Thu, 05 Jan 2012 23:06:48 +0100 |
User-agent: |
Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.92 (windows-nt) |
Hello,
Not a good day for me, today...
* Summary
Quite "simple": the following block generates an "Invalid face" error when
exported to HTML.
#+begin_src sh
svn checkout http://svn/trunk/dev/ mydev
#+end_src
This worked yesterday. Does it ring a bell to someone? Could some recent
commit be responsible of this?
* Version info
GNU Emacs 24.0.92.1 (i386-mingw-nt5.1.2600) of 2011-12-07 on MARVIN
Org-mode version 7.8.03 (release_7.8.03.31.g28541)
* Backtrace
#+begin_src emacs-lisp
Debugger entered--Lisp error: (error "Invalid face")
internal-get-lisp-face-attribute(nil :height nil)
face-attribute(nil :height)
(setq h (face-attribute f :height))
(while (progn (setq f (if --cl-var-- face (face-attribute f :inherit))) (not
(eq f (quote unspecified)))) (setq h (face-attribute f :height)) (push (if (eq
h (quote unspecified)) nil h) --cl-var--) (setq --cl-var-- nil))
(let* ((f nil) (h nil) (--cl-var-- nil) (--cl-var-- t)) (while (progn (setq f
(if --cl-var-- face (face-attribute f :inherit))) (not (eq f (quote
unspecified)))) (setq h (face-attribute f :height)) (push (if (eq h (quote
unspecified)) nil h) --cl-var--) (setq --cl-var-- nil)) (nreverse --cl-var--))
(catch (quote --cl-block-nil--) (let* ((f nil) (h nil) (--cl-var-- nil)
(--cl-var-- t)) (while (progn (setq f (if --cl-var-- face (face-attribute f
:inherit))) (not (eq f (quote unspecified)))) (setq h (face-attribute f
:height)) (push (if (eq h (quote unspecified)) nil h) --cl-var--) (setq
--cl-var-- nil)) (nreverse --cl-var--)))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let* ((f nil) (h nil)
(--cl-var-- nil) (--cl-var-- t)) (while (progn (setq f (if --cl-var-- face
(face-attribute f :inherit))) (not (eq f (quote unspecified)))) (setq h
(face-attribute f :height)) (push (if (eq h (quote unspecified)) nil h)
--cl-var--) (setq --cl-var-- nil)) (nreverse --cl-var--))))
(block nil (let* ((f nil) (h nil) (--cl-var-- nil) (--cl-var-- t)) (while
(progn (setq f (if --cl-var-- face (face-attribute f :inherit))) (not (eq f
(quote unspecified)))) (setq h (face-attribute f :height)) (push (if (eq h
(quote unspecified)) nil h) --cl-var--) (setq --cl-var-- nil)) (nreverse
--cl-var--)))
(loop for f = face then (face-attribute f :inherit) until (eq f (quote
unspecified)) for h = (face-attribute f :height) collect (if (eq h (quote
unspecified)) nil h))
(let ((size-list (loop for f = face then (face-attribute f :inherit) until
(eq f (quote unspecified)) for h = (face-attribute f :height) collect (if (eq h
(quote unspecified)) nil h)))) (reduce (quote htmlize-merge-size) (cons nil
size-list)))
htmlize-face-size(default)
(let ((size (htmlize-face-size face))) (unless (eql size 1.0) (setf
(htmlize-fstruct-size fstruct) size)))
(cond (htmlize-running-xemacs (let* ((font-instance (face-font-instance
face)) (props (font-instance-properties font-instance))) (when (equalp (cdr
(assq (quote WEIGHT_NAME) props)) "bold") (setf (htmlize-fstruct-boldp fstruct)
t)) (when (or (equalp (cdr (assq ... props)) "i") (equalp (cdr (assq ...
props)) "o")) (setf (htmlize-fstruct-italicp fstruct) t)) (setf
(htmlize-fstruct-strikep fstruct) (face-strikethru-p face)) (setf
(htmlize-fstruct-underlinep fstruct) (face-underline-p face)))) ((fboundp
(quote face-attribute)) (dolist (attr (quote (:weight :slant :underline
:overline :strike-through))) (let ((value (if (>= emacs-major-version 22)
(face-attribute face attr nil t) (let ... ... ...)))) (when (and value (not (eq
value ...))) (htmlize-face-emacs21-attr fstruct attr value)))) (let ((size
(htmlize-face-size face))) (unless (eql size 1.0) (setf (htmlize-fstruct-size
fstruct) size)))) (t (when (fboundp (quote face-bold-p)) (setf
(htmlize-fstruct-boldp fstruct) (face-bold-p face))) (when (fboundp (quote
face-italic-p)) (setf (htmlize-fstruct-italicp fstruct) (face-italic-p face)))
(setf (htmlize-fstruct-underlinep fstruct) (face-underline-p face))))
(let ((fstruct (make-htmlize-fstruct :foreground (htmlize-color-to-rgb
(htmlize-face-foreground face)) :background (htmlize-color-to-rgb
(htmlize-face-background face))))) (cond (htmlize-running-xemacs (let*
((font-instance (face-font-instance face)) (props (font-instance-properties
font-instance))) (when (equalp (cdr (assq ... props)) "bold") (setf
(htmlize-fstruct-boldp fstruct) t)) (when (or (equalp (cdr ...) "i") (equalp
(cdr ...) "o")) (setf (htmlize-fstruct-italicp fstruct) t)) (setf
(htmlize-fstruct-strikep fstruct) (face-strikethru-p face)) (setf
(htmlize-fstruct-underlinep fstruct) (face-underline-p face)))) ((fboundp
(quote face-attribute)) (dolist (attr (quote (:weight :slant :underline
:overline :strike-through))) (let ((value (if ... ... ...))) (when (and value
(not ...)) (htmlize-face-emacs21-attr fstruct attr value)))) (let ((size
(htmlize-face-size face))) (unless (eql size 1.0) (setf (htmlize-fstruct-size
fstruct) size)))) (t (when (fboundp (quote face-bold-p)) (setf
(htmlize-fstruct-boldp fstruct) (face-bold-p face))) (when (fboundp (quote
face-italic-p)) (setf (htmlize-fstruct-italicp fstruct) (face-italic-p face)))
(setf (htmlize-fstruct-underlinep fstruct) (face-underline-p face)))) (setf
(htmlize-fstruct-css-name fstruct) (let ((name (downcase (symbol-name face))))
(when (string-match "\\`font-lock-" name) (setq name (replace-match "" t t
name))) (when (string-match "-face\\'" name) (setq name (replace-match "" t t
name))) (while (string-match "[^-a-zA-Z0-9]" name) (setq name (replace-match
"X" t t name))) (when (string-match "\\`[-0-9]" name) (setq name (concat "X"
name))) (when (equal name "") (setq name "face")) (setq name (concat
htmlize-css-name-prefix name)) name)) fstruct)
htmlize-face-to-fstruct(default)
(if (symbolp face) (htmlize-face-to-fstruct face)
(htmlize-attrlist-to-fstruct face))
(let ((fstruct (if (symbolp face) (htmlize-face-to-fstruct face)
(htmlize-attrlist-to-fstruct face)))) (setf (gethash face face-map) fstruct)
(let* ((css-name (htmlize-fstruct-css-name fstruct)) (new-name css-name) (i 0))
(while (member new-name css-names) (setq new-name (format "%s-%s" css-name
(incf i)))) (unless (equal new-name css-name) (setf (htmlize-fstruct-css-name
fstruct) new-name)) (push new-name css-names)))
(if (gethash face face-map) nil (let ((fstruct (if (symbolp face)
(htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct face)))) (setf
(gethash face face-map) fstruct) (let* ((css-name (htmlize-fstruct-css-name
fstruct)) (new-name css-name) (i 0)) (while (member new-name css-names) (setq
new-name (format "%s-%s" css-name (incf i)))) (unless (equal new-name css-name)
(setf (htmlize-fstruct-css-name fstruct) new-name)) (push new-name css-names))))
(unless (gethash face face-map) (let ((fstruct (if (symbolp face)
(htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct face)))) (setf
(gethash face face-map) fstruct) (let* ((css-name (htmlize-fstruct-css-name
fstruct)) (new-name css-name) (i 0)) (while (member new-name css-names) (setq
new-name (format "%s-%s" css-name (incf i)))) (unless (equal new-name css-name)
(setf (htmlize-fstruct-css-name fstruct) new-name)) (push new-name css-names))))
(while --cl-dolist-temp-- (setq face (car --cl-dolist-temp--)) (unless
(gethash face face-map) (let ((fstruct (if (symbolp face)
(htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct face)))) (setf
(gethash face face-map) fstruct) (let* ((css-name (htmlize-fstruct-css-name
fstruct)) (new-name css-name) (i 0)) (while (member new-name css-names) (setq
new-name (format "%s-%s" css-name (incf i)))) (unless (equal new-name css-name)
(setf (htmlize-fstruct-css-name fstruct) new-name)) (push new-name
css-names)))) (setq --cl-dolist-temp-- (cdr --cl-dolist-temp--)))
(let ((--cl-dolist-temp-- faces) face) (while --cl-dolist-temp-- (setq face
(car --cl-dolist-temp--)) (unless (gethash face face-map) (let ((fstruct (if
(symbolp face) (htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct
face)))) (setf (gethash face face-map) fstruct) (let* ((css-name
(htmlize-fstruct-css-name fstruct)) (new-name css-name) (i 0)) (while (member
new-name css-names) (setq new-name (format "%s-%s" css-name ...))) (unless
(equal new-name css-name) (setf (htmlize-fstruct-css-name fstruct) new-name))
(push new-name css-names)))) (setq --cl-dolist-temp-- (cdr
--cl-dolist-temp--))))
(catch (quote --cl-block-nil--) (let ((--cl-dolist-temp-- faces) face) (while
--cl-dolist-temp-- (setq face (car --cl-dolist-temp--)) (unless (gethash face
face-map) (let ((fstruct (if ... ... ...))) (setf (gethash face face-map)
fstruct) (let* ((css-name ...) (new-name css-name) (i 0)) (while (member
new-name css-names) (setq new-name ...)) (unless (equal new-name css-name)
(setf ... new-name)) (push new-name css-names)))) (setq --cl-dolist-temp-- (cdr
--cl-dolist-temp--)))))
(cl-block-wrapper (catch (quote --cl-block-nil--) (let ((--cl-dolist-temp--
faces) face) (while --cl-dolist-temp-- (setq face (car --cl-dolist-temp--))
(unless (gethash face face-map) (let ((fstruct ...)) (setf (gethash face
face-map) fstruct) (let* (... ... ...) (while ... ...) (unless ... ...) (push
new-name css-names)))) (setq --cl-dolist-temp-- (cdr --cl-dolist-temp--))))))
(block nil (let ((--cl-dolist-temp-- faces) face) (while --cl-dolist-temp--
(setq face (car --cl-dolist-temp--)) (unless (gethash face face-map) (let
((fstruct (if ... ... ...))) (setf (gethash face face-map) fstruct) (let*
((css-name ...) (new-name css-name) (i 0)) (while (member new-name css-names)
(setq new-name ...)) (unless (equal new-name css-name) (setf ... new-name))
(push new-name css-names)))) (setq --cl-dolist-temp-- (cdr
--cl-dolist-temp--)))))
(dolist (face faces) (unless (gethash face face-map) (let ((fstruct (if
(symbolp face) (htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct
face)))) (setf (gethash face face-map) fstruct) (let* ((css-name
(htmlize-fstruct-css-name fstruct)) (new-name css-name) (i 0)) (while (member
new-name css-names) (setq new-name (format "%s-%s" css-name (incf i)))) (unless
(equal new-name css-name) (setf (htmlize-fstruct-css-name fstruct) new-name))
(push new-name css-names)))))
(let ((face-map (make-hash-table :test (quote equal))) css-names) (dolist
(face faces) (unless (gethash face face-map) (let ((fstruct (if (symbolp face)
(htmlize-face-to-fstruct face) (htmlize-attrlist-to-fstruct face)))) (setf
(gethash face face-map) fstruct) (let* ((css-name (htmlize-fstruct-css-name
fstruct)) (new-name css-name) (i 0)) (while (member new-name css-names) (setq
new-name (format "%s-%s" css-name ...))) (unless (equal new-name css-name)
(setf (htmlize-fstruct-css-name fstruct) new-name)) (push new-name
css-names))))) face-map)
htmlize-make-face-map((default (:foreground "black" :background "#FF993F")
(:foreground "black" :background "#FFF33F") (:foreground "black" :background
"#B0FF3F") (:foreground "black" :background "#4BFF4B") (:foreground "black"
:background "#3FFFB0") (:foreground "black" :background "#3FF3FF") (:foreground
"black" :background "#3F99FF") (:foreground "white" :background "#3F3FFF")))
(let* ((buffer-faces (htmlize-faces-in-buffer)) (face-map
(htmlize-make-face-map (adjoin (quote default) buffer-faces))) (htmlbuf
(generate-new-buffer (if (buffer-file-name) (htmlize-make-file-name
(file-name-nondirectory (buffer-file-name))) "*html*"))) (places (quote (nil
nil))) (title (if (buffer-file-name) (file-name-nondirectory
(buffer-file-name)) (buffer-name)))) (with-current-buffer htmlbuf
(buffer-disable-undo) (insert (htmlize-method doctype) 10 (format "<!-- Created
by htmlize-%s in %s mode. -->\n" htmlize-version htmlize-output-type) "<html>\n
") (plist-put places (quote head-start) (point-marker)) (insert "<head>\n" "
<title>" (htmlize-protect-string title) "</title>\n" (if htmlize-html-charset
(format (concat " <meta http-equiv=\"Content-Type\" " "content=\"text/html;
charset=%s\">\n") htmlize-html-charset) "") htmlize-head-tags) (htmlize-method
insert-head buffer-faces face-map) (insert " </head>") (plist-put places
(quote head-end) (point-marker)) (insert "\n ") (plist-put places (quote
body-start) (point-marker)) (insert (htmlize-method body-tag face-map) "\n
") (plist-put places (quote content-start) (point-marker)) (insert "<pre>\n"))
(let ((insert-text-method (htmlize-method-function (quote insert-text)))
next-change text face-list fstruct-list trailing-ellipsis) (goto-char
(point-min)) (while (not (eobp)) (setq next-change (htmlize-next-change (point)
(quote face))) (setq face-list (htmlize-faces-at-point) fstruct-list (delq nil
(mapcar (lambda (f) (gethash f face-map)) face-list))) (setq text
(htmlize-buffer-substring-no-invisible (point) next-change)) (when
trailing-ellipsis (setq text (htmlize-trim-ellipsis text))) (when (> (length
text) 0) (setq trailing-ellipsis (get-text-property (1- (length text)) (quote
htmlize-ellipsis) text))) (setq text (htmlize-untabify text (current-column)))
(setq text (htmlize-protect-string text)) (when (> (length text) 0) (funcall
insert-text-method text fstruct-list htmlbuf)) (goto-char next-change)))
(with-current-buffer htmlbuf (insert "</pre>") (plist-put places (quote
content-end) (point-marker)) (insert "\n </body>") (plist-put places (quote
body-end) (point-marker)) (insert "\n</html>\n") (when
htmlize-generate-hyperlinks (htmlize-make-hyperlinks))
(htmlize-defang-local-variables) (when htmlize-replace-form-feeds (goto-char
(point-min)) (let ((source (htmlize-protect-string "\n\f")) (replacement (if
(stringp htmlize-replace-form-feeds) htmlize-replace-form-feeds "</pre><hr
/><pre>"))) (while (search-forward source nil t) (replace-match replacement t
t)))) (goto-char (point-min)) (when htmlize-html-major-mode (funcall
htmlize-html-major-mode)) (set (make-local-variable (quote
htmlize-buffer-places)) places) (run-hooks (quote htmlize-after-hook))
(buffer-enable-undo)) htmlbuf)
(save-excursion (save-excursion (run-hooks (quote htmlize-before-hook)))
(htmlize-ensure-fontified) (clrhash htmlize-extended-character-cache) (clrhash
htmlize-memoization-table) (let* ((buffer-faces (htmlize-faces-in-buffer))
(face-map (htmlize-make-face-map (adjoin (quote default) buffer-faces)))
(htmlbuf (generate-new-buffer (if (buffer-file-name) (htmlize-make-file-name
(file-name-nondirectory ...)) "*html*"))) (places (quote (nil nil))) (title (if
(buffer-file-name) (file-name-nondirectory (buffer-file-name)) (buffer-name))))
(with-current-buffer htmlbuf (buffer-disable-undo) (insert (htmlize-method
doctype) 10 (format "<!-- Created by htmlize-%s in %s mode. -->\n"
htmlize-version htmlize-output-type) "<html>\n ") (plist-put places (quote
head-start) (point-marker)) (insert "<head>\n" " <title>"
(htmlize-protect-string title) "</title>\n" (if htmlize-html-charset (format
(concat " <meta http-equiv=\"Content-Type\" " "content=\"text/html;
charset=%s\">\n") htmlize-html-charset) "") htmlize-head-tags) (htmlize-method
insert-head buffer-faces face-map) (insert " </head>") (plist-put places
(quote head-end) (point-marker)) (insert "\n ") (plist-put places (quote
body-start) (point-marker)) (insert (htmlize-method body-tag face-map) "\n
") (plist-put places (quote content-start) (point-marker)) (insert "<pre>\n"))
(let ((insert-text-method (htmlize-method-function (quote insert-text)))
next-change text face-list fstruct-list trailing-ellipsis) (goto-char
(point-min)) (while (not (eobp)) (setq next-change (htmlize-next-change (point)
(quote face))) (setq face-list (htmlize-faces-at-point) fstruct-list (delq nil
(mapcar (lambda ... ...) face-list))) (setq text
(htmlize-buffer-substring-no-invisible (point) next-change)) (when
trailing-ellipsis (setq text (htmlize-trim-ellipsis text))) (when (> (length
text) 0) (setq trailing-ellipsis (get-text-property (1- ...) (quote
htmlize-ellipsis) text))) (setq text (htmlize-untabify text (current-column)))
(setq text (htmlize-protect-string text)) (when (> (length text) 0) (funcall
insert-text-method text fstruct-list htmlbuf)) (goto-char next-change)))
(with-current-buffer htmlbuf (insert "</pre>") (plist-put places (quote
content-end) (point-marker)) (insert "\n </body>") (plist-put places (quote
body-end) (point-marker)) (insert "\n</html>\n") (when
htmlize-generate-hyperlinks (htmlize-make-hyperlinks))
(htmlize-defang-local-variables) (when htmlize-replace-form-feeds (goto-char
(point-min)) (let ((source (htmlize-protect-string "\n\f")) (replacement (if
... htmlize-replace-form-feeds "</pre><hr /><pre>"))) (while (search-forward
source nil t) (replace-match replacement t t)))) (goto-char (point-min)) (when
htmlize-html-major-mode (funcall htmlize-html-major-mode)) (set
(make-local-variable (quote htmlize-buffer-places)) places) (run-hooks (quote
htmlize-after-hook)) (buffer-enable-undo)) htmlbuf))
htmlize-buffer-1()
(save-restriction (narrow-to-region beg end) (htmlize-buffer-1))
(let ((htmlbuf (save-restriction (narrow-to-region beg end)
(htmlize-buffer-1)))) (when (interactive-p) (switch-to-buffer htmlbuf)) htmlbuf)
htmlize-region(1 42)
(let* ((htmlize-output-type org-export-htmlize-output-type)
(htmlize-css-name-prefix org-export-htmlize-css-font-prefix) (htmlbuf
(htmlize-region beg end))) (unwind-protect (with-current-buffer htmlbuf
(buffer-substring (plist-get htmlize-buffer-places (quote content-start))
(plist-get htmlize-buffer-places (quote content-end)))) (kill-buffer htmlbuf)))
org-export-htmlize-region-for-paste(1 42)
(progn (insert rtn) (if (functionp mode) (funcall mode) (fundamental-mode))
(font-lock-fontify-buffer) (org-remove-formatting-on-newlines-in-region
(point-min) (point-max)) (org-src-mode) (set-buffer-modified-p nil)
(org-export-htmlize-region-for-paste (point-min) (point-max)))
(unwind-protect (progn (insert rtn) (if (functionp mode) (funcall mode)
(fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max))) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer)))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (insert
rtn) (if (functionp mode) (funcall mode) (fundamental-mode))
(font-lock-fontify-buffer) (org-remove-formatting-on-newlines-in-region
(point-min) (point-max)) (org-src-mode) (set-buffer-modified-p nil)
(org-export-htmlize-region-for-paste (point-min) (point-max))) (and
(buffer-name temp-buffer) (kill-buffer temp-buffer))))
(with-current-buffer temp-buffer (unwind-protect (progn (insert rtn) (if
(functionp mode) (funcall mode) (fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max))) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer))))
(let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-buffer
temp-buffer (unwind-protect (progn (insert rtn) (if (functionp mode) (funcall
mode) (fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max))) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer)))))
(with-temp-buffer (insert rtn) (if (functionp mode) (funcall mode)
(fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max)))
(setq rtn (with-temp-buffer (insert rtn) (if (functionp mode) (funcall mode)
(fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max))))
(let* ((lang-m (when lang (or (cdr (assoc lang org-src-lang-modes)) lang)))
(mode (and lang-m (intern (concat (if (symbolp lang-m) (symbol-name lang-m)
lang-m) "-mode")))) (org-inhibit-startup t) (org-startup-folded nil)) (setq rtn
(with-temp-buffer (insert rtn) (if (functionp mode) (funcall mode)
(fundamental-mode)) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region (point-min) (point-max))
(org-src-mode) (set-buffer-modified-p nil) (org-export-htmlize-region-for-paste
(point-min) (point-max)))) (if (string-match "<pre\\([^>]*\\)>\n*" rtn) (setq
rtn (concat (if caption (concat "<div class=\"org-src-container\">" (format
"<label class=\"org-src-name\">%s</label>" caption)) "") (replace-match (format
"<pre class=\"src src-%s\">\n" lang) t t rtn) (if caption "</div>" "")))))
(if lang (let* ((lang-m (when lang (or (cdr (assoc lang org-src-lang-modes))
lang))) (mode (and lang-m (intern (concat (if ... ... lang-m) "-mode"))))
(org-inhibit-startup t) (org-startup-folded nil)) (setq rtn (with-temp-buffer
(insert rtn) (if (functionp mode) (funcall mode) (fundamental-mode))
(font-lock-fontify-buffer) (org-remove-formatting-on-newlines-in-region
(point-min) (point-max)) (org-src-mode) (set-buffer-modified-p nil)
(org-export-htmlize-region-for-paste (point-min) (point-max)))) (if
(string-match "<pre\\([^>]*\\)>\n*" rtn) (setq rtn (concat (if caption (concat
"<div class=\"org-src-container\">" (format "<label
class=\"org-src-name\">%s</label>" caption)) "") (replace-match (format "<pre
class=\"src src-%s\">\n" lang) t t rtn) (if caption "</div>" ""))))) (if
textareap (setq rtn (concat (format "<p>\n<textarea cols=\"%d\" rows=\"%d\">"
cols rows) rtn "</textarea>\n</p>\n")) (with-temp-buffer (insert rtn)
(goto-char (point-min)) (while (re-search-forward "[<>&]" nil t) (replace-match
(cdr (assq (char-before) (quote ...))) t t)) (setq rtn (buffer-string))) (setq
rtn (concat "<pre class=\"example\">\n" rtn "</pre>\n"))))
(cond (backend-formatter (funcall backend-formatter rtn lang caption
textareap cols rows num cont rpllbl fmt)) ((eq org-export-current-backend
(quote docbook)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl
fmt)) (concat "<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend (quote html)) (when lang (if (featurep (quote
xemacs)) (require (quote htmlize)) (require (quote htmlize) nil t)) (when (not
(fboundp (quote htmlize-region-for-paste))) (setq lang nil) (message
"htmlize.el 1.34 or later is needed for source code formatting"))) (if lang
(let* ((lang-m (when lang (or ... lang))) (mode (and lang-m (intern ...)))
(org-inhibit-startup t) (org-startup-folded nil)) (setq rtn (with-temp-buffer
(insert rtn) (if (functionp mode) (funcall mode) (fundamental-mode))
(font-lock-fontify-buffer) (org-remove-formatting-on-newlines-in-region
(point-min) (point-max)) (org-src-mode) (set-buffer-modified-p nil)
(org-export-htmlize-region-for-paste (point-min) (point-max)))) (if
(string-match "<pre\\([^>]*\\)>\n*" rtn) (setq rtn (concat (if caption ... "")
(replace-match ... t t rtn) (if caption "</div>" ""))))) (if textareap (setq
rtn (concat (format "<p>\n<textarea cols=\"%d\" rows=\"%d\">" cols rows) rtn
"</textarea>\n</p>\n")) (with-temp-buffer (insert rtn) (goto-char (point-min))
(while (re-search-forward "[<>&]" nil t) (replace-match (cdr ...) t t)) (setq
rtn (buffer-string))) (setq rtn (concat "<pre class=\"example\">\n" rtn
"</pre>\n")))) (unless textareap (setq rtn (org-export-number-lines rtn 1 1 num
cont rpllbl fmt))) (if (string-match "\\(\\`<[^>]*>\\)\n" rtn) (setq rtn
(replace-match "\\1" t nil rtn))) rtn) ((eq org-export-current-backend (quote
latex)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (cond
((and lang org-export-latex-listings) (flet ((make-option-string (pair) (concat
... ...))) (let* ((lang-sym ...) (minted-p ...) (listings-p ...) (backend-lang
...) (custom-environment ...)) (concat (when ... ...) (when ... ...) (cond ...
... ...))))) (t (concat (car org-export-latex-verbatim-wrap) rtn (cdr
org-export-latex-verbatim-wrap))))) ((eq org-export-current-backend (quote
ascii)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt))
(concat caption "\n" (concat (mapconcat (lambda (l) (concat " " l))
(org-split-string rtn "\n") "\n") "\n"))) (t (error "Don't know how to markup
source or example block in %s" (upcase backend-name))))
(setq rtn (cond (backend-formatter (funcall backend-formatter rtn lang
caption textareap cols rows num cont rpllbl fmt)) ((eq
org-export-current-backend (quote docbook)) (setq rtn (org-export-number-lines
rtn 0 0 num cont rpllbl fmt)) (concat "<programlisting><![CDATA[" rtn
"]]></programlisting>\n")) ((eq org-export-current-backend (quote html)) (when
lang (if (featurep (quote xemacs)) (require (quote htmlize)) (require (quote
htmlize) nil t)) (when (not (fboundp (quote htmlize-region-for-paste))) (setq
lang nil) (message "htmlize.el 1.34 or later is needed for source code
formatting"))) (if lang (let* ((lang-m (when lang ...)) (mode (and lang-m ...))
(org-inhibit-startup t) (org-startup-folded nil)) (setq rtn (with-temp-buffer
(insert rtn) (if ... ... ...) (font-lock-fontify-buffer)
(org-remove-formatting-on-newlines-in-region ... ...) (org-src-mode)
(set-buffer-modified-p nil) (org-export-htmlize-region-for-paste ... ...))) (if
(string-match "<pre\\([^>]*\\)>\n*" rtn) (setq rtn (concat ... ... ...)))) (if
textareap (setq rtn (concat (format "<p>\n<textarea cols=\"%d\" rows=\"%d\">"
cols rows) rtn "</textarea>\n</p>\n")) (with-temp-buffer (insert rtn)
(goto-char (point-min)) (while (re-search-forward "[<>&]" nil t) (replace-match
... t t)) (setq rtn (buffer-string))) (setq rtn (concat "<pre
class=\"example\">\n" rtn "</pre>\n")))) (unless textareap (setq rtn
(org-export-number-lines rtn 1 1 num cont rpllbl fmt))) (if (string-match
"\\(\\`<[^>]*>\\)\n" rtn) (setq rtn (replace-match "\\1" t nil rtn))) rtn) ((eq
org-export-current-backend (quote latex)) (setq rtn (org-export-number-lines
rtn 0 0 num cont rpllbl fmt)) (cond ((and lang org-export-latex-listings) (flet
((make-option-string ... ...)) (let* (... ... ... ... ...) (concat ... ...
...)))) (t (concat (car org-export-latex-verbatim-wrap) rtn (cdr
org-export-latex-verbatim-wrap))))) ((eq org-export-current-backend (quote
ascii)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt))
(concat caption "\n" (concat (mapconcat (lambda (l) (concat " " l))
(org-split-string rtn "\n") "\n") "\n"))) (t (error "Don't know how to markup
source or example block in %s" (upcase backend-name)))))
(let* ((backend-name (symbol-name org-export-current-backend))
(backend-formatter (intern (format "org-%s-format-source-code-or-example"
backend-name))) (backend-feature (intern (concat "org-" backend-name)))
(backend-formatter (and (require (intern (concat "org-" backend-name)) nil)
(fboundp backend-formatter) backend-formatter)) num cont rtn rpllbl keepp
textareap preserve-indentp cols rows fmt) (setq opts (or opts "") num
(string-match "[-+]n\\>" opts) cont (string-match "\\+n\\>" opts) rpllbl
(string-match "-r\\>" opts) keepp (string-match "-k\\>" opts) textareap
(string-match "-t\\>" opts) preserve-indentp (or org-src-preserve-indentation
(string-match "-i\\>" opts)) cols (if (string-match "-w[ ]+\\([0-9]+\\)" opts)
(string-to-number (match-string 1 opts)) 80) rows (if (string-match "-h[
]+\\([0-9]+\\)" opts) (string-to-number (match-string 1 opts)) (org-count-lines
code)) fmt (if (string-match "-l[ ]+\"\\([^\"\n]+\\)\"" opts)
(match-string 1 opts))) (when (and textareap (eq org-export-current-backend
(quote html))) (setq num nil cont nil lang nil)) (if keepp (setq rpllbl (quote
keep))) (setq rtn (if preserve-indentp code (org-remove-indentation code)))
(when (string-match "^," rtn) (setq rtn (with-temp-buffer (insert rtn)
(goto-char (point-min)) (while (re-search-forward "^," nil t) (if (or (equal
lang "org") (save-match-data ...)) (replace-match "")) (end-of-line 1))
(buffer-string)))) (setq rtn (cond (backend-formatter (funcall
backend-formatter rtn lang caption textareap cols rows num cont rpllbl fmt))
((eq org-export-current-backend (quote docbook)) (setq rtn
(org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (concat
"<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend (quote html)) (when lang (if (featurep (quote
xemacs)) (require (quote htmlize)) (require (quote htmlize) nil t)) (when (not
(fboundp ...)) (setq lang nil) (message "htmlize.el 1.34 or later is needed for
source code formatting"))) (if lang (let* ((lang-m ...) (mode ...)
(org-inhibit-startup t) (org-startup-folded nil)) (setq rtn (with-temp-buffer
... ... ... ... ... ... ...)) (if (string-match "<pre\\([^>]*\\)>\n*" rtn)
(setq rtn ...))) (if textareap (setq rtn (concat ... rtn
"</textarea>\n</p>\n")) (with-temp-buffer (insert rtn) (goto-char ...) (while
... ...) (setq rtn ...)) (setq rtn (concat "<pre class=\"example\">\n" rtn
"</pre>\n")))) (unless textareap (setq rtn (org-export-number-lines rtn 1 1 num
cont rpllbl fmt))) (if (string-match "\\(\\`<[^>]*>\\)\n" rtn) (setq rtn
(replace-match "\\1" t nil rtn))) rtn) ((eq org-export-current-backend (quote
latex)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (cond
((and lang org-export-latex-listings) (flet (...) (let* ... ...))) (t (concat
(car org-export-latex-verbatim-wrap) rtn (cdr
org-export-latex-verbatim-wrap))))) ((eq org-export-current-backend (quote
ascii)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt))
(concat caption "\n" (concat (mapconcat (lambda ... ...) (org-split-string rtn
"\n") "\n") "\n"))) (t (error "Don't know how to markup source or example block
in %s" (upcase backend-name))))) (setq rtn (concat "\n#+BEGIN_" backend-name
"\n" (org-add-props rtn (quote (org-protected t org-example t org-native-text
t))) "\n#+END_" backend-name "\n")) (org-add-props rtn nil (quote
original-indentation) indent))
(progn (let* ((backend-name (symbol-name org-export-current-backend))
(backend-formatter (intern (format "org-%s-format-source-code-or-example"
backend-name))) (backend-feature (intern (concat "org-" backend-name)))
(backend-formatter (and (require (intern (concat "org-" backend-name)) nil)
(fboundp backend-formatter) backend-formatter)) num cont rtn rpllbl keepp
textareap preserve-indentp cols rows fmt) (setq opts (or opts "") num
(string-match "[-+]n\\>" opts) cont (string-match "\\+n\\>" opts) rpllbl
(string-match "-r\\>" opts) keepp (string-match "-k\\>" opts) textareap
(string-match "-t\\>" opts) preserve-indentp (or org-src-preserve-indentation
(string-match "-i\\>" opts)) cols (if (string-match "-w[ ]+\\([0-9]+\\)"
opts) (string-to-number (match-string 1 opts)) 80) rows (if (string-match "-h[
]+\\([0-9]+\\)" opts) (string-to-number (match-string 1 opts)) (org-count-lines
code)) fmt (if (string-match "-l[ ]+\"\\([^\"\n]+\\)\"" opts)
(match-string 1 opts))) (when (and textareap (eq org-export-current-backend
(quote html))) (setq num nil cont nil lang nil)) (if keepp (setq rpllbl (quote
keep))) (setq rtn (if preserve-indentp code (org-remove-indentation code)))
(when (string-match "^," rtn) (setq rtn (with-temp-buffer (insert rtn)
(goto-char (point-min)) (while (re-search-forward "^," nil t) (if (or ... ...)
(replace-match "")) (end-of-line 1)) (buffer-string)))) (setq rtn (cond
(backend-formatter (funcall backend-formatter rtn lang caption textareap cols
rows num cont rpllbl fmt)) ((eq org-export-current-backend (quote docbook))
(setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (concat
"<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend (quote html)) (when lang (if (featurep ...) (require
...) (require ... nil t)) (when (not ...) (setq lang nil) (message "htmlize.el
1.34 or later is needed for source code formatting"))) (if lang (let* (... ...
... ...) (setq rtn ...) (if ... ...)) (if textareap (setq rtn ...)
(with-temp-buffer ... ... ... ...) (setq rtn ...))) (unless textareap (setq rtn
(org-export-number-lines rtn 1 1 num cont rpllbl fmt))) (if (string-match
"\\(\\`<[^>]*>\\)\n" rtn) (setq rtn (replace-match "\\1" t nil rtn))) rtn) ((eq
org-export-current-backend (quote latex)) (setq rtn (org-export-number-lines
rtn 0 0 num cont rpllbl fmt)) (cond ((and lang org-export-latex-listings) (flet
... ...)) (t (concat ... rtn ...)))) ((eq org-export-current-backend (quote
ascii)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt))
(concat caption "\n" (concat (mapconcat ... ... "\n") "\n"))) (t (error "Don't
know how to markup source or example block in %s" (upcase backend-name)))))
(setq rtn (concat "\n#+BEGIN_" backend-name "\n" (org-add-props rtn (quote
(org-protected t org-example t org-native-text t))) "\n#+END_" backend-name
"\n")) (org-add-props rtn nil (quote original-indentation) indent)))
(unwind-protect (progn (let* ((backend-name (symbol-name
org-export-current-backend)) (backend-formatter (intern (format
"org-%s-format-source-code-or-example" backend-name))) (backend-feature (intern
(concat "org-" backend-name))) (backend-formatter (and (require (intern ...)
nil) (fboundp backend-formatter) backend-formatter)) num cont rtn rpllbl keepp
textareap preserve-indentp cols rows fmt) (setq opts (or opts "") num
(string-match "[-+]n\\>" opts) cont (string-match "\\+n\\>" opts) rpllbl
(string-match "-r\\>" opts) keepp (string-match "-k\\>" opts) textareap
(string-match "-t\\>" opts) preserve-indentp (or org-src-preserve-indentation
(string-match "-i\\>" opts)) cols (if (string-match "-w[ ]+\\([0-9]+\\)"
opts) (string-to-number (match-string 1 opts)) 80) rows (if (string-match "-h[
]+\\([0-9]+\\)" opts) (string-to-number (match-string 1 opts)) (org-count-lines
code)) fmt (if (string-match "-l[ ]+\"\\([^\"\n]+\\)\"" opts)
(match-string 1 opts))) (when (and textareap (eq org-export-current-backend
(quote html))) (setq num nil cont nil lang nil)) (if keepp (setq rpllbl (quote
keep))) (setq rtn (if preserve-indentp code (org-remove-indentation code)))
(when (string-match "^," rtn) (setq rtn (with-temp-buffer (insert rtn)
(goto-char (point-min)) (while (re-search-forward "^," nil t) (if ... ...)
(end-of-line 1)) (buffer-string)))) (setq rtn (cond (backend-formatter (funcall
backend-formatter rtn lang caption textareap cols rows num cont rpllbl fmt))
((eq org-export-current-backend (quote docbook)) (setq rtn
(org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (concat
"<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend (quote html)) (when lang (if ... ... ...) (when ...
... ...)) (if lang (let* ... ... ...) (if textareap ... ... ...)) (unless
textareap (setq rtn ...)) (if (string-match "\\(\\`<[^>]*>\\)\n" rtn) (setq rtn
...)) rtn) ((eq org-export-current-backend (quote latex)) (setq rtn
(org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (cond (... ...) (t
...))) ((eq org-export-current-backend (quote ascii)) (setq rtn
(org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (concat caption "\n"
(concat ... "\n"))) (t (error "Don't know how to markup source or example block
in %s" (upcase backend-name))))) (setq rtn (concat "\n#+BEGIN_" backend-name
"\n" (org-add-props rtn (quote (org-protected t org-example t org-native-text
t))) "\n#+END_" backend-name "\n")) (org-add-props rtn nil (quote
original-indentation) indent))) (set-match-data save-match-data-internal (quote
evaporate)))
(let ((save-match-data-internal (match-data))) (unwind-protect (progn (let*
((backend-name (symbol-name org-export-current-backend)) (backend-formatter
(intern (format "org-%s-format-source-code-or-example" backend-name)))
(backend-feature (intern (concat "org-" backend-name))) (backend-formatter (and
(require ... nil) (fboundp backend-formatter) backend-formatter)) num cont rtn
rpllbl keepp textareap preserve-indentp cols rows fmt) (setq opts (or opts "")
num (string-match "[-+]n\\>" opts) cont (string-match "\\+n\\>" opts) rpllbl
(string-match "-r\\>" opts) keepp (string-match "-k\\>" opts) textareap
(string-match "-t\\>" opts) preserve-indentp (or org-src-preserve-indentation
(string-match "-i\\>" opts)) cols (if (string-match "-w[ ]+\\([0-9]+\\)"
opts) (string-to-number (match-string 1 opts)) 80) rows (if (string-match "-h[
]+\\([0-9]+\\)" opts) (string-to-number (match-string 1 opts)) (org-count-lines
code)) fmt (if (string-match "-l[ ]+\"\\([^\"\n]+\\)\"" opts)
(match-string 1 opts))) (when (and textareap (eq org-export-current-backend
(quote html))) (setq num nil cont nil lang nil)) (if keepp (setq rpllbl (quote
keep))) (setq rtn (if preserve-indentp code (org-remove-indentation code)))
(when (string-match "^," rtn) (setq rtn (with-temp-buffer (insert rtn)
(goto-char ...) (while ... ... ...) (buffer-string)))) (setq rtn (cond
(backend-formatter (funcall backend-formatter rtn lang caption textareap cols
rows num cont rpllbl fmt)) ((eq org-export-current-backend ...) (setq rtn ...)
(concat "<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend ...) (when lang ... ...) (if lang ... ...) (unless
textareap ...) (if ... ...) rtn) ((eq org-export-current-backend ...) (setq rtn
...) (cond ... ...)) ((eq org-export-current-backend ...) (setq rtn ...)
(concat caption "\n" ...)) (t (error "Don't know how to markup source or
example block in %s" ...)))) (setq rtn (concat "\n#+BEGIN_" backend-name "\n"
(org-add-props rtn (quote ...)) "\n#+END_" backend-name "\n")) (org-add-props
rtn nil (quote original-indentation) indent))) (set-match-data
save-match-data-internal (quote evaporate))))
(save-match-data (let* ((backend-name (symbol-name
org-export-current-backend)) (backend-formatter (intern (format
"org-%s-format-source-code-or-example" backend-name))) (backend-feature (intern
(concat "org-" backend-name))) (backend-formatter (and (require (intern (concat
"org-" backend-name)) nil) (fboundp backend-formatter) backend-formatter)) num
cont rtn rpllbl keepp textareap preserve-indentp cols rows fmt) (setq opts (or
opts "") num (string-match "[-+]n\\>" opts) cont (string-match "\\+n\\>" opts)
rpllbl (string-match "-r\\>" opts) keepp (string-match "-k\\>" opts) textareap
(string-match "-t\\>" opts) preserve-indentp (or org-src-preserve-indentation
(string-match "-i\\>" opts)) cols (if (string-match "-w[
]+\\([0-9]+\\)" opts) (string-to-number (match-string 1 opts)) 80) rows (if
(string-match "-h[ ]+\\([0-9]+\\)" opts) (string-to-number (match-string 1
opts)) (org-count-lines code)) fmt (if (string-match "-l[
]+\"\\([^\"\n]+\\)\"" opts) (match-string 1 opts))) (when (and textareap (eq
org-export-current-backend (quote html))) (setq num nil cont nil lang nil)) (if
keepp (setq rpllbl (quote keep))) (setq rtn (if preserve-indentp code
(org-remove-indentation code))) (when (string-match "^," rtn) (setq rtn
(with-temp-buffer (insert rtn) (goto-char (point-min)) (while
(re-search-forward "^," nil t) (if (or ... ...) (replace-match ""))
(end-of-line 1)) (buffer-string)))) (setq rtn (cond (backend-formatter (funcall
backend-formatter rtn lang caption textareap cols rows num cont rpllbl fmt))
((eq org-export-current-backend (quote docbook)) (setq rtn
(org-export-number-lines rtn 0 0 num cont rpllbl fmt)) (concat
"<programlisting><![CDATA[" rtn "]]></programlisting>\n")) ((eq
org-export-current-backend (quote html)) (when lang (if (featurep ...) (require
...) (require ... nil t)) (when (not ...) (setq lang nil) (message "htmlize.el
1.34 or later is needed for source code formatting"))) (if lang (let* (... ...
... ...) (setq rtn ...) (if ... ...)) (if textareap (setq rtn ...)
(with-temp-buffer ... ... ... ...) (setq rtn ...))) (unless textareap (setq rtn
(org-export-number-lines rtn 1 1 num cont rpllbl fmt))) (if (string-match
"\\(\\`<[^>]*>\\)\n" rtn) (setq rtn (replace-match "\\1" t nil rtn))) rtn) ((eq
org-export-current-backend (quote latex)) (setq rtn (org-export-number-lines
rtn 0 0 num cont rpllbl fmt)) (cond ((and lang org-export-latex-listings) (flet
... ...)) (t (concat ... rtn ...)))) ((eq org-export-current-backend (quote
ascii)) (setq rtn (org-export-number-lines rtn 0 0 num cont rpllbl fmt))
(concat caption "\n" (concat (mapconcat ... ... "\n") "\n"))) (t (error "Don't
know how to markup source or example block in %s" (upcase backend-name)))))
(setq rtn (concat "\n#+BEGIN_" backend-name "\n" (org-add-props rtn (quote
(org-protected t org-example t org-native-text t))) "\n#+END_" backend-name
"\n")) (org-add-props rtn nil (quote original-indentation) indent)))
org-export-format-source-code-or-example("sh" "svn checkout
http://svn/trunk/dev/ mydev\n" " " 0 nil)
(setq trans (org-export-format-source-code-or-example lang code opts indent
caption))
(while (re-search-forward "\\(^\\([ ]*\\)#\\+BEGIN_SRC:?\\([ ]+\\([^
\n]+\\)\\)?\\(.*\\)\n\\([^]+?\n\\)[
]*#\\+END_SRC.*\n?\\)\\|\\(^\\([ ]*\\)#\\+BEGIN_EXAMPLE:?\\(?:[
]+\\(.*\\)\\)?\n\\([^]+?\n\\)[ ]*#\\+END_EXAMPLE.*\n?\\)" nil t) (if
(match-end 1) (if (not (match-string 4)) (error "Source block missing language
specification: %s" (let* ((body (match-string 6)) (nothing (message "body:%s"
body)) (preview (or ... body))) (if (> (length preview) 35) (concat (substring
preview 0 32) "...") preview))) (setq lang (match-string 4) opts (match-string
5) code (match-string 6) indent (length (match-string 2)) caption
(get-text-property 0 (quote org-caption) (match-string 0)))) (setq lang nil
opts (match-string 9) code (match-string 10) indent (length (match-string 8))
caption (get-text-property 0 (quote org-caption) (match-string 0)))) (setq
trans (org-export-format-source-code-or-example lang code opts indent caption))
(replace-match trans t t))
(let ((case-fold-search t) lang code trans opts indent caption) (goto-char
(point-min)) (while (re-search-forward "\\(^\\([ ]*\\)#\\+BEGIN_SRC:?\\([
]+\\([^ \n]+\\)\\)?\\(.*\\)\n\\([^]+?\n\\)[
]*#\\+END_SRC.*\n?\\)\\|\\(^\\([ ]*\\)#\\+BEGIN_EXAMPLE:?\\(?:[
]+\\(.*\\)\\)?\n\\([^]+?\n\\)[ ]*#\\+END_EXAMPLE.*\n?\\)" nil t) (if
(match-end 1) (if (not (match-string 4)) (error "Source block missing language
specification: %s" (let* ((body ...) (nothing ...) (preview ...)) (if (> ...
35) (concat ... "...") preview))) (setq lang (match-string 4) opts
(match-string 5) code (match-string 6) indent (length (match-string 2)) caption
(get-text-property 0 (quote org-caption) (match-string 0)))) (setq lang nil
opts (match-string 9) code (match-string 10) indent (length (match-string 8))
caption (get-text-property 0 (quote org-caption) (match-string 0)))) (setq
trans (org-export-format-source-code-or-example lang code opts indent caption))
(replace-match trans t t)))
org-export-replace-src-segments-and-examples()
...
#+end_src
Best regards,
Seb
--
Sebastien Vauban
- [O] [bug] "Invalid face" when exporting code block to HTML,
Sebastien Vauban <=