按照文档 (第 5 页) 中的描述,输入 \makehandout 应该可以提取 Linguex 中的例句。但对我来说,它不起作用。下面是一个最简单的例子:
\documentclass[12]{report}
\usepackage{linguex}
\usepackage{linguho}
\usepackage{xyling}
\usepackage{tikz}
\begin{document}
\title{My title}
\ex.\label{407}This is my test example
\makehandout
\end{document}
答案1
问题在于linguho
和之间的冲突tikz
。
该linguho
软件包将一些命令写入 .han 文件,然后\input
。问题是它写入
\setlength {\pgf@nodesepstart }{0pt}
\setlength {\pgf@nodesepend }{0pt}
到 .han 文件但不写入\makeatletter
并\makeatother
让 TeX 理解宏名称。
有两种可能的解决方案:
第一个,侵入性较小,加载tikz
前 linguho
。
第二个,与包顺序无关,是使用 patchlinguho
命令来添加\makeatletter
和\makeatother
:
\usepackage{etoolbox}
\patchcmd\makehandout
{\input\jobname.han}
{\makeatletter\input\jobname.han}
{}{}
\patchcmd\resetExdefaults
{\noexpand\resetExdefaults}
{\noexpand\resetExdefaults\noexpand\makeatother}
{}{}