возможно ли преобразовать тексты groff в latex, используя, например, pandoc?

возможно ли преобразовать тексты groff в latex, используя, например, pandoc?

С тех пор, как я узнал, что можно просто записывать уравнения на groffпростом английском языке с помощью макроса eqn, я хотел потратить время и изучить его. Время от времени я печатаю действительно серьезную математику LaTeX(имея в виду, что я провожу так много времени в этом бизнесе. С одной стороны, это принесло мне так много преимуществ, например: текстовые редакторы (s?ed|n?vim?); regex; ( vimscript| lua); tree-sitter, lspи snippets; это также привело меня в мир механических клавиатур и qmk/ via. И это только некоторые из вещей). С другой стороны, тот факт, что я был в поисках идеального рабочего процесса, сам по себе говорит о том, что эта задача отнимает очень много времени. Одна вещь, которую я усвоил за время своего путешествия, — никогда не прекращать затачивать эту пилу (во-первых, время, которое я трачу сейчас, значительно меньше по сравнению с тем, что я тратил 4 года назад, когда начал копать эту кроличью нору).

Мне нравится, что я могу определять макросы с помощью eqn, что аналогично определению моих собственных команд в LaTeX. Я также могу создавать таблицы, рисунки и оглавления, числовые уравнения, делать ссылки и цитаты. Остаются открытыми только два вопроса, чтобы я мог принять решение и окончательно перейти в eqn. Это:

  1. Как правильно отобразить сложные символы, например, \nabla, с помощью groffи eqn?
  2. В очень вероятном случае, если мне понадобится конвертировать мои исходники в LaTeX, есть ли какие-то стандартные инструменты? Может быть, pandocможно это сделать, но как?

PS Сначала я планировал разместить этот вопрос на , stackoverflowно, когда сайт увидел мои теги, он перенаправил меня на этот самый форум. Извините, если это не то место, где можно задать такой вопрос.

решение1

Ниже ответ на первый вопрос о Набла. На второй вопрос я не знаю ответа.

Набла — перевернутая греческая заглавная буква Дельта. Поэтому можно использоватьhttps://lists.gnu.org/archive/html/groff/2000-08/msg00068.html(из списка рассылки Groff, упомянутого в комментариях) для изменения знака дельта на противоположный, т. е. \[*D].

Обратите внимание, что вместо установки \v(вертикального положения) в Groff/eqn я использовал Postscript x y translateнапрямую, так как это не увеличивает ограничивающий прямоугольник - в оригинальном решении из списка рассылки высота символа состоит из полного поворота вокруг базовой линии, т. е. двух строк, что приводит к слишком большой дроби. Для других размеров (например, надстрочных индексов) вам может потребоваться скорректировать значения перевода.

Пример уравнения взят изhttps://tex.stackexchange.com/a/527873:

.ds Nabla "\h'\w'X'u'\X'ps: exec gsave currentpoint \
0 -6.5 translate 2 copy translate -180.0000 rotate neg exch neg exch \
translate'\[*D]\X'ps: exec grestore'\h'-\w'X'u'
.char \(Nb \*[Nabla]

.EQ
s = sqrt { { sum from i=1 to N ( x sub i - x bar ) sup 2 } over { \(Nb - 1 } }
.EN

Результат, скомпилированный с помощью groff -e example.tr > example.pdf:

введите описание изображения здесь

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