emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] Hook request and patch


From: Carsten Dominik
Subject: Re: [Orgmode] Hook request and patch
Date: Wed, 31 Dec 2008 09:45:35 +0100

Hi Tom,

is there a reason why you did not put the hook right after
the include file moment?

- Carsten

On Dec 30, 2008, at 5:22 AM, Tom Breton (Tehom) wrote:

Motivating incident: I was exporting some files and I wanted to
process a file after I included it.  Using "#+INCLUDE" I could include
it and I could tell it to use "BEGIN_XXX" "END_XXX" so my code could
find it.

But I couldn't process it, because org-export-preprocess-string calls
`org-export-preprocess-hook' before it handles "#+INCLUDE".

I didn't want to move org-export-preprocess-hook because for all I
know there's a good reason it comes first.  Similarly for the timing
of "#+INCLUDE".

So I ask for a hook that is called after includes are handled.  Diffs
appended.

Another advantage: `org-update-all-dblocks' didn't seem to work in
org-export-preprocess-hook because the working buffer isn't yet in
org-mode when it's called, but works in the new hook.

Tom Breton (Tehom)

*** old-org-exp.el      2008-12-18 18:26:05.000000000 -0500
--- org-exp.el  2008-12-29 23:10:46.000000000 -0500
***************
*** 297,302 ****
--- 297,305 ----
 (defvar org-export-preprocess-hook nil
   "Hook for preprocessing an export buffer.
 Pretty much the first thing when exporting is running this hook.")
+ (defvar org-export-midprocess-hook nil
+   "Hook for processing an export buffer after file inclusions.
+ Run after file inclusions and tree exclusions.")

 (defgroup org-export-translation nil
   "Options for translating special ascii sequences for the export
backends."
***************
*** 1522,1527 ****
--- 1525,1532 ----
;; Find matches for radio targets and turn them into internal links
       (org-export-mark-radio-links)

+       (run-hooks 'org-export-midprocess-hook)
+
       ;; Find all links that contain a newline and put them into a
single line
       (org-export-concatenate-multiline-links)







_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode





reply via email to

[Prev in Thread] Current Thread [Next in Thread]