On Jan 18, 2010, at 1:43 PM, Sébastien Vauban wrote: > Hi Carsten, > > Carsten Dominik wrote: >> On Jan 14, 2010, at 12:15 PM, Sébastien Vauban wrote: >>> Sébastien Vauban wrote: >>>> >>>> Here a problem when exporting such a file: >>>> >>>> --8<---------------cut here---------------start------------->8--- >>>> #+MACRO: rest {\leavevmode \leaders \hrule height 0.7pt\hfill} \\ >>>> >>>> Nombre y apellidos del estudiante: {{{rest}}} >>>> --8<---------------cut here---------------end--------------->8--- >>>> >>>> The `rest' macro is for filling the rest of the current line with >>>> an >>>> horizontal rule. >>>> >>>> It needs to be enclosed between accolades. >> >> The macro just does text replacement, so the LaTeX exporter >> sees naked braces which it escapes as it should. In fact there seems >> to be a bug causing the opening "{" not to be escaped - I have just >> fixed that, I hope. > > The above, and the "accolade workaround" (in front of the LaTeX > environment), > work fine in some cases. > > Though, here is a relatively simple Org file that exposes some of > the problems > I'm still confronted with: > > --8<---------------cut here---------------start------------->8--- > #+TITLE: Spanish manual > #+AUTHOR: Me > #+EMAIL: no@one.com > #+DATE: 2010-01-18 > #+OPTIONS: H:4 num:t toc:nil > #+LaTeX_CLASS: article > > #+LaTeX_HEADER: \usepackage{xcolor} > #+LaTeX_HEADER: \usepackage{fancybox} > #+LaTeX_HEADER: \usepackage{tikz} > #+LaTeX_HEADER: \usetikzlibrary{shapes,calc} > #+LaTeX_HEADER: \newenvironment{etiket} {\fboxsep 10pt \begin{Sbox} > \begin{minipage}{\linewidth}} {\end{minipage}\end{Sbox} > \shadowbox{\TheSbox}} > #+LaTeX_HEADER: \newcommand{\rfill}{{\leavevmode \color{blue! > 80}\leaders \hrule height 0.7pt\hfill} \\} > #+LaTeX_HEADER: \newcommand{\rsh}{{\color{blue!80}\rule{0.7cm} > {0.7pt}}} > #+LaTeX_HEADER: \newcommand{\titlebox}[3]{\begin{tikzpicture}[every > text node part/.style={text centered}] \node[rectangle split, > rectangle split parts=2, rectangle split part fill={blue!50,white}, > line width=0.5mm, draw=blue, text width=#1, rounded corners](rs) {#2 > \nodepart{second} #3}; \end{tikzpicture}} > > > * Table in LaTeX environment > > #+BEGIN_etiket > Nombre y apellidos del estudiante: \rfill > Día(s) de la semana que tiene clase y de qué hora a qué hora: > | lunes | martes | miércoles | > jueves | > | de \rsh{} a \rsh{} | de \rsh{} a \rsh{} | de \rsh{} a \rsh{} | de > \rsh{} a \rsh{} | > #+END_etiket > > Here, you just see a nice result of mixing a table and a LaTeX > environment... Excellent!!! > > > * List items > > DECIR > - presentarse > - saludar > - despedirse > > Here, though, I can't get such *list items* framed, what ever > workaround I'm > trying to use. > > \titlebox{8cm}{DECIR}{ > - presentarse > - saludar > - despedirse > } > > #+LaTeX: \titlebox{8cm}{LEER}{ > - las instrucciones en clase > - algunos letreros públicos > #+LaTeX: } > > #+LaTeX: {}\titlebox{8cm}{ESCRIBIR}{ > - el nombre y apellido > - cuándo uno tiene clase (días de la semana) > - quién es el profesor > #+LaTeX: } > > #+LaTeX: {}\titlebox{8cm}{OBJETIVOS GRAMATICALES}{ > | - singular de SER y de LLAMARSE | > | - ¿Cómo? | > | - ¿Quién? | > #+LaTeX: } > > > * Other table > > Here, I'm trying to use the "accolades" workaround for allowing Org > to > interpret what will be inside LaTeX environments. > > #+LaTeX: {}\titlebox{8cm}{El presente (singular): Llamarse y ser.}{ > #+ATTR_LaTeX: align=p{4cm}p{4cm} > | *LLAMARSE* | *SER* | > | *Me llam\rsh{}* Isabel. | *\rsh{}* Isabel. | > | ¿Cómo *te llam\rsh{}?* | ¿Quién *eres*? | > | *Se llam\rsh{}* Ana. | *\rsh{}* Ana. | > #+LaTeX: } > > Though, it fails converting the above table to a LaTeX table. > > *Removing the ATTR LaTeX line* allows a conversion to a compilable > LaTeX > document, but, still, the table is not converted. For this last thing the following pretty bad work-around should work: #+ATTR_LaTeX: align=p{4cm}p{4cm} #+LaTeX: {}\titlebox{8cm}{El presente (singular): Llamarse y ser.}{ %} | *LLAMARSE* | *SER* | | *Me llam\rsh{}* Isabel. | *\rsh{}* Isabel. | | ¿Cómo *te llam\rsh{}?* | ¿Quién *eres*? | | *Se llam\rsh{}* Ana. | *\rsh{}* Ana. | #+LaTeX: } A better way would probably be to create an environment that makes the title box, so that the table is not an argument of a LaTeX macro (which Org-mode always protects). #+ATTR_LaTeX: align=p{4cm}p{4cm} #+LaTeX: {}\begin{mytitlebox}{8cm}{El presente (singular): Llamarse y ser.} | *LLAMARSE* | *SER* | | *Me llam\rsh{}* Isabel. | *\rsh{}* Isabel. | | ¿Cómo *te llam\rsh{}?* | ¿Quién *eres*? | | *Se llam\rsh{}* Ana. | *\rsh{}* Ana. | #+LaTeX: \end{mytitlebox} I do not know how to define such an environment, but I am sure that this is easy to do. The same should work with lists. HTH - Carsten