你的代码如何工作?

你的代码如何工作?

警告:我才刚刚开始使用 LaTeX,没有编写这种“类似代码”的语言的经验。

我开始为我的学生制作棋盘游戏的卡片。在终于拿到一张卡片后,问题和答案都已修复,布局也还不错,但我陷入了困境。我不知道如何或在哪里(什么命令、什么行等)开始或创建新卡片并响应答案。

亲切的问候,

代码示例

\documentclass[a7paper,print,10pt,grid=rear]{kartei}
%Voor info googelen op 'LaTeX kartei'
%a7paper: bepaalt hoe groot de fiches worden.  a6-a7-a8-a9 zijn de opties
%grid: geeft aan of er snijlijnen moeten geprint worden.  
\usepackage[latin1]{inputenc}
\usepackage[dutch]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{icomma}

%\usepackage[version=3]{mhchem}%enkel nodig om chemische formules te kunnen gebruiken


%Om te zorgen dat het antwoord in het midden van de kaart komt te staan.  
\newcommand{\antwoord}[1]{
\vspace*{\fill}
\begin{center}
#1
\end{center}
\vspace*{\fill}
}

\newcommand{\vraag}[1]{#1}

\newcommand{\kaart}[2]{
\begin{karte}[Vraag]{\vraag{#1} }
\answer{Antwoord}

\antwoord{#2}

\end{karte}
}

\author{T. Dierckx}

\begin{document}

\kaart{Bereken:

$2^{5}\cdot 2^{2}=$}{$2^{7}=128$}

\end{document}}

答案1

要创建新卡,只需在文档中插入以下命令(即\begin{document}和之间\end{document})并相应地替换<question><answer>\kaart{<question>}{<answer>}
您需要为每张想要创建的卡调用此命令。

下面是第二张卡的示例(详细解释见下文):

\documentclass[a7paper,print,10pt,grid=rear]{kartei}
    %Voor info googelen op 'LaTeX kartei'
    %a7paper: bepaalt hoe groot de fiches worden.  a6-a7-a8-a9 zijn de opties
    %grid: geeft aan of er snijlijnen moeten geprint worden.  
    \usepackage[latin1]{inputenc}
    \usepackage[dutch]{babel}
    \usepackage{amsmath}
    \usepackage{amsfonts}
    \usepackage{amssymb}
    \usepackage{icomma}

    %Om te zorgen dat het antwoord in het midden van de kaart komt te staan.  
    \newcommand{\antwoord}[1]{
        \vspace*{\fill}
        \begin{center}
            #1
        \end{center}
        \vspace*{\fill}
    }

    \newcommand{\vraag}[1]{
        #1
    }

    \newcommand{\kaart}[2]{
        \begin{karte}[Vraag]
            \vraag{#1}
            \answer{Antwoord}
            \antwoord{#2}
        \end{karte}
    }

    \author{T. Dierckx}

\begin{document}
    \kaart{Bereken: $2^{5}\cdot 2^{2}=$}{$2^{7}=128$}
    \kaart{Bereken: $e^{i\pi}+1=\text{?}$}{$0$}
\end{document}

你的代码如何工作?

  • 首先,您要定义想要创建什么类型的文档/布局,并提供一些选项。LaTeX这样就会知道必须遵循哪些已实施的规则。

    \documentclass[a7paper,print,10pt,grid=rear]{kartei}
    
  • 然后,您加载一些所谓的包:它们实际上是使您能够使用新规则(即宏命令)并可以LaTeX为您设置一些设置的包。

    \usepackage[<eventually some options>]{<package-name>}
    
  • 然后定义自己的命令

    \newcommand{\<name-of-the-new-command}[<number-of-arguments]{<definition of what the command does>}
    
  • 最后,有了所有这些设置和信息,您就开始描述文档的内容。

    \begin{document}
        <content-of-your-document>
    \end{document}
    

该命令如何\kaart工作?

您已在序言中(从\documentclass到 的所有代码\begin{document})定义了一个名为 的命令\kaart。让我们看看它是如何工作的。

  • \newcommand{\kaart}:您创建了一个名为 的新命令\kaart!如果命令已经具有此名称,它将返回错误。
  • [2]:此命令有两个参数。因此,当您想使用此命令时,您必须写入\kaart{<first-argument>}{<second-argument>}
  • { <command-definition> }:命令的作用在这些花括号内定义。
    • \begin{karte}[Vraag]:它开始一个(先前在kartei.cls文件中定义的)kaarte以参数命名的环境Vraag。此环境将以\end{karte}. 结尾 - :然后使用一个参数\vraag{#1}调用该命令。意味着这个参数实际上是您作为 的参数给出的。\vraag{ <argument>}#1<first-argument>\kaart
    • \answer{Antwoord}:您使用\answer参数调用该命令Antwoorkd
    • \antwoord{#2}:您应该已经猜到了:您用一个参数调用命令(或函数或宏)\antwoord,也就是<second-argument>您在调用命令时给出的第二个参数\kaart

所以写作\kaart{<first-argument>}{<second-argument>}和写作是一样的

\begin{karte}[Vraag]
    \vraag{<first-argument>}
    \answer{Antwoord}
    \antwoord{<second-argument>}
\end{karte}

但它更短...并且您可以轻松地重复使用它!

因此,在您的文档中(即\begin{document}和之间),您可以像示例中那样\end{document}多次调用该命令。\kaart{<question>}{<answer>}

相关内容