我正在尝试使用 forest-GP1,这是 Zivanovic 的 forest-package 中的一种风格(用于音位表示)在 github 上。
我已将该.sty
文件添加到与相关文件相同的目录中.tex
(我也尝试通过在中定义路径来链接到它\usepackage{/path/forest-GP1}
,但无论如何我最终得到了缺少 \begin{document}错误。
下面是我使用的代码:
\documentclass{article}
\usepackage{forest-GP1}
\begin{document}
\begin{forest} GP1 [
[O[x[f ] ][x[r ] ] ]
[R[N[x[o ] ] ][x[s ] ] ]
[O[x[t ] ] ]
[R[N[x ] ] ]
]\end{forest}
\end{document}
我在 TeXWorks 中使用 PDFLaTeX 排版(使用 MiKTeX)
答案1
原因是你错过了森林-GP1软件包,但未自动下载。您确定将其包含在正确的文件夹中吗?
你可以从github并将其包含在您的工作文件夹中森林-GP1.sty并且它会起作用。
\documentclass{article}
\usepackage{forest-GP1}
\begin{document}
\begin{forest} GP1 [
[O[x[f ] ][x[r ] ] ]
[R[N[x[o ] ] ][x[s ] ] ]
[O[x[t ] ] ]
[R[N[x ] ] ]
]\end{forest}
\end{document}
答案2
forest
您可以按照手册第 49 页所示定义样式:
\documentclass[tikz,border=5pt]{standalone}
\usepackage{forest}
\newbox\standardnodestrutbox
\setbox\standardnodestrutbox=\hbox to 0pt{\phantom{\forestOve{standard node}{content}}}
\def\standardnodestrut{\copy\standardnodestrutbox}
\forestset{% from page 49 of forest's manual
GP1/.style 2 args={
for n={1}{baseline},
s sep=0pt, l sep=0pt,
for descendants={
l sep=0pt, l={#1},
anchor=base,calign=first,child anchor=north,
inner xsep=1pt,inner ysep=2pt,outer sep=0pt,s sep=0pt,
},
delay={
if content={}{phantom}{for children={no edge}},
for tree={
if content={O}{tier=OR}{},
if content={R}{tier=OR}{},
if content={N}{tier=N}{},
if content={x}{
tier=x,content={$\times$},outer xsep={#2},
for tree={calign=center},
for descendants={content format={\standardnodestrut\forestoption{content}}},
before drawing tree={outer xsep=0pt,delay={typeset node}},
s sep=4pt
}{},
},
},
before drawing tree={where content={}{parent anchor=center,child anchor=center}{}},
},
GP1/.default={5ex}{8.0pt},
associate/.style={%
tikz+={\draw[densely dotted](!)--(!#1);}},
spread/.style={
before drawing tree={tikz+={\draw[dotted](!)--(!#1);}}},
govern/.style={
before drawing tree={tikz+={\draw[->](!)--(!#1);}}},
p-govern/.style={
before drawing tree={tikz+={\draw[->](.north) to[out=150,in=30] (!#1.north);}}},
no p-govern/.style={
before drawing tree={tikz+={\draw[->,loosely dashed](.north) to[out=150,in=30] (!#1.north);}}},
encircle/.style={before drawing tree={circle,draw,inner sep=0pt}},
fen/.style={pin={[font=\footnotesize,inner sep=1pt,pin edge=<-]10:\textsc{Fen}}},
el/.style={content=\textsc{\textbf{##1}}},
head/.style={content=\textsc{\textbf{\underline{##1}}}}
}
\begin{document}
\begin{forest} GP1 [
[O[x[f ] ][x[r ] ] ]
[R[N[x[o ] ] ][x[s ] ] ]
[O[x[t ] ] ]
[R[N[x ] ] ]
]\end{forest}
\end{document}