Forest 패키지를 사용하여 일부 추상 구문 트리를 만드는 데 문제가 있습니다. 아래에서 알 수 있듯이 형제 간에는 그러한 간격이 필요하지 않음에도 불구하고 큰 간격이 있지만 문서에서 이 문제에 대한 내용을 찾을 수 없습니다.
아래에서 현재 트리를 어떻게 생성했는지 볼 수 있습니다. 이 게시물 하단에 제가 그린 그림과 같은 나무를 얻으려면 어떻게든 노드를 왼쪽으로 정렬해야 한다고 생각합니다.
\begin{forest}
for tree={
before typesetting nodes={content=\texttt{#1}}
}
[<regexp>, s sep=0pt
[(seq]
[<regexp>, edge={draw=none}
[(atom 1)]
]
[<regexp>), edge={draw=none}
[(seq]
[<regexp>, edge={draw=none}
[(atom 2)]
]
[<regexp>), edge={draw=none}
[(seq]
[<regexp>, edge={draw=none}
[(atom 3)]
]
[<regexp>), edge={draw=none}]
]
]
]
\end{forest}
이것이 내가 찾고 있지만 만들 수 없는 것입니다.
답변1
나는 당신에게 for tree
옵션 이 필요하다고 생각합니다 calign=first
. 즉
\documentclass{book}
\usepackage[linguistics]{forest}
\begin{document}
\begin{forest}
for tree={
before typesetting nodes={content=\texttt{#1},
calign=first}
}
[<regexp>, s sep=0pt
[(seq]
[<regexp>, edge={draw=none}
[(atom 1)]
]
[<regexp>), edge={draw=none}
[(seq]
[<regexp>, edge={draw=none}
[(atom 2)]
]
[<regexp>), edge={draw=none}
[(seq]
[<regexp>, edge={draw=none}
[(atom 3)]
]
[<regexp>), edge={draw=none}]
]
]
]
\end{forest}
\end{document}
출력: