Il n'y a pas que latex

Pour les plus chatouilleux, petit avertissement : je vais dire du mal de
LaTeX !

Pour des tas de raisons pratiques j’cris mes rapports de statistiques en
RMarkdow (du Markdown avec deu code R dedans) avec un export en LaTeX via
knitr (plus fignolage maison) au besoin.

J’ai donc essay de transfrer un topo crit avec Beamer sous RMarkdown
extension Xarigan.

J’ai abandonn (provisoirement ?). l’criture est simple, rapide, moins
tordue que LaTeX mais beaucoup plus limite. D’abord il faut connatre
Markdown, bien entendu (apprentissage en une heure environ) mais aussi CSS
voire du HTML. Ensuite, au total c’est moins souple que Beamer. Le
rsultat par dfaut est moche (tout est tass vers le haut de la diapo par
ex.).

Par contre la compilation est ultra-rapide, moins d’une seconde pour un
cours de 88 diapos avec des images etc. pour plus de 6 secondes avec
LualaTeX.

Donc terme…


Bien cordialement,
Dr Philippe MICHEL

----- Mail original -----

De: “Philippe MICHEL” xyz@xyz.tld
À: xyz@xyz.tld
Envoyé: Dimanche 25 Octobre 2020 22:45:30
Objet: [gut] Il n’y a pas que LaTeX

Pour les plus chatouilleux, petit avertissement : je vais dire du mal
de
LaTeX !

Pour des tas de raisons pratiques j’écris mes rapports de
statistiques en
RMarkdow (du Markdown avec deu code R dedans) avec un export en LaTeX
via
knitr (plus fignolage maison) au besoin.

J’ai donc essayé de transférer un topo écrit avec Beamer sous
RMarkdown
extension Xarigan.

J’ai abandonné (provisoirement ?). l’écriture est simple, rapide,
moins
tordue que LaTeX mais beaucoup plus limitée. D’abord il faut
connaître
Markdown, bien entendu (apprentissage en une heure environ) mais
aussi CSS
voire du HTML. Ensuite, au total c’est moins souple que Beamer. Le
résultat par défaut est moche (tout est tassé vers le haut de la
diapo par
ex.).

Par contre la compilation est ultra-rapide, moins d’une seconde pour
un
cours de 88 diapos avec des images etc. pour plus de 6 secondes avec
LualaTeX.

Donc à terme…

bonjour,

et si c’était possible de passer par pandoc et de faire une sortie pour
Beamer ?

merci

@+
Bernard

Bonsoir,

Peut-être un compromis : plus simple que LaTeX, plus riche que Markdown,
sans besoins de Html/CSS : le format AsciiDoc avec le compilateur AsciiDoctor.

En plus, peut même sortir du .docx (horresco referens mais parfois inévitable)
avec un petit coup de Pandoc.

Bonne composition !

Le dimanche 25 octobre 2020 Philippe MICHEL a écrit ceci :

Pour les plus chatouilleux, petit avertissement : je vais dire du mal de
LaTeX !

Pour des tas de raisons pratiques j’écris mes rapports de statistiques en
RMarkdow (du Markdown avec deu code R dedans) avec un export en LaTeX via
knitr (plus fignolage maison) au besoin.

J’ai donc essayé de transférer un topo écrit avec Beamer sous RMarkdown
extension Xarigan.

J’ai abandonné (provisoirement ?). l’écriture est simple, rapide, moins
tordue que LaTeX mais beaucoup plus limitée. D’abord il faut connaître
Markdown, bien entendu (apprentissage en une heure environ) mais aussi CSS
voire du HTML. Ensuite, au total c’est moins souple que Beamer. Le
résultat par défaut est moche (tout est tassé vers le haut de la diapo par
ex.).

Par contre la compilation est ultra-rapide, moins d’une seconde pour un
cours de 88 diapos avec des images etc. pour plus de 6 secondes avec
LualaTeX.

Donc à terme…


Bien cordialement,
Dr Philippe MICHEL


Laurent Bloch - https://laurentbloch.net - Walter Benjamin sur
Marcel Proust : « .. ses phrases sans rivages (ce Nil du langage
qui déborde ici, pour les fertiliser, sur les plaines de la vérité) .. »

Bonjour,

Ci-joint un exemple

Effectivement on peut exporter en Beamer sans problme. Donc crire le
plus gros en Markdown pour faire simple & rapide puis fignoler quelques
passages en laTeX ? Pourquoi pas. Mais comme toujours le code gnr est
lourd &e fini par passer du temps (inutile) simplifier tout a.


Bien cordialement,
Dr Philippe MICHEL

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,
Bonjour

Ci-joint un exemple

Ligne 5 il y a une } de trop dans l’instruction \ifthenelse

Qui ne marche pas ! Le .log juste après. Manifestement le traitement de
l’a’rgument optionnel de proposition avec ifthenelse interdit qu’on
passe pour argument une macro qui ferait elle-même un test avec
ifthenelse. Les deux premiers environnements proposition compilent très
bien ; mais dès qu’on ajoute le troisième : error !

J’imagine que c’est un scope de variable mal protégée ou quelque chose
dans le genre ; ce que je découvrirais peut-être en me plongeant dans le
code ; mais si quelqu’un à l’amabilité de me faire gagner du temps il
aura toute ma gratitude !

Et puis pour corser le tout je vais vous faire un autre exemple avec le
package Environ … OK peut-être que ça plus ifthen c’est vraiement
pousser le bouchon un peu loin !

Bien à vous

Hello

A priori cela fonctionne quand on ne met pas l’instruction $\Mat nC$
entre crochets dans la troisième ligne proposition.

Comme ça:

\begin{proposition}[test]
autre chose $\Mat nC$
\end{proposition}

++
Jacques

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,

Ci-joint un exemple

Qui ne marche pas ! Le .log juste après. Manifestement le traitement de
l’a’rgument optionnel de proposition avec ifthenelse interdit qu’on
passe pour argument une macro qui ferait elle-même un test avec
ifthenelse. Les deux premiers environnements proposition compilent très
bien ; mais dès qu’on ajoute le troisième : error !

J’imagine que c’est un scope de variable mal protégée ou quelque chose
dans le genre ; ce que je découvrirais peut-être en me plongeant dans le
code ; mais si quelqu’un à l’amabilité de me faire gagner du temps il
aura toute ma gratitude !

Et puis pour corser le tout je vais vous faire un autre exemple avec le
package Environ … OK peut-être que ça plus ifthen c’est vraiement
pousser le bouchon un peu loin !

Bien à vous

Re.

Jacques Abada xyz@xyz.tld writes:

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,
Bonjour

Ci-joint un exemple

Ligne 5 il y a une } de trop dans l’instruction \ifthenelse

Probablement pas parce que lorsque la macro est appelée ailleurs que
dans l’argument optionnel de proposition pas de souci ; et j’ai
toujours rédigé mes statement ifthenelse comme ça.

Voilà la suite :

Pardon, il y a encore des erreurs.

Le 05/11/2020 à 11:43, Jacques Abada a écrit :

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,
Bonjour

Ci-joint un exemple

Ligne 5 il y a une } de trop dans l’instruction \ifthenelse

Qui ne marche pas ! Le .log juste après. Manifestement le traitement de
l’a’rgument optionnel de proposition avec ifthenelse interdit qu’on
passe pour argument une macro qui ferait elle-même un test avec
ifthenelse. Les deux premiers environnements proposition compilent très
bien ; mais dès qu’on ajoute le troisième : error !

J’imagine que c’est un scope de variable mal protégée ou quelque chose
dans le genre ; ce que je découvrirais peut-être en me plongeant dans le
code ; mais si quelqu’un à l’amabilité de me faire gagner du temps il
aura toute ma gratitude !

Et puis pour corser le tout je vais vous faire un autre exemple avec le
package Environ … OK peut-être que ça plus ifthen c’est vraiement
pousser le bouchon un peu loin !

Bien à vous

Hello,

Jacques Abada xyz@xyz.tld writes:

Hello

A priori cela fonctionne quand on ne met pas l’instruction $\Mat nC$
entre crochets dans la troisième ligne proposition.

Comme ça:

\begin{proposition}[test]
autre chose $\Mat nC$
\end{proposition}

Et oui ça je le sais bien mais ça n’est pas ce que je veux ! Je veux
pouvoir passer une macro qui a un ifthenelse dans sa définition comme
argument optionel de la prop qui est lui-même traité par un ifthenelse

. En terme de mise en page l’argument optionel est un titre et je sais
bien que je peux passer ma macro dans le corps de la prop mais moi je
la veux dans le titre !

Amicalement

++
Jacques

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,

Ci-joint un exemple

Qui ne marche pas ! Le .log juste après. Manifestement le traitement de
l’a’rgument optionnel de proposition avec ifthenelse interdit qu’on
passe pour argument une macro qui ferait elle-même un test avec
ifthenelse. Les deux premiers environnements proposition compilent très
bien ; mais dès qu’on ajoute le troisième : error !

J’imagine que c’est un scope de variable mal protégée ou quelque chose
dans le genre ; ce que je découvrirais peut-être en me plongeant dans le
code ; mais si quelqu’un à l’amabilité de me faire gagner du temps il
aura toute ma gratitude !

Et puis pour corser le tout je vais vous faire un autre exemple avec le
package Environ … OK peut-être que ça plus ifthen c’est vraiement
pousser le bouchon un peu loin !

Bien à vous

Jacques Abada xyz@xyz.tld writes:

Pardon, il y a encore des erreurs.

J’en convient mais …

Le 05/11/2020 à 11:43, Jacques Abada a écrit :

Le 05/11/2020 à 10:46, Pierre L. Nageoire a écrit :

Bonjour,
Bonjour

Ci-joint un exemple

Ligne 5 il y a une } de trop dans l’instruction \ifthenelse

Qui ne marche pas ! Le .log juste après. Manifestement le traitement de
l’a’rgument optionnel de proposition avec ifthenelse interdit qu’on
passe pour argument une macro qui ferait elle-même un test avec
ifthenelse. Les deux premiers environnements proposition compilent très
bien ; mais dès qu’on ajoute le troisième : error !

J’imagine que c’est un scope de variable mal protégée ou quelque chose
dans le genre ; ce que je découvrirais peut-être en me plongeant dans le
code ; mais si quelqu’un à l’amabilité de me faire gagner du temps il
aura toute ma gratitude !

Et puis pour corser le tout je vais vous faire un autre exemple avec le
package Environ … OK peut-être que ça plus ifthen c’est vraiement
pousser le bouchon un peu loin !

Bien à vous

Bonjour,

Le jeudi 5 novembre 2020 à 16:39:23, Pierre L. Nageoire écrivit :

P> Et oui ça je le sais bien mais ça n’est pas ce que je veux ! Je veux
P> pouvoir passer une macro qui a un ifthenelse dans sa définition comme
P> argument optionel de la prop qui est lui-même traité par un ifthenelse

. En terme de mise en page l’argument optionel est un titre et je sais
P> bien que je peux passer ma macro dans le corps de la prop mais moi je
P> la veux dans le titre !

Alors pour faire ce genre de choses, sans rentrer dans les arcanes des
macros plus ou moins développables, il existe @ifempty d’amsart…

ça peut se copier et utiliser en dehors de cette classe, il suffit de
copier le code

\long\def@ifempty#1{@xifempty#1@@..@nil}
\long\def@xifempty#1#2@#3#4#5@nil{%
\ifx#3#4@xp@firstoftwo\else@xp@secondoftwo\fi}
\long\def@ifnotempty#1{@ifempty{#1}{}}

exercice intéressant : comprendre ce que fait ce code…

Th.

\documentclass[a4paper,12pt]{amsart}

\makeatletter
\newenvironment{proposition}[1]{%%
Proposition @ifnotempty{#1}{(\textbf{#1}) }—
}{}
\newcommand{\Mat}[2]{\operatorname{Mat}_{#1}@ifnotempty{#2}{(#2)}}

\makeatother
\begin{document}

\begin{proposition}
Anythihng $\Mat{2}R$
\end{proposition}

\begin{proposition}[More]
Something else
\end{proposition}

\begin{proposition}[$\Mat nC$]

\end{proposition}
\end{document}

Bonjour,

Merci à tous pour vos réponses. Contourner ifthen c’est peut-être une
bonne idée en définitive !

“Pierre L. Nageoire” xyz@xyz.tld writes:

Re.
Voilà la suite :

Ici ce qui est contenu dans \altverbose ne semble pas pris en compte si
on est dans l’environnement comment alors qu’il l’est parfaitement à
l’extérieur. Encore des ifthen emboîtés je suppose …

Et si on met le morceau de code i.e. toute la propr qui comence par
altverbose dans un fichier séparé qu’on apelle avec subimport tout va
bien ! Cherchez l’erreur ! Autrement dit subimport semble faire le job
de protéger les variables comme il se doit. Je crois avoir entendu ici
ou la que le package import n’est pas ce qu’il y a de plus sûr
… avec ifthen qui n’est pas très sûr non plus ça va finir par me
retomber sur le museau tout ça !

Pierre

Bien à vous

Le 05/11/20 à 17h36, Thierry Bouche a écrit :

Alors pour faire ce genre de choses, sans rentrer dans les arcanes des macros plus ou moins développables, il existe @ifempty d’amsart…

Il existe aussi le package ifmtarg.

Denis