* Improved way to include some headlines from an external org file
@ 2014-09-11 14:24 Xavier Garrido
2014-09-12 0:45 ` Andrea Rossetti
2014-09-30 19:55 ` Andrea Rossetti
0 siblings, 2 replies; 8+ messages in thread
From: Xavier Garrido @ 2014-09-11 14:24 UTC (permalink / raw)
To: emacs-orgmode@gnu.org
Dear Orgers,
By following discussions on this list, I think I have understood that
the inclusion mechanism through =#+INCLUDE= directive is a bit rough and
only allows a limited range of use. I know how to include only lines
using =:lines= parameter but what I would like to achieve is to only
include some headlines from an external org file. Is there a way using
babel for example (like this function
https://github.com/thesoftwarebin/the-emacs-software-bin/blob/master/include-many-files/include-many-files.org)
to write something like that
#+BEGIN_SRC org
#+INCLUDE: "./base.org" :headline "First base chapter"
,* A more personal chapter
#+INCLUDE: "./base.org" :headline "Second base chapter"
,* Another personal chapter
#+END_SRC
Of course, I can achieve that by using =:lines= and calculating how many
lines embeds the given headline. But every time the "First base chapter"
length changes I will have to change all the subsequent =#INCLUDE:=
commands. I do not know how hard it is to implement this but I think it
will be a nice addition (at least one I will use a lot).
Thanks for your answer,
Xavier
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-11 14:24 Improved way to include some headlines from an external org file Xavier Garrido
@ 2014-09-12 0:45 ` Andrea Rossetti
2014-09-13 9:40 ` Xavier Garrido
2014-09-30 19:55 ` Andrea Rossetti
1 sibling, 1 reply; 8+ messages in thread
From: Andrea Rossetti @ 2014-09-12 0:45 UTC (permalink / raw)
To: Xavier Garrido; +Cc: emacs-orgmode@gnu.org
Xavier Garrido <xavier.garrido@gmail.com> writes:
> Of course, I can achieve that by using =:lines= and calculating how many
> lines embeds the given headline.
Hi Xavier, another possible approach (maybe less handy, but in
some cases it might fit): the user could keep one .org file
per headline, and #+INCLUDE one headline (= one entire file)
when needed.
Kindest regards,
Andrea
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-12 0:45 ` Andrea Rossetti
@ 2014-09-13 9:40 ` Xavier Garrido
2014-09-30 23:10 ` Rasmus
0 siblings, 1 reply; 8+ messages in thread
From: Xavier Garrido @ 2014-09-13 9:40 UTC (permalink / raw)
To: Andrea Rossetti; +Cc: emacs-orgmode@gnu.org
Hi Andrea,
Le 12/09/2014 02:45, Andrea Rossetti a écrit :
> Xavier Garrido <xavier.garrido@gmail.com> writes:
>> Of course, I can achieve that by using =:lines= and calculating how many
>> lines embeds the given headline.
>
> Hi Xavier, another possible approach (maybe less handy, but in
> some cases it might fit): the user could keep one .org file
> per headline, and #+INCLUDE one headline (= one entire file)
> when needed.
>
This is something I use when dealing with a book or report with
basically one big file per chapter. Here the problem is slightly
different : I have 4 org/Beamer presentations that almost 80% of them
are the same. So instead of maintening this 80% in 4 different places,
I'd like to write them and change them in one place and then include the
needed headlines at the right place in each of the 4 presentations.
I know this can't be done with #+INCLUDE maybe with a nice babel
function or a bit of elisp. So maybe someone already did that. Otherwise
this may be a nice addition for further release of org ;)
Cheers,
Xavier
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-11 14:24 Improved way to include some headlines from an external org file Xavier Garrido
2014-09-12 0:45 ` Andrea Rossetti
@ 2014-09-30 19:55 ` Andrea Rossetti
2014-10-01 5:06 ` Xavier Garrido
1 sibling, 1 reply; 8+ messages in thread
From: Andrea Rossetti @ 2014-09-30 19:55 UTC (permalink / raw)
To: Xavier Garrido; +Cc: emacs-orgmode@gnu.org
Xavier Garrido <xavier.garrido@gmail.com> writes:
> Is there a way ...
...
> to write something like that
...
> #+BEGIN_SRC org
> #+INCLUDE: "./base.org" :headline "First base chapter"
> ,* A more personal chapter
> #+INCLUDE: "./base.org" :headline "Second base chapter"
> ,* Another personal chapter
> #+END_SRC
Hi! today I crossed into Sacha's weekly links
( http://sachachua.com/blog/#post-27515 ).
One of the proposed link suggests a solution not too far
from your initial question:
http://endlessparentheses.com/updating-org-mode-include-statements-on-the-fly.html?source=rss
Kindest regards,
Andrea
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-13 9:40 ` Xavier Garrido
@ 2014-09-30 23:10 ` Rasmus
2014-10-01 5:29 ` Xavier Garrido
0 siblings, 1 reply; 8+ messages in thread
From: Rasmus @ 2014-09-30 23:10 UTC (permalink / raw)
To: emacs-orgmode
Hi Xavier,
Xavier Garrido <xavier.garrido@gmail.com> writes:
> Le 12/09/2014 02:45, Andrea Rossetti a écrit :
>> Xavier Garrido <xavier.garrido@gmail.com> writes:
>>> Of course, I can achieve that by using =:lines= and calculating how many
>>> lines embeds the given headline.
>>
>> Hi Xavier, another possible approach (maybe less handy, but in
>> some cases it might fit): the user could keep one .org file
>> per headline, and #+INCLUDE one headline (= one entire file)
>> when needed.
>>
>
> This is something I use when dealing with a book or report with
> basically one big file per chapter. Here the problem is slightly
> different : I have 4 org/Beamer presentations that almost 80% of them
> are the same. So instead of maintening this 80% in 4 different places,
> I'd like to write them and change them in one place and then include
> the needed headlines at the right place in each of the 4
> presentations.
>
> I know this can't be done with #+INCLUDE maybe with a nice babel
> function or a bit of elisp. So maybe someone already did
> that. Otherwise this may be a nice addition for further release of org
> ;)
You could test the patch here:
http://permalink.gmane.org/gmane.emacs.orgmode/91307
I think it introduces something close to what you are looking for.
> #+BEGIN_SRC org
> #+INCLUDE: "./base.org" :headline "First base chapter"
> ,* A more personal chapter
> #+INCLUDE: "./base.org" :headline "Second base chapter"
> ,* Another personal chapter
> #+END_SRC
You'd be able to do
* first chapter
Note how we're renaming /first base chapter/ on the fly.
* In this book /first base chapter/ is my second chapter
#+INCLUDE: "./base.org::*First base chapter" :only-contents t
Of course, you can also include other named objects such as tables and
probably code blocks.
—Rasmus
--
Hvor meget poesi tror De kommer ud af et glas isvand?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-30 19:55 ` Andrea Rossetti
@ 2014-10-01 5:06 ` Xavier Garrido
2014-10-01 21:31 ` Andrea Rossetti
0 siblings, 1 reply; 8+ messages in thread
From: Xavier Garrido @ 2014-10-01 5:06 UTC (permalink / raw)
To: Andrea Rossetti; +Cc: emacs-orgmode@gnu.org
Hi Andrea,
Le 30/09/2014 21:55, Andrea Rossetti a écrit :
> Xavier Garrido <xavier.garrido@gmail.com> writes:
>> Is there a way ...
> ...
>> to write something like that
> ...
>> #+BEGIN_SRC org
>> #+INCLUDE: "./base.org" :headline "First base chapter"
>> ,* A more personal chapter
>> #+INCLUDE: "./base.org" :headline "Second base chapter"
>> ,* Another personal chapter
>> #+END_SRC
>
> Hi! today I crossed into Sacha's weekly links
> ( http://sachachua.com/blog/#post-27515 ).
>
> One of the proposed link suggests a solution not too far
> from your initial question:
>
> http://endlessparentheses.com/updating-org-mode-include-statements-on-the-fly.html?source=rss
>
Thanks for the follow-up. Actually I am waiting this patch
http://article.gmane.org/gmane.emacs.orgmode/90932/match=include+resolve+links
to be pushed by Rasmus (see the comment in the endlessparentheses article).
Thanks again,
Xavier
> Kindest regards,
>
> Andrea
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-09-30 23:10 ` Rasmus
@ 2014-10-01 5:29 ` Xavier Garrido
0 siblings, 0 replies; 8+ messages in thread
From: Xavier Garrido @ 2014-10-01 5:29 UTC (permalink / raw)
To: Rasmus, emacs-orgmode
Hi Rasmus,
Le 01/10/2014 01:10, Rasmus a écrit :
> Hi Xavier,
>
> You could test the patch here:
>
> http://permalink.gmane.org/gmane.emacs.orgmode/91307
>
I am following the discussion since the beginning (and all your exchange
with Nicolas)
> I think it introduces something close to what you are looking for.
>
This is exactly what I needed and I will try to test it today.
>> #+BEGIN_SRC org
>> #+INCLUDE: "./base.org" :headline "First base chapter"
>> ,* A more personal chapter
>> #+INCLUDE: "./base.org" :headline "Second base chapter"
>> ,* Another personal chapter
>> #+END_SRC
>
> You'd be able to do
>
> * first chapter
> Note how we're renaming /first base chapter/ on the fly.
> * In this book /first base chapter/ is my second chapter
> #+INCLUDE: "./base.org::*First base chapter" :only-contents t
>
> Of course, you can also include other named objects such as tables and
> probably code blocks.
>
Reading the discussion, I didn't get this last feature of including
named code blocks and tables ! I have another use case that can benefit
from this patch. So thanks a lot for all the hard work.
Cheers,
Xavier
> —Rasmus
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Improved way to include some headlines from an external org file
2014-10-01 5:06 ` Xavier Garrido
@ 2014-10-01 21:31 ` Andrea Rossetti
0 siblings, 0 replies; 8+ messages in thread
From: Andrea Rossetti @ 2014-10-01 21:31 UTC (permalink / raw)
To: Xavier Garrido; +Cc: emacs-orgmode@gnu.org
Xavier Garrido <xavier.garrido@gmail.com> writes:
> Thanks for the follow-up. Actually I am waiting this patch
> http://article.gmane.org/gmane.emacs.orgmode/90932/match=include+resolve+links
> to be pushed by Rasmus (see the comment in the endlessparentheses
Ahem... sincere apologies for the noise. I got confused by
those words "resolve links" in the topic title, it sounded
like a HTML-specific thing. Kindest regards, Andrea
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2014-10-01 21:31 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-11 14:24 Improved way to include some headlines from an external org file Xavier Garrido
2014-09-12 0:45 ` Andrea Rossetti
2014-09-13 9:40 ` Xavier Garrido
2014-09-30 23:10 ` Rasmus
2014-10-01 5:29 ` Xavier Garrido
2014-09-30 19:55 ` Andrea Rossetti
2014-10-01 5:06 ` Xavier Garrido
2014-10-01 21:31 ` Andrea Rossetti
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).