Linguex의 exg와 함께 \hfill을 사용하는 방법

Linguex의 exg와 함께 \hfill을 사용하는 방법
\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" 기능을 지원합니다. .aux다음 TeX 실행에서 평가할 파일 의 현재 위치(단위는 sp)를 기록할 수 있습니다 .

다음 예에서는 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:

페이지 1

2 쪽:

2 쪽

답변2

\hfill은 다음에서만 작동합니다.세 번째 줄귀하에게 선택 사항이 될 수 있는 linguex를 사용한 설명된 예제입니다. 또는 Brian Buccola의 웹사이트에 해결 방법이 있습니다.여기.

관련 정보