Макет в две колонки с центральным полем для ссылок, а также сноски, в библейском стиле.

Макет в две колонки с центральным полем для ссылок, а также сноски, в библейском стиле.

(Обновление от 28 мая 2021 г.) Этопочтирешено. Если бы Дэвид Пёртон или кто-то другой мог помочь решить оставшиеся ДВЕ проблемы, это был бы полный ответ:

-- включить регулировку высоты полей и их вертикальных линий для учета различной высоты сносок

-- сохраняйте избыточные перекрестные ссылки на той же странице, добавляя их в сноски, вместо того, чтобы переносить их на следующую страницу

-- надстрочные буквы, связанные с перекрестными ссылками, показанными в ответе @DavidPurton, не нужны; нужны только номера стихов для ссылок


Я быДействительнохотел бы создать книгу с таким же макетом, который я вижу в Библии, изображенной ниже, с двумя колонками, центральным полем со справочными заметками, которые соответствуют пронумерованным стихам в этих колонках, и сноской внизу страницы произвольной длины, которая будет варьироваться по длине для каждой страницы в зависимости от объема ее содержимого. На некоторых страницах может вообще не быть сноски, на некоторых страницах может быть половина сноски и т. д. Центральное поле всегда должно быть одинаковой ширины независимо от содержимого (даже если оно пустое и оставлено незаполненным), и оно должно быть отделено вертикальными линиями, как на рисунке.

Библия в две колонки с перекрестными ссылками по центру между ними

Обратите внимание, что ссылки на центральном поле идут в том же порядке, что и стихи из Библии, но не привязаны к своим стихам в том же вертикальном положении. Другими словами, корректировка переноса выполняется для них на постраничной основе. Ниже нижней части правой колонки на этом изображении размещены некоторые дополнительные заметки по центральному полю: Их можно было бы перенести таким же образом или переместить в сноску. Для своих целей я также согласен, чтобы любые выступы из центрального поля, подобные этим, были вырезаны, или чтобы содержимое колонок соответствовало ему (и чтобы оно было разделено).

Будет ли эта компоновка возможна с любым из доступных в настоящее время пакетов? Если нет, что нужно сделать, чтобы это стало возможным, например, где я могу узнать, как создать пакет для LaTeX?

Для справки, аналогичный вопрос был задан пару лет назад, и было предоставлено частичное решение:

Двухколоночный документ с аннотациями между колонками

Однако это все еще не обеспечивало фактического центрального столбца для ссылок, оно просто раздвигало столбцы и помещало ссылки рядом с ними в это пространство. Это означает, что ссылки из каждого столбца могли бы конфликтовать и потребовало бы ручного разнесения — просто неприемлемое решение. Кроме того, не было предусмотрено никаких вертикальных линий, чтобы отделить центральный столбец.

ПРИМЕЧАНИЕ: Любое предоставленное решение должно быть совместимо с polyglossiaпакетом и форматом, поскольку это будет многоязычный документ, включая азиатскую письменность, которая обычно не имеет пробелов для разделения слов. Кроме того, fancyhdrэто добавит дополнительный уровень сложности к макету. Надеюсь, все это не окажется несбыточной мечтой.

Обновление (2 апреля 2020 г.): Поскольку ответ, размещенный ниже, указывает на несколько недостатков в используемом методе, нашел ли кто-нибудь способ их решить? Очевидно, что сноски должны увеличиваться или уменьшаться, чтобы соответствовать требованиям на постраничной основе, а на некоторых страницах они вообще не нужны, и высота текста для колонок должна соответственно давать пространство. Центральное поле также должно быть более гибким, и идеальным является решение, показанное на фотографии.

Обновление (27 апреля 2021 г.): Я все еще ищу решение, чтобы включить как центральный столбец для перекрестных ссылок, так и область сносок для дополнительных примечаний. Если это облегчит проект, каждая страница может состоять из трех столбцов, состоящих из (1) оригинального текста Библии, (2) перекрестных ссылок для этого текста и (3) перевода текста на другой язык. В этом сценарии и центральный, и правый столбцы будут поддерживать выравнивание с левым столбцом, в стиле таблицы, что может значительно упростить ситуацию.

решение1

Вот моя (частичная) попытка.

Я использовал memoirкласс, который поддерживает как боковые панели, так и боковые сноски. Я обнаружил, что боковую панель немного проще настроить для таких вещей, поэтому я использовал ее вместо более очевидной боковой сноски.

Вся сложная работа выполняется кодом expl3, который отслеживает номера стихов и перекрестных ссылок и добавляет данные на боковую панель.

К сожалению, в настоящее время он не регулирует высоту боковой панели и вертикальных линий с учетом изменения высоты текста обычных сносок :(. Боковая панель также перетекает на следующую страницу, а не доходит до нижней части второго столбца.

Я посмотрю, смогу ли я это исправить, но там, где я нахожусь, уже поздно. Или, может быть, кто-то другой предложит лучшее решение.

\documentclass{memoir}

\usepackage{xparse}
\usepackage{microtype}
\usepackage{lettrine}
\usepackage{eso-pic}
\usepackage{multicol}

% set up ordinary footnotes
\makeatletter
\def\footnoterule{\kern-3\p@
  \hrule \@width \textwidth \kern 2.6\p@}
\makeatother
\renewcommand\thefootnote{\textit{\arabic{footnote}}}

% code to create chapters, verses, and cross references
\ExplSyntaxOn

\int_new:N \crossref_int
\int_new:N \vs_int
\tl_new:N \crossref_tl

% insert a cross reference
\NewDocumentCommand {\crossref} {m}
  {
    \int_compare:nNnT { \crossref_int } > { 25 }
      {
        \int_set:Nn \crossref_int { 0 }
      }
    \int_incr:N \crossref_int
    \textsuperscript{ \emph { \int_to_alph:n { \crossref_int } } }
    \tl_if_empty:NF \crossref_tl
      {
        \tl_gput_right:Nn \crossref_tl { ~ }
      }
    \tl_gput_right:Nx \crossref_tl
      {
        \exp_not:N \textsuperscript
          {
            \exp_not:N \emph { \int_to_alph:n { \crossref_int } }
          }
        \, #1
      }
  }

% insert chapter marker
\NewDocumentCommand {\ch} {m}
  {
    \int_gset:Nn \vs_int {1}
    \lettrine [findent=0.5em,nindent=0em] { #1 } {}
  }

% output cross references from previous verse and insert verse marker
\NewDocumentCommand {\vs} {m}
  {
    \tl_if_empty:NF \crossref_tl
      {
        \sidebar
          {
            \textbf { \int_use:N \vs_int } \, \tl_use:N \crossref_tl
          }
      }
    \int_gset:Nn \vs_int { #1 }
    \tl_gclear:N \crossref_tl
    \textsuperscript { #1 \, }
  }

% output any remaining cross references
\AtEndDocument
  {
    \tl_if_empty:NF \crossref_tl
      {
        \sidebar
          {
            \textbf { \int_use:N \vs_int } \, \tl_use:N \crossref_tl
          }
      }
  }

\ExplSyntaxOff

% set up centre column location and size
\setlength\columnsep{2.5cm}
\setlength{\sidebarhsep}{\dimexpr -0.5\textwidth - 0.5\columnsep + 2mm}
\setlength{\sidebarwidth}{\dimexpr \columnsep - 4mm}
\renewcommand{\sidebarfont}{\footnotesize\normalfont}
\renewcommand*{\sidebarform}{\raggedright\hangindent 1mm}
\setlength{\sidebarvsep}{0ex}
\setsidebarheight{\dimexpr \textheight - 1ex}

% add vertical lines
\AddToShipoutPictureBG{%
  \AtTextUpperLeft{%
      \hskip \dimexpr 0.5\textwidth - 0.5\columnsep + 1mm
      \vrule depth \dimexpr \textheight - \ht\strutbox - 1pt
      \hskip \dimexpr\columnsep - 2mm
      \vrule depth \dimexpr \textheight - \ht\strutbox - 1pt}}

\begin{document}

\begin{multicols}{2}
  \ch{1}\crossref{Gen.\ 1:1; [Col.\ 1:17; 1 John 1:1; Rev. 1:4, 8, 17; 3:14;
  21:6; 22:13]}In the beginning was \crossref{Rev.\ 19:13; [Heb.\ 4:12; 1 John
  1:1]}the Word, and \crossref{1 John 1:2; [ch.\ 17:5]}the Word was with God,
  and \crossref{Phil.\ 2:6}the Word was God. \vs{2}He was in the beginning
  with God. \vs{3}\crossref{ver.\ 10; Ps.\ 33:6; 1 Cor.\ 8:6; Col.\ 1:16;
  Heb.\ 1:2}All things were made through him, and without him was not any
  thing made that was made. \vs{4}\crossref{ch.\ 5:26; 11:25; 1 John 1:2;
  5:11}In him was life,\footnote{Or \emph{was not any thing made. That which
  has been made was life in him}} and \crossref{ch.\ 8:12; 9:5; 12:46}the life
  was the light of men.  \vs{5}\crossref{[ch.\ 3:19]}The light shines in the
  darkness, and the darkness has not overcome it.
\end{multicols}

\end{document}

Выход МВЭ

Связанный контент