# Linguex: \makehandout doesn't work

Putting \makehandout is supposed to extract the example sentences in Linguex, as described in the documentation (page 5). It is not working for me. Here is an minimal example:

\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}

• What error do you get? I get a No \title given error, which disappears if I give a \title{...}. Mar 22, 2018 at 16:00
• I get this warning "You have requested package linguho', but the package provides lingo'." The compiler couldn't finish compiling in my case. I am using Xelatex. Could that make a difference? Mar 22, 2018 at 16:56
• A warning shouldn't make the compiler hang. Try to put \title{something} to see what happens. Mar 22, 2018 at 17:01
• You are right. For this test example, the problem is just the title. But, my problem is turn out to be more complicated. I think it is conflicting with other packages. I am getting errors like "Undefined control sequence. \setlength {\pgf@nodesepstart }{0pt}"; and "Package caption Error: \caption outside float. \setlength {\caption@indent }{0pt}". All these issue never happen when I disable Linguho package. I think I am giving up with it. Mar 22, 2018 at 17:30
• If your problem doesn't appear in the example code you gave us it'll be hard to solve. If you are still getting these errors, post a minimal working example that contains the commands you mentioned and that give this error. Mar 22, 2018 at 20:04

The problem is a clash between linguho and tikz.

The linguho package writes a few commands to a .han file, which is then \input. The issue is that it writes

\setlength {\pgf@nodesepstart }{0pt}
\setlength {\pgf@nodesepend }{0pt}


to the .han file but does not write \makeatletter and \makeatother to make TeX understand the macro names.

There are two possible solutions:

The first one, and less invasive, load tikz before linguho.

The second, independent of package order, is to patch linguho's commands to add \makeatletter and \makeatother:

\usepackage{etoolbox}
\patchcmd\makehandout
{\input\jobname.han}
{\makeatletter\input\jobname.han}
{}{}
\patchcmd\resetExdefaults
{\noexpand\resetExdefaults}
{\noexpand\resetExdefaults\noexpand\makeatother}
{}{}