Las líneas de Tikz-qtree en la dirección correcta no son rectas con textos de varias líneas

Las líneas de Tikz-qtree en la dirección correcta no son rectas con textos de varias líneas

Tengo el siguiente documento de texto:

\documentclass[10pt]{article}
\ExpandArgs{c}\newcommand{new@fontshape}{anything}

\usepackage{linguex}
\usepackage[russian,indonesian]{babel}
\usepackage[none]{hyphenat}
\usepackage{geometry}
\usepackage{setspace}
\usepackage{amssymb}
\usepackage{booktabs}
\usepackage{tikz}
\usepackage{tikz-qtree}
\usepackage{gb4e}
\primebars
\let\emptyset\varnothing

\geometry{
 a4paper,
 total={170mm,257mm},
 left=20mm,
 top=20mm,
 }

\newcommand{\?}[1]{\foreignlanguage{russian}{#1}}

\begin{document}

\noindent {\LARGE \bf Uraian pohon sintaksis}\\

\begin{exe}

\ex{{\bf (RU)}
\tikzset{grow'=right}
\tikzset{every tree node/.style={align = left, anchor=base west}}
\tikzset{frontier/.style={distance from root=170pt}}
\tikzset{execute at begin node=\strut}
\Tree [.K [.FN {\?{\it Путин}\\ Putin} ] [.FV [.V {\?{\it опроверг}\\ membantah} ] [.FN [.FN [. N {\?{\it дискриминацию}\\ diskriminasi\textsc{.aku}} ] [.N {\?{\it геев}\\ gay\textsc{.jam.gen}} ] ] [.FV [.P {\?{\it в}\\ di} ] [.N\textsc{.part} {\?{\it России}\\ Rusia\textsc{.prep}} ] ] ] ] ] }

\end{exe}

\end{document}

Con la siguiente composición tipográfica: ingrese la descripción de la imagen aquí

Todo salió bien hasta que las líneas se encontraron con palabras de varias líneas. ¿Cómo puedo mejorar mi documento para que las palabras se distribuyan equitativamente y las líneas queden todas rectas?

Quiero que las líneas sean rectas así: ingrese la descripción de la imagen aquí

Probé \tikzset{sibling distance=18pt}el argumento, pero simplemente hizo que la distancia fuera mayor, no hizo que las líneas fueran rectas:

ingrese la descripción de la imagen aquí

Respuesta1

[EditarVea tikz-qtreela solución a continuación. Pero forestes más flexible.]

En forest, es fácil formatear el árbol según su voluntad. Por si sirve de algo, aquí tienes una forestsolución. Tenga en cuenta que, en mi máquina, su código usa mffuentes en lugar de un formato escalable, que probablemente no sea lo que desea, pero puede ser una función de minimizar el ejemplo. He minimizado aún más el código para los propósitos de esta pregunta.

La sintaxis no es diferente a qtree/ tikz-qtree, pero no hay puntos y los elementos secundarios necesitan corchetes incluso en ausencia de bifurcaciones.

\documentclass[border=10pt,10pt]{standalone}

\usepackage[russian,indonesian]{babel}
\usepackage[linguistics]{forest}
\newcommand{\?}[1]{\foreignlanguage{russian}{#1}}

\begin{document}
\begin{forest}
  for tree={%
    grow=0,
    anchor=base west,
  },
  where n children=0{%
    tier=terminus,
    calign with current edge,
    align=left,
  }{%
    font=\scshape,
  },
  [K
    [FV
      [FN
        [FV
          [P [\?{\itshape в}\\ di] ]
          [N.part [\?{\itshape России}\\ Rusia\textsc{.prep}] ]
        ]
        [FN
          [N [\?{\itshape геев}\\ gay\textsc{.jam.gen}] ]
          [N [\?{\itshape дискриминацию}\\ diskriminasi\textsc{.aku}] ]
        ]
      ]
      [V [\?{\itshape опроверг}\\membantah] ]
    ]
    [FN [\?{\itshape Путин}\\ Putin ] ]
  ]
\end{forest}
\end{document}

También actualicé comandos de fuentes obsoletos.

No publicaré una imagen porque un error en la última versión de Okular en X significa que todas mis imágenes se ven terribles, independientemente del resultado real, por lo que no tiene mucho sentido. Disculpas por la omisión.

EDITAR

Si desea utilizar tikz-qtree, configurar anchor=westen lugar de anchor=base westfunciona:

\documentclass[10pt]{article}

\usepackage{linguex}
\usepackage[russian,indonesian]{babel}
\usepackage{tikz-qtree}
\usepackage{gb4e}
\newcommand{\?}[1]{\foreignlanguage{russian}{#1}}

\begin{document}

\begin{exe}

\ex{{\bfseries (RU)}
  \tikzset{%
    grow'=right,
    every tree node/.style={anchor=west,align=left},
    frontier/.style={distance from root=170pt},
    execute at begin node=\strut,
  }
  \begin{tikzpicture}
    \Tree [.K [.FN {\?{\itshape Путин}\\ Putin} ] [.FV [.V {\?{\itshape опроверг}\\ membantah} ] [.FN [.FN [. N {\?{\itshape дискриминацию}\\ diskriminasi\textsc{.aku}} ] [.N {\?{\itshape геев}\\ gay\textsc{.jam.gen}} ] ] [.FV [.P {\?{\itshape в}\\ di} ] [.N\textsc{.part} {\?{\itshape России}\\ Rusia\textsc{.prep}} ] ] ] ] ] 
  \end{tikzpicture}%
}
\end{exe}

\end{document}

No sé por qué no pensé en esto en primer lugar...

información relacionada