我无法在个人环境中插入 markdown 环境

我无法在个人环境中插入 markdown 环境

我正在使用paracol(cf这个问题)。

使用该包定义个人环境时,我遇到了另一个问题markdown。这是一个可以正常工作且性能符合我要求的 MWE。

\documentclass{article}

\usepackage[footnotes,definitionLists,hashEnumerators,smartEllipses,tightLists=false,hybrid]{markdown}

\usepackage{paracol}
\setcolumnwidth{3cm, 7cm}
\setlength{\columnsep}{3em}


\newenvironment{recipe}[1]{%
    \section{#1}
    \begin{paracol}{2}
}{%
    \end{paracol}
}


\newenvironment{ingredients}{%
    \subsection{Ingrédients}
}{%
}

\newenvironment{preparation}{%
    \switchcolumn
    \subsection{Préparation}
}{%
}

\begin{document}

\begin{recipe}{Lipsum bis}

\begin{ingredients}
\begin{markdown}

#### Pâte

- 150 g de farine normale (type 55)
- 450 g de farine de seigle
- 400 g de miel
- 125 g de lait
- 3 gros \oe{}ufs (150 g d'\oe{}uf)
- 250 g de sucre
- 40 g de levure chimique
- 125 g de crème fraîche
- 125 g de fécule de pomme de terre

#### Epices

- 3 gr de gingembre
- 8 gr de cannelle
- 1 gr de muscade
- Sel

\end{markdown}
\end{ingredients}


\begin{preparation}
\begin{markdown}

#### Pâte

#. Faites chauffer le miel et le sucre 70 dC.
#. Rajouter le lait, la crème, \oe{}ufs,
#. Rajouter les farines, flocons
#. Mettre ensuite épices et poudre à lever
#. La pâte doit être très molle, la mettre au frigidaire 4 à 5 heures, ou mieux toute la nuit au réfrigérateur.
#. La sortir au fur et à mesure que l'on en a besoin, elle peut rester 4 à 5 jours au réfrigérateur sans y toucher, conservation du pain d'épice cuit dans une boîte hermétique jusqu'à 1 mois.
#. Ne pas étendre la pâte trop fine 4 à 5 mm, ne pas mettre trop de farine pour que la pâte après cuisson ne soit trop dure.
#. Faire cuire à 200dC pendant 5 à 10 mn, puis les sortir du four.

#### Glaçage

#. Si on veut les glacer, mettre 1/4 d'eau par rapport au sucre glace, c'est-à-dire 100 g de sucre glace avec 25 g d'eau ou du jus de fruit (à l'orange,...) et remettre au four 30 secondes (compter 30 sinon ça fait des bulles et ce n'est pas beau).
#. Si on veut dessiner dessus après glaçage, mettre autant de sucre que de chocolat en poudre (faire consistance pâte à dentifrice), ou sinon tout simplement faire fondre que du chocolat noir au bain-marie (c'est ce que fait Monsieur Sbaï) et c'est tout pour la pâte.
#. Pour faire des dessins dessus, couper une feuille sulfu en triangle et l'enrouler pour que cela fasse un cornet, mettre la préparation au chocolat dedans, couper le bout pas trop gros, pour que le chocolat sorte,  et appuyer tout en haut du cornet pas au centre pour que l'on puisse écrire avec. On peut faire pareil pour écrire sur un gâteau.

\end{markdown}
\end{preparation}

\end{recipe}

\end{document}

markdown这与我自己的环境ingredientspreparation环境内部的环境相同。

\documentclass{article}

\usepackage[footnotes,definitionLists,hashEnumerators,smartEllipses,tightLists=false,hybrid]{markdown}

\usepackage{paracol}
\setcolumnwidth{3cm, 7cm}
\setlength{\columnsep}{3em}


\newenvironment{recipe}[1]{%
    \section{#1}
    \begin{paracol}{2}
}{%
    \end{paracol}
}


\newenvironment{ingredients}{%
    \subsection{Ingrédients}
    \begin{markdown}
}{%
    \end{markdown}
}

\newenvironment{preparation}{%
    \switchcolumn
    \subsection{Préparation}
    \begin{markdown}
}{%
    \end{markdown}
}

\begin{document}

\begin{recipe}{Lipsum bis}

\begin{ingredients}

#### Pâte

- 150 g de farine normale (type 55)
- 450 g de farine de seigle
- 400 g de miel
- 125 g de lait
- 3 gros \oe{}ufs (150 g d'\oe{}uf)
- 250 g de sucre
- 40 g de levure chimique
- 125 g de crème fraîche
- 125 g de fécule de pomme de terre

#### Epices

- 3 gr de gingembre
- 8 gr de cannelle
- 1 gr de muscade
- Sel

\end{ingredients}


\begin{preparation}

#### Pâte

#. Faites chauffer le miel et le sucre 70 dC.
#. Rajouter le lait, la crème, \oe{}ufs,
#. Rajouter les farines, flocons
#. Mettre ensuite épices et poudre à lever
#. La pâte doit être très molle, la mettre au frigidaire 4 à 5 heures, ou mieux toute la nuit au réfrigérateur.
#. La sortir au fur et à mesure que l'on en a besoin, elle peut rester 4 à 5 jours au réfrigérateur sans y toucher, conservation du pain d'épice cuit dans une boîte hermétique jusqu'à 1 mois.
#. Ne pas étendre la pâte trop fine 4 à 5 mm, ne pas mettre trop de farine pour que la pâte après cuisson ne soit trop dure.
#. Faire cuire à 200dC pendant 5 à 10 mn, puis les sortir du four.

#### Glaçage

#. Si on veut les glacer, mettre 1/4 d'eau par rapport au sucre glace, c'est-à-dire 100 g de sucre glace avec 25 g d'eau ou du jus de fruit (à l'orange,...) et remettre au four 30 secondes (compter 30 sinon ça fait des bulles et ce n'est pas beau).
#. Si on veut dessiner dessus après glaçage, mettre autant de sucre que de chocolat en poudre (faire consistance pâte à dentifrice), ou sinon tout simplement faire fondre que du chocolat noir au bain-marie (c'est ce que fait Monsieur Sbaï) et c'est tout pour la pâte.
#. Pour faire des dessins dessus, couper une feuille sulfu en triangle et l'enrouler pour que cela fasse un cornet, mettre la préparation au chocolat dedans, couper le bout pas trop gros, pour que le chocolat sorte,  et appuyer tout en haut du cornet pas au centre pour que l'on puisse écrire avec. On peut faire pareil pour écrire sur un gâteau.

\end{preparation}

\end{recipe}

\end{document}

这给了我一个错误,看起来像

Runaway argument?
! File ended while scanning use of ^^M.
<inserted text> 
                \par 

我无法理解这个错误。顺便说一句,当我没有使用 markdown 并且将 放在 的\switchcolumn末尾时,我也遇到了类似的错误ingredients

最后,如果你们中的一些人遇到同样的问题,如何在#### Glaçage用户不输入的情况下恢复枚举列表\begin{enumerate}[resume]

答案1

定义其环境的方式markdown不允许使用它们来定义新的环境。

然而,人们可以扩展该包以便能够定义新markdown的环境。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}

\usepackage[
  footnotes,
  definitionLists,
  hashEnumerators,
  smartEllipses,
  tightLists=false,
  hybrid
]{markdown}

\usepackage{paracol}
\setcolumnwidth{3cm, 7cm}
\setlength{\columnsep}{3em}

\newenvironment{recipe}[1]{%
    \section{#1}
    \begin{paracol}{2}
}{%
    \end{paracol}
}

\makeatletter
\begingroup
  \catcode`\|=0\catcode`\<=1\catcode`\>=2%
  \catcode`\\=12|catcode`|{=12|catcode`|}=12%
  |gdef|markdownReadAndConvert@#1#2<%
    |markdownReadAndConvert<\end{#1#2}>%
                           <|end<#1#2>>>%
|endgroup

\newenvironment{ingredients}{%
    \subsection{Ingrédients}%
    \markdownReadAndConvert@{ingredients}{}%
}{%
    \relax
}

\newenvironment{preparation}{%
    \switchcolumn
    \subsection{Préparation}
    \markdownReadAndConvert@{preparation}{}%
}{%
    \relax
}

\makeatother

\begin{document}

\begin{recipe}{Lipsum bis}

\begin{ingredients}

#### Pâte

- 150 g de farine normale (type 55)
- 450 g de farine de seigle
- 400 g de miel
- 125 g de lait
- 3 gros \oe{}ufs (150 g d'\oe{}uf)
- 250 g de sucre
- 40 g de levure chimique
- 125 g de crème fraîche
- 125 g de fécule de pomme de terre

#### Epices

- 3 gr de gingembre
- 8 gr de cannelle
- 1 gr de muscade
- Sel

\end{ingredients}


\begin{preparation}

#### Pâte

#. Faites chauffer le miel et le sucre 70 dC.
#. Rajouter le lait, la crème, \oe{}ufs,
#. Rajouter les farines, flocons
#. Mettre ensuite épices et poudre à lever
#. La pâte doit être très molle, la mettre au frigidaire 4 à 5 heures, ou mieux toute la nuit au réfrigérateur.
#. La sortir au fur et à mesure que l'on en a besoin, elle peut rester 4 à 5 jours au réfrigérateur sans y toucher, conservation du pain d'épice cuit dans une boîte hermétique jusqu'à 1 mois.
#. Ne pas étendre la pâte trop fine 4 à 5 mm, ne pas mettre trop de farine pour que la pâte après cuisson ne soit trop dure.
#. Faire cuire à 200dC pendant 5 à 10 mn, puis les sortir du four.

#### Glaçage

#. Si on veut les glacer, mettre 1/4 d'eau par rapport au sucre glace, c'est-à-dire 100 g de sucre glace avec 25 g d'eau ou du jus de fruit (à l'orange,...) et remettre au four 30 secondes (compter 30 sinon ça fait des bulles et ce n'est pas beau).
#. Si on veut dessiner dessus après glaçage, mettre autant de sucre que de chocolat en poudre (faire consistance pâte à dentifrice), ou sinon tout simplement faire fondre que du chocolat noir au bain-marie (c'est ce que fait Monsieur Sbaï) et c'est tout pour la pâte.
#. Pour faire des dessins dessus, couper une feuille sulfu en triangle et l'enrouler pour que cela fasse un cornet, mettre la préparation au chocolat dedans, couper le bout pas trop gros, pour que le chocolat sorte,  et appuyer tout en haut du cornet pas au centre pour que l'on puisse écrire avec. On peut faire pareil pour écrire sur un gâteau.

\end{preparation}

\end{recipe}

\end{document}

在此处输入图片描述

上述内容的抽象。为了举例,我对此进行了ingredients*类似的 定义,您可以简单地说markdown*

\newmarkdownenvironment{ingredients}{%
    \subsection{Ingrédients}%
}{}

并使用\begin{ingredients}\end{ingredients}

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}

\usepackage[
  footnotes,
  definitionLists,
  hashEnumerators,
  smartEllipses,
  tightLists=false,
  hybrid
]{markdown}

\usepackage{paracol}
\setcolumnwidth{3cm, 7cm}
\setlength{\columnsep}{3em}

%%% Extend markdown
\makeatletter
\begingroup
  \catcode`\|=0\catcode`\<=1\catcode`\>=2%
  \catcode`\\=12|catcode`|{=12|catcode`|}=12%
  |gdef|markdownReadAndConvert@#1#2<%
    |markdownReadAndConvert<\end{#1#2}>%
                           <|end<#1#2>>>%
|endgroup

\newcommand{\newmarkdownenvironment}{%
  \@ifstar\newmarkdown@senv\newmarkdown@env
}
\newcommand{\newmarkdown@env}[3]{%
  \newenvironment{#1}{#2\markdownReadAndConvert@{#1}{}}{#3}%
}
\newcommand{\newmarkdown@senv}[3]{%
  \newenvironment{#1*}[1]{#2\markdownSetup{##1}\markdownReadAndConvert@{#1}{*}}{#3}%
}
\makeatother

\newenvironment{recipe}[1]{%
    \section{#1}
    \begin{paracol}{2}
}{%
    \end{paracol}
}

\newmarkdownenvironment*{ingredients}{%
    \subsection{Ingrédients}%
}{}

\newmarkdownenvironment{preparation}{%
    \switchcolumn
    \subsection{Préparation}
}{}

\makeatother

\begin{document}

\begin{recipe}{Lipsum bis}

\begin{ingredients*}{}

#### Pâte

- 150 g de farine normale (type 55)
- 450 g de farine de seigle
- 400 g de miel
- 125 g de lait
- 3 gros \oe{}ufs (150 g d'\oe{}uf)
- 250 g de sucre
- 40 g de levure chimique
- 125 g de crème fraîche
- 125 g de fécule de pomme de terre

#### Epices

- 3 gr de gingembre
- 8 gr de cannelle
- 1 gr de muscade
- Sel

\end{ingredients*}


\begin{preparation}

#### Pâte

#. Faites chauffer le miel et le sucre 70 dC.
#. Rajouter le lait, la crème, \oe{}ufs,
#. Rajouter les farines, flocons
#. Mettre ensuite épices et poudre à lever
#. La pâte doit être très molle, la mettre au frigidaire 4 à 5 heures, ou mieux toute la nuit au réfrigérateur.
#. La sortir au fur et à mesure que l'on en a besoin, elle peut rester 4 à 5 jours au réfrigérateur sans y toucher, conservation du pain d'épice cuit dans une boîte hermétique jusqu'à 1 mois.
#. Ne pas étendre la pâte trop fine 4 à 5 mm, ne pas mettre trop de farine pour que la pâte après cuisson ne soit trop dure.
#. Faire cuire à 200dC pendant 5 à 10 mn, puis les sortir du four.

#### Glaçage

#. Si on veut les glacer, mettre 1/4 d'eau par rapport au sucre glace, c'est-à-dire 100 g de sucre glace avec 25 g d'eau ou du jus de fruit (à l'orange,...) et remettre au four 30 secondes (compter 30 sinon ça fait des bulles et ce n'est pas beau).
#. Si on veut dessiner dessus après glaçage, mettre autant de sucre que de chocolat en poudre (faire consistance pâte à dentifrice), ou sinon tout simplement faire fondre que du chocolat noir au bain-marie (c'est ce que fait Monsieur Sbaï) et c'est tout pour la pâte.
#. Pour faire des dessins dessus, couper une feuille sulfu en triangle et l'enrouler pour que cela fasse un cornet, mettre la préparation au chocolat dedans, couper le bout pas trop gros, pour que le chocolat sorte,  et appuyer tout en haut du cornet pas au centre pour que l'on puisse écrire avec. On peut faire pareil pour écrire sur un gâteau.

\end{preparation}

\end{recipe}

\end{document}

相关内容