1
0
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2025-01-15 17:00:45 +00:00

Allow to exclude some blocks in org-special-blocks.el

Patch by Chris Gray.
This commit is contained in:
Carsten Dominik 2009-10-02 13:11:52 +02:00
parent 82d6a786bc
commit 7445456796
2 changed files with 18 additions and 5 deletions

View File

@ -1,3 +1,10 @@
2009-10-02 Carsten Dominik <carsten.dominik@gmail.com>
* lisp/org-special-blocks.el (org-special-blocks-ignore-regexp):
New variable.
(org-special-blocks-make-special-cookies): Use
`org-special-blocks-ignore-regexp'.
2009-09-16 Carsten Dominik <carsten.dominik@gmail.com>
* lisp/org-invoice.el: New file.

View File

@ -40,17 +40,23 @@
;; user to add this class to his or her stylesheet if this div is to
;; mean anything.
(defvar org-special-blocks-ignore-regexp "^\\(LaTeX\\|HTML\\)$"
"A regexp indicating the names of blocks that should be ignored
by org-special-blocks. These blocks will presumably be
interpreted by other mechanisms.")
(defun org-special-blocks-make-special-cookies ()
"Adds special cookies when #+begin_foo and #+end_foo tokens are
seen. This is run after a few special cases are taken care of."
(when (or htmlp latexp)
(goto-char (point-min))
(while (re-search-forward "^#\\+\\(begin\\|end\\)_\\(.*\\)$" nil t)
(replace-match
(if (equal (downcase (match-string 1)) "begin")
(concat "ORG-" (match-string 2) "-START")
(concat "ORG-" (match-string 2) "-END"))
t t))))
(unless (string-match-p org-special-blocks-ignore-regexp (match-string 2))
(replace-match
(if (equal (downcase (match-string 1)) "begin")
(concat "ORG-" (match-string 2) "-START")
(concat "ORG-" (match-string 2) "-END"))
t t)))))
(add-hook 'org-export-preprocess-after-blockquote-hook
'org-special-blocks-make-special-cookies)