\documentclass{article}
\usepackage{linguex}
\begin{document}
\ex. Some Example French sentence \hfill(French)\\
This is the gloss\\
`the interpretation'
\exg. Some Example French sentence \hfill(French)\\
This is the gloss\\
`the interpretation'
\end{document}
(Французский) в примере 2 должен быть смещен вправо, как и в первом примере.
Кажется, существует какой-то конфликт сексгкоманда. Любая помощь пожалуйста
решение1
Команда \exg
намного сложнее, чем \eg
, поскольку она анализирует текст, чтобы горизонтально выровнять слова двух строк.
Некоторые движки TeX (pdfTeX, LuaTeX, XeTeX) поддерживают функцию "savepos". Она позволяет записывать текущую позицию (единица измерения - sp) в .aux
файл для оценки при следующем запуске TeX.
В следующем примере эта функция используется вместе с zref
пакетом , который предоставляет более гибкую систему меток/ссылок, чем стандартная \label
/ \ref
.
\RequirePackage{ifluatex}
\ifluatex
\IfFileExists{luatex85.sty}{\RequirePackage{luatex85}}{}
\fi
\documentclass[twoside]{article}
\usepackage[
a6paper,
landscape,
vmargin=1cm,
includeheadfoot,
showframe, % for reviewing
]{geometry}
\usepackage{linguex}
\usepackage{zref-savepos}
\makeatletter
\zref@newprop*{PageValue}[1]{\the\c@page}%
% Counter
\newcount\eolpos@cnt
\eolpos@cnt=\z@
\newcommand*{\eolpos@label}{eolpos\the\eolpos@cnt}
\newcommand*{\eolpos}{}
\protected\def\eolpos#1{%
\leavevmode
\rlap{%
% Unique label names
\global\advance\eolpos@cnt\@ne
% Save the current horizontal position along
% with the value of the page counter
\zref@savepos
\zref@labelbyprops{\eolpos@label}{posx, PageValue}%
% Measure part
\sbox\z@{#1}%
\dimen@=\z@
\zifrefundefined{\eolpos@label}{%
}{%
\dimen@=\dimexpr
\expandafter\ifx\csname pdfhorigin\endcsname\relax
1in%
\else
\pdfhorigin
\fi
+%
\ifodd\zref@extractdefault{\eolpos@label}{PageValue}\@ne
\oddsidemargin
\else
\evensidemargin
\fi
+\textwidth
-\wd\z@
-\zref@extractdefault{\eolpos@label}{posx}{0}sp%
\relax
}%
% Set space
\ifdim\dimen@<\z@
\typeout{`eolpos` warning: Text sticks to the left by \the\dimen@}%
\fi
\kern\dimen@
% Place user text
\usebox\z@
}%
}
% \z@ = 0 or 0pt
% \@ne = 1
% \dimen@ = \dimen0
\makeatother
\begin{document}
\ex. Some Example French sentence \hfill(French)\\
This is the gloss\\
`the interpretation'
\exg. Some Example French sentence \eolpos{(French)}\\
This is the gloss\\
`the interpretation'
\newpage
\ex. Some Example French sentence \hfill(French)\\
This is the gloss\\
`the interpretation'
\exg. Some Example French sentence \eolpos{(French)}\\
This is the gloss\\
`the interpretation'
\end{document}
Страница 1:
Страница 2:
решение2
\hfill работает только натретья строкаиз примеров с глоссированием с linguex, что может быть вариантом для вас. В качестве альтернативы, Брайан Буккола предлагает обходной путь на своем сайтездесь.