* #+INCLUDE causes error when it attmepts to expand a LaTeX macro in source block
[not found] <a80aef16-88f1-8e6a-d56c-526eadd2aea0.ref@verizon.net>
@ 2019-12-08 3:07 ` Charles Millar
2019-12-08 8:46 ` Nicolas Goaziou
0 siblings, 1 reply; 2+ messages in thread
From: Charles Millar @ 2019-12-08 3:07 UTC (permalink / raw)
To: emacs-orgmode@gnu.org
[-- Attachment #1: Type: text/plain, Size: 1390 bytes --]
Greetings,
In my init file I have
(setq org-confirm-babel-evaluate nil)
File "A" is attached as an org file. I evaluate the source blocks (C-c
C-v s), the table is generated and then I export it to PDF. The source
blocks do not evaluate during export.
In file B I have
#+INCLUDE: "/path/to/FileA::*SCHEDULE A1112"
When I attempt to export File B to PDF/LaTeX the following error occurs
Debugger entered--Lisp error: (error "Undefined Org macro: cmhfill;
aborting")
signal(error ("Undefined Org macro: cmhfill; aborting"))
error("Undefined Org macro: %s; aborting" "cmhfill")
If I place a "#+HEADER: :eval no" in the source blocks in File A (after
generating the table) File B will export the table to PDF. Also, please
note that the cmhfill macro is in the table headings.
Is this an error, i.e. the #+INCLUDE does not honor the setting in my
init file?
Is there a header or property setting for File B to prevent the exporter
from evaluating the source blocks when executing through an #+INCLUDE,
more particularly to prevent the attempted macro expansion within the
source blocks?
Both File A and File B had identical LaTeX settings, i.e. the macro was
defined in both files.
GNU Emacs 27.0.50 (build 8, x86_64-pc-linux-gnu, GTK+ Version 3.24.13)
of 2019-12-07
Org mode version 9.3 (release_9.3-36-gbe7434 @
/usr/local/share/org-mode/lisp/)
Charlie Millar
[-- Attachment #2: ForINCLUDE-email.org --]
[-- Type: text/plain, Size: 1294 bytes --]
* SCHEDULE A1112
#+NAME: SCHEDAP
#+begin_src rec :data somefile.rec :type Finance :fields AccountDate,Shares,Description,AccountAmount :sort AccountDate,Description :results silent
(File = 'Estate' && AccountSchedule = 'A')
#+end_src
#+RESULTS: SCHEDAP
#+NAME: SCHEDA
#+begin_src emacs-lisp :var table=SCHEDAP :exports results
(setq table (cons 'hline table))
(setq table (cons '("Date" "{{{cmhfill}}} Shares" " Description " "{{{cmhfill}}} Inventory{{{cm1space}}}Value") table))
(setq table (append table '(("| |Total Schedule A"))))
(setq table (append table '(("\n#+TBLFM: @>$>=vsum(@I$>..@>>$>);%.2f::"))))
table
#+end_src
#+ATTR_LATEX: :mode table :environment longtable :align p{60pt}N{5}{3}p{275pt}N{8}{2}
#+RESULTS: SCHEDA
| Date | {{{cmhfill}}} Shares | Description | {{{cmhfill}}} Inventory{{{cm1space}}}Value |
|------------+----------------------+------------------+--------------------------------------------|
| 2018-03-18 | | Something | 49645.59 |
| etc | | etc | 4878.51 |
| | | Total Schedule A | 54524.10 |
#+TBLFM: @>$>=vsum(@I$>..@>>$>);%.2f:: |
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: #+INCLUDE causes error when it attmepts to expand a LaTeX macro in source block
2019-12-08 3:07 ` #+INCLUDE causes error when it attmepts to expand a LaTeX macro in source block Charles Millar
@ 2019-12-08 8:46 ` Nicolas Goaziou
0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2019-12-08 8:46 UTC (permalink / raw)
To: Charles Millar; +Cc: emacs-orgmode@gnu.org
Hello,
Charles Millar <millarc@verizon.net> writes:
> In my init file I have
>
> (setq org-confirm-babel-evaluate nil)
This is totally unrelated to inclusion, see below.
> File "A" is attached as an org file. I evaluate the source blocks (C-c
> C-v s), the table is generated and then I export it to PDF. The source
> blocks do not evaluate during export.
>
> In file B I have
>
> #+INCLUDE: "/path/to/FileA::*SCHEDULE A1112"
>
> When I attempt to export File B to PDF/LaTeX the following error occurs
>
> Debugger entered--Lisp error: (error "Undefined Org macro: cmhfill;
> aborting")
> signal(error ("Undefined Org macro: cmhfill; aborting"))
> error("Undefined Org macro: %s; aborting" "cmhfill")
>
[...]
> Also, please note that the cmhfill macro is in the table headings.
This is the problem, IMO.
> Is this an error, i.e. the #+INCLUDE does not honor the setting in my
> init file?
Generally speaking, INCLUDE does not honor any Babel related setting
because inclusion happens before almost anything else (e.g., Babel)
during the export process.
But I don't think this is related to your issue.
> Is there a header or property setting for File B to prevent the exporter
> from evaluating the source blocks when executing through an #+INCLUDE,
> more particularly to prevent the attempted macro expansion within the
> source blocks?
Org does not expand within source blocks. It tried to expand macro in
your table header, but cannot find the macro definitions.
>
> Both File A and File B had identical LaTeX settings, i.e. the macro was
> defined in both files.
Where is it defined? I cannot see it.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-12-08 8:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <a80aef16-88f1-8e6a-d56c-526eadd2aea0.ref@verizon.net>
2019-12-08 3:07 ` #+INCLUDE causes error when it attmepts to expand a LaTeX macro in source block Charles Millar
2019-12-08 8:46 ` Nicolas Goaziou
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).