emacs-orgmode
[Top][All Lists]
Advanced

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

Re: ist here a :post header arg for tangling?


From: Immanuel Litzroth
Subject: Re: ist here a :post header arg for tangling?
Date: Mon, 4 Jan 2021 16:36:24 +0100

Oh and I also made the tangling itself more flexible in that you can now
also choose to only tangle stuff going to a certain file. This is mainly to be
able to define an interactive command that tangles/reloads everything going
to the file under point.
Immanuel

On Mon, Jan 4, 2021 at 4:31 PM Immanuel Litzroth
<immanuel.litzroth@gmail.com> wrote:
>
> Well I solved the problem by writing a tangler which can be configured
> with tangle-config
> you define a tangler by making a hash "language" -> tangle-hooks. The
> tangle-hooks are
> called at beginning of tangling, on each source block, on each
> noweb-ref and at the end of
> tangling. They receive the full source-block-info to do their work,
> and in the case of noweb-references
> they receive the full stack of sbi's that lead up to this noweb reference.
> >>>
> (tangled-buffer "Buffer that is being tangled")
>  (name "Name of the code block")
>  (tangle-file "Filename to tangle to")
>  (properties "Properties of this block")
>  (full-block "Text of the full block")
>  (beg-block "Buffer pos of beginning of the block in the tangled buffer")
>  (end-block "end of the block in the tangled buffer")
>  (lang "language of the tangled buffer")
>  (beg-lang "beginning of the language in the tangled buffer")
>  (end-lang "end of the language in the tangled buffer")
>  (switches "switches of this block")
>  (beg-switches "begin of the switches in this block")
>  (end-switches "end of the switches in this block")
>  (header-args "header args of this block")
>  (beg-header-args "buffer pos of header args beginning")
>  (end-header-args "buffer pos of header args end")
>  (body "body of the tangled block")
>  (beg-body "buffer pos of the beginning of the body")
>  (end-body "buffer pos of the end of the body"))
> >>>
> That way I can tangle a multi language org file and do the correct thing for
> each of the language by defining functions of interest. It's quite
> flexible, I'm
> going to use it to do some aspect-oriented programming/tangling when I
> find the time.
> Immanuel
>
> On Mon, Jan 4, 2021 at 4:11 PM Diego Zamboni <diego@zzamboni.org> wrote:
> >
> > Agree. It should be possible to make the hook file-local, but still it's 
> > not trivial to have good control over where and how the changes are made.
> >
> > --Diego
> >
> >
> > On Mon, Jan 4, 2021 at 3:51 PM Immanuel Litzroth 
> > <immanuel.litzroth@gmail.com> wrote:
> >>
> >> There's that, but you're not gonna do much with that since it is
> >> global to emacs. If you're brimming
> >> with vigour you might achieve what you want by rebinding that each
> >> time you tangle to do the correct
> >> thing. Not much information is available in that hook, you get dropped
> >> into a temp buffer containing the
> >> result of tangling.
> >> Immanuel
> >>
> >> On Mon, Jan 4, 2021 at 3:07 PM Diego Zamboni <diego@zzamboni.org> wrote:
> >> >
> >> > There's =org-babel-post-tangle-hook=, which AFAICT specifies hooks that 
> >> > will be run with the tangled code in a temporary buffer. I couldn't find 
> >> > much documentation nor examples, but it is mentioned at 
> >> > https://orgmode.org/manual/Extracting-Source-Code.html#Hooks-3
> >> >
> >> > --Diego
> >> >
> >> >
> >> >
> >> >
> >> >
> >> > On Fri, Jan 1, 2021 at 1:31 PM Immanuel Litzroth 
> >> > <immanuel.litzroth@gmail.com> wrote:
> >> >>
> >> >> I don't think there is an arg for that. I have written a tangler that
> >> >> reuses a lot
> >> >> of the org-babel machinery and has a more flexible mechanism to decide 
> >> >> what
> >> >> to do with the tangled code -- I use it for example to not write a
> >> >> tangled file if it
> >> >> hasn't changed, meaning that it will not trigger recompile.
> >> >> The project is private now but if you're interested I can give you 
> >> >> access to it.
> >> >> What exactly are you trying to do?
> >> >> Immanuel
> >> >>
> >> >> On Fri, Jan 1, 2021 at 2:09 AM George Mauer <gmauer@gmail.com> wrote:
> >> >> >
> >> >> > I'd like to run some code to post-process files after they are 
> >> >> > tangled. Is there a header-arg for that?
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> -- Researching the dual problem of finding the function that has a
> >> >> given point as fixpoint.
> >> >>
> >>
> >>
> >> --
> >> -- Researching the dual problem of finding the function that has a
> >> given point as fixpoint.
>
>
>
> --
> -- Researching the dual problem of finding the function that has a
> given point as fixpoint.



-- 
-- Researching the dual problem of finding the function that has a
given point as fixpoint.



reply via email to

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