Formato de brillo ExPex

Formato de brillo ExPex

Estoy usando los expexpaquetes para mis ejemplos de glosado y está funcionando muy bien, pero:

Quiero que mi \glaejemplo esté en formato de máquina de escribir ( \tt). Y luego quiero glosar solo algunas partes de mi ejemplo (el resto es irrelevante) pero cuando pongo \noglossel comando, el texto dentro vuelve al formato romano. Y lo que quiero es que toda la \glalínea esté en fuente de máquina de escribir.

Entonces este es mi ejemplo:

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{expex}
\newcommand{\pt}{\textsc{2sg.fam}~}
\begin{document}
\pex[labeltype=numeric,everygla=\tt]
\a
\begingl
\gla \nogloss{HEN :} \underline{t'as} encore besoin d'argent/ //
\glb \pt'avoir-\pt~ //
\endgl
\a
\begingl
\gla \nogloss{ANT : non j'ai rencontré quelqu'un que j'aime alors je voulais} \underline{te} la présenter //
\glb \pt~ //
\endgl
\a
\begingl
\gla \nogloss{HEN : ouais je vois oui encore une de} \underline{tes} mannequins sans cervelle//
\glb \pt~ //
\endgl
\xe
\end{document}

¿Cómo puedo hacer que LaTeX obedezca mis órdenes? jaja :) Bastante por favor

Respuesta1

Explicación

Tus órdenes están siendo obedecidas; es sólo que eso \nogloss{}no funciona como crees. El formato que especifique everyglano se aplica al material incluido \nogloss{}(aunque esto no se menciona explícitamente en la documentación). Esto se debe a que expexestá diseñado principalmente para usarse en glosados ​​interlineales donde se glosa cada palabra, por lo que el material suele \nogloss{}ser puntuación (p. ej., corchetes, elipses, etc.) o elementos silenciosos (p. ej., rastros, espacios en blanco, operadores, etc.) . Estos signos de puntuación y elementos silenciosos suelen tener un formato diferente al del texto normal: incluso si mantiene el formato de cursiva predeterminado de la glalínea, no querrá que un corchete etiquetado como [ NP esté en cursiva, por lo que \nogloss{}no presta atención a everygla.

Soluciones

Aquí hay tres soluciones para su caso.

Tenga en cuenta que eliminé el ~que tenía dentro y después de su \ptcomando porque agregaba espacios innecesarios. Siéntase libre de volver a agregarlo si realmente desea ese espacio. También cambié elobsoleto \ttto \ttfamily( expexa menudo usa comandos de fuentes obsoletos en sus valores predeterminados y documentación, pero no debería hacerlo).

Solución 1

Poner \ttfamilydentro \nogloss. Podrías imaginar que podrías definir un nuevo comando como \newcommand{\nogl}[1]{\nogloss{\ttfamily #1}}, pero desafortunadamenteno funciona poner \noglossdentro un nuevo comando.

ingrese la descripción de la imagen aquí

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{expex}
\newcommand{\pt}{\textsc{2sg.fam}}
\begin{document}

\pex[labeltype=numeric,everygla=\ttfamily]
\a
\begingl
\gla \nogloss{\ttfamily HEN : } \underline{t'as} encore besoin d'argent/ //
\glb \pt'avoir-\pt //
\endgl
\a
\begingl
\gla \nogloss{\ttfamily ANT : non j'ai rencontré quelqu'un que j'aime alors je voulais} \underline{te} la présenter //
\glb \pt //
\endgl
\a
\begingl
\gla \nogloss{\ttfamily HEN : ouais je vois oui encore une de} \underline{tes} mannequins sans cervelle//
\glb \pt //
\endgl
\xe

\end{document}

Solución 2

Rodea el material sin brillo {}y agrega {}la glblínea correspondiente. Así es como teníamos que hacer esto antes de que \nogloss{}estuviera disponible la expexversión 5.0. Consulte la discusión en la sección 9.2.3 de la documentación.

ingrese la descripción de la imagen aquí

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{expex}
\newcommand{\pt}{\textsc{2sg.fam}}
\begin{document}
\pex[labeltype=numeric,everygla=\ttfamily] % I changed the deprecated \tt to \ttfamily
\a
\begingl
\gla {HEN : } \underline{t'as} encore besoin d'argent/ //
\glb {} \pt'avoir-\pt //
\endgl
\a
\begingl
\gla {ANT : non j'ai rencontré quelqu'un que j'aime alors je voulais} \underline{te} la présenter //
\glb {} \pt //
\endgl
\a
\begingl
\gla {HEN : ouais je vois oui encore une de} \underline{tes} mannequins sans cervelle//
\glb {} \pt //
\endgl
\xe

\end{document}

Solución 3

Utilice el nuevo nlevelestilo de glosado (consulte la sección 10 de la documentación). Los []que corresponden a la glblínea son obligatorios (p. 44), pero no es necesario poner uno en cada palabra, sólo en cada glword. Así que puedes dividir tus líneas en tres glwords: la primera es todas las palabras antes de la palabra glosada, la segunda es la palabra glosada y la tercera son todas las palabras después de la palabra glosada.

ingrese la descripción de la imagen aquí

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{expex}
\newcommand{\pt}{\textsc{2sg.fam}}

\begin{document}

\pex[labeltype=numeric,glstyle=nlevel,glneveryline={\ttfamily}]
\a \begingl HEN :[] \underline{t'as}[\pt'avoir-\pt] encore besoin d'argent/[] \endgl % There are three sets of [], dividing the line into three glwords, only one of which is actually glossed.
\a \begingl ANT : non j'ai rencontré quelqu'un que j'aime alors je voulais[] \underline{te}[\pt] la présenter[] \endgl
\a \begingl HEN : ouais je vois oui encore une de[] \underline{tes}[\pt] mannequins sans cervelle[] \endgl
\xe
\end{document}

información relacionada