Re: [O] Something to watch out for when including files

2016-09-21 Thread Eric S Fraga
On Wednesday, 21 Sep 2016 at 15:22, Giacomo M wrote:
> Lately I like to have headlines for all the logical parts of the 
> document, so also an "Abstract" headline with the abstract block inside. 
> Then I use the tag "ignore" and the org export extra "ignore-headlines" 
> (activated e.g. via "(ox-extras-activate '(ignore-headlines))" if you 
> use org-plus-contrib) to avoid exporting the headlines themselves. This 
> should also avoid the inheritance of tags in the last headline of the 
> include. Not vanilla org, but I find it handy.

This is basically what I do.  I even have (ignored) headlines that have
a content that is simply a @@latex:\newpage@@ directive!

The problem is that if you have a headline that is ignored, the text
that follows essentially belongs to the previous non-ignored
headline.  If that previous headline has been commented out or has been
marked as not to be exported, the text after the ignored headline is
also therefore ignored when it comes to export.

Ignoring headlines is very fragile in the same way as described in my
original post.

-- 
: Eric S Fraga (0xFFFCF67D), Emacs 25.0.90.1, Org release_8.3.3-535-g7213aa



Re: [O] Something to watch out for when including files

2016-09-21 Thread Giacomo M


Il 20/09/2016 17:21, Eric S Fraga ha scritto:

I had a #+include: directive as the first line of the
file which included an org file called preamble.org.  In that preamble
file, the last headline had the tag :noexport:.  It would seem that this
tag is not processed until after the include file has been included.  I
hope that makes sense.  In any case, this means that my abstract was
considered to be part of the noexport headline and was therefore not
exported.


Lately I like to have headlines for all the logical parts of the 
document, so also an "Abstract" headline with the abstract block inside. 
Then I use the tag "ignore" and the org export extra "ignore-headlines" 
(activated e.g. via "(ox-extras-activate '(ignore-headlines))" if you 
use org-plus-contrib) to avoid exporting the headlines themselves. This 
should also avoid the inheritance of tags in the last headline of the 
include. Not vanilla org, but I find it handy.


Giacomo




Re: [O] Something to watch out for when including files

2016-09-21 Thread Eric S Fraga
On Tuesday, 20 Sep 2016 at 23:32, Charles C. Berry wrote:
> I find myself in the habit of using inlinetasks tagged noexport for 
> various things and that might serve you in this case. That is, convert the 
> headline section to an inlinetask.

Hi Chuck,

Yes, this would work.  But, in the end, simply removing the section was
sufficient as it really wasn't necessary (and that's why I have
everything under version control... ;-).

> Another possibility is to use something like:
>
> #+header: :exports results :results raw replace
> #+NAME: import-include-dot-org
>
> #+BEGIN_SRC emacs-lisp
>(require 'ox-org)
>(org-export-string-as "#+INCLUDE: include.org" 'org t)
> #+END_SRC
>
> which will strip out headlines tagged with noexport during the babel phase 
> of export (i.e. before parsing).

This is quite ingenious!  I like it.  Don't need it now but worth
keeping note of for the future.  Thanks.

>> I do wonder whether the org export approach (i.e. how it "includes"
>> files) is correct but I can understand why the implementation is the way
>> it is.
>
> I agree about the implementation. Trying to make it smarter is asking for 
> trouble.

Yes, probably.

Thanks again,
eric


-- 
: Eric S Fraga (0xFFFCF67D), Emacs 25.0.90.1, Org release_8.3.3-535-g7213aa



Re: [O] Something to watch out for when including files

2016-09-20 Thread Charles C. Berry

On Tue, 20 Sep 2016, Eric S Fraga wrote:


Hello all,

just wanted to help others avoid spending a long time trying to figure
out some strange (well, unexpected) behaviour in org...

I have a document for which the LaTeX export was ignoring a
#+begin_abstract ... #+end_abstract construct near the start of the
document.  The text was simply not appearing in the LaTeX file.

Long story short: I had a #+include: directive as the first line of the
file which included an org file called preamble.org.  In that preamble
file, the last headline had the tag :noexport:.  It would seem that this
tag is not processed until after the include file has been included.  I
hope that makes sense.  In any case, this means that my abstract was
considered to be part of the noexport headline and was therefore not
exported.

Took me a very long time to figure out...  the simple solution was to
remove that noexport section entirely from the preamble file.



I find myself in the habit of using inlinetasks tagged noexport for 
various things and that might serve you in this case. That is, convert the 
headline section to an inlinetask.


Another possibility is to use something like:

#+header: :exports results :results raw replace
#+NAME: import-include-dot-org
#+BEGIN_SRC emacs-lisp
  (require 'ox-org)
  (org-export-string-as "#+INCLUDE: include.org" 'org t)
#+END_SRC

which will strip out headlines tagged with noexport during the babel phase 
of export (i.e. before parsing).



I do wonder whether the org export approach (i.e. how it "includes"
files) is correct but I can understand why the implementation is the way
it is.


I agree about the implementation. Trying to make it smarter is asking for 
trouble.


Chuck



Re: [O] Something to watch out for when including files

2016-09-20 Thread Adam Porter
Eric S Fraga  writes:

> Took me a very long time to figure out...  the simple solution was to
> remove that noexport section entirely from the preamble file.

Those are the worst to track down!  Thanks for sharing.  This would make
a good blog post too.  :)