What I understand so far, is that we would redefine commands in the .sty file and then use
those commands in the generated tex output.
For example instead of directly outputing "\begin{tabular}{l|ll}” for a table, we
would create own own and output "\begin{xwiki}{l|ll}”, with the definition of it in a
.sty file, with some default styles applied. This would then allow modifying just the .sty
file to control the output.
Seems great and exactly what I need. Still digging.
Also this page explains nicely the differences between LaTeX and PDF:
On 15 Feb 2018, at 07:25, Vincent Massol
<vincent(a)massol.net> wrote:
Hi Paul,
On 14 Feb 2018, at 23:14, Paul Libbrecht
<paul(a)hoplahup.net> wrote:
Hello Vincent,
having some experience with TeX I would implement CSS with macro-definitions… Every
element start would be a call to a macro that would check for rules that would apply to
its element, including passing parameters of their ancestry.
Could you give an example of what you mean by macro-definitions? Is this something that
exist in TeX?
However, I guess that your solution seems
probably more ad hoc and more practical.
Is there any reason that you don’t use the XSL-FO renderer that use LaTeX? I thought
there were several of them.
Do you have a pointer? As I said in my original mail I tried to search for an XHTML to
LaTeX converter/XSLT but couldn’t. If you know of one, I’ll gladly have a look.
Thanks a lot!
-Vincent
paul
On 14 Feb 2018, at 21:01, Vincent Massol wrote:
> Hi devs,
>
> I’m currently working on improving our TeX renderer (which is really a POC ATM), in
an effort to see if it could be used to generate nice PDF exports (you generate LaTeX and
then you convert to PDF).
>
> The main issue is that LaTeX doesn’t have any technology for applying style to it
(like CSS has for HTML). In addition I wasn’t able to find any good HTML+CSS to TeX
converter (as we have for PDFs with XSLT+FOP).
>
> So right now my idea is to implement some default behavior in the Tex Renderer (that
could be configured globally in xwiki.properties and/or in the Admin UI) and give the
ability to override specifically in the content.
>
> For example, imagine that you need to decide how to position table column content
(left, centered, right) or whether the rows and/or columns of your table have vertical and
horizontal lines (or other configs, autowrap, etc).
>
> The idea is that the Tex Renderer would support some custom tex-specific parameters.
For example:
>
> (% tex-table-spec=“c | c | c" tex-table-floating="true"
tex-table-caption="caption" %)
> |=A|=B
> (% tex-table-row-ending="\hline" %)|a|b
>
> (by default the table spec would be left aligned with vertical lines, and rows would
be separated by horizontal lines).
>
> If you have some comments or ideas, please let me know.
>
> Inventing a CSS-like mechanism would just be too hard to implement IMO.
>
> Thanks
> -Vincent
>
> PS: If you want to see table options in LaTeX, see
https://en.wikibooks.org/wiki/LaTeX/Tables