1/05/2007

Визуальный LaTeX - бывает и такое: LyX

Задача: есть желание пользоваться LaTeX, но хочется оставаться среди кнопочек, на которые можно тыкать - то есть хочется ЛаТеХовской мощи, но в WYSIWYG.
Решение: для этих целей есть LyX - визуальная латеховская оболочка.

Такое парадоксальное, на первый взгляд, решение будет полезно тем, кому необходимо набирать несложные технические отчёты без большого количества формул и сложных расположений рисунков.

Установка
Как всегда в Debian GNU/Linux, установка простая и быстрая - достаточно набрать apt-get install lyx и немножко подождать:

# apt-get install lyx
Чтение списков пакетов... Готово
Построение дерева зависимостей... Готово
Будут установлены следующие дополнительные пакеты:
groff latex-xft-fonts libtiff-tools lyx-common lyx-qt preview-latex-style
Настойчиво рекомендуемые пакеты:
libtiff-opengl chktex nowebm
Рекомендуемые пакеты:
psutils x-ttcidfont-conf kdeprint lpr konqueror www-browser sgmltools-lite
linuxdoc-tools wv
НОВЫЕ пакеты, которые будут установлены:
groff latex-xft-fonts libtiff-tools lyx lyx-common lyx-qt
preview-latex-style
обновлено 0, установлено 7 новых пакетов, для удаления отмечено 0 пакетов, и 153 пакетов не обновлено.
Необходимо скачать 0B/7508kB архивов.
После распаковки объем занятого дискового пространства возрастёт на 29,4MB.
Хотите продолжить? [Д/н]

Да, хотим, и через несколько секунд получаем настроенный и установленный LyX. Пришло время на него взглянуть.

Работа с LyX
После запуска lyx видим некоторое подобие обычного визуального процессора:

Чтобы начать работу с каким-нибудь ЛаТеХовским документом, его надо импортировать в lyx-формат, выбрав в меню "Файл" - "Импортировать из..." - "LaTeX".

Готово, документ импортирован и готов к работе. Представший перед вами документ будет сильно отличаться от того, к которому можно привыкнуть в Kile: тэги превращены в форматирование, их действие сразу же видно.
Впрочем, при первом запуске LyX может встретить вас жуткими шрифтами: по умолчанию он выбирает первые шрифты в списке TTF-шрифтов системы. Но это легко меняется в настройках

Ставим любимые шрифты и видим более приглядную картину. Не забудьте сохранить установки!

Отображение тэгов приводит к некоторому притормаживанию, особенно при быстрой прокрутке документа, что не удивительно: LyX приходится форматировать документ "на лету". Зато можно не изучать работы с текстом, формулами и графикой, а сразу заняться набором документов. Благо для этого есть хорошо проработанные инструменты и менюшки, в которых простым тыком мыши можно вставлять формулы, таблицы и рисунки.

Часть тэгов видна и помечена серым цветом - например, перенос с отступом \par или сноска \footnote. Текст сноски, например, виден только при двойном щелчке на ней.

Замечательно организована работа с рисунками: несколькими щелчками мыши можно вставить рисунок с параметрами, на освоение которых может уйти не один вечер вдумчивого чтения книг. Просто тыкаем в меню "Вставить" - "Изображение", указываем имя файла и параметры:

И всё - через мгновение рисунок будет вставлен и вы его увидите.

Да, конечно, зная тонкости ЛаТеХа, можно это делать быстрее или сооружать из рисунков более изощрённые конструкции, но когда нужно "просто вставить рисунок и забыть", LyX - то, что вы ищете.
Кроме всего прочего, можно видеть структуру текста в меню "Перейти":

Так что в LyX можно получить "удобство" визуального режима и мощь ЛаТеХа. Но только тогда, когда вам нужно быстро и не думая набрать несложный документ, без большого количества формул и рисунков.
Так же можно быстро просмотреть, как документ будет выглядеть на печати: для этого служит комбинация клавиш CTRL+D или пункт меню "Просмотреть" - "DVI", в результате чего запускается просмотрщик xdvi:

Однако не следует забывать, что настоящая мощь ЛаТеХа скрывается за визуальными рюшечками и бубенцами. Набор сложных математических формул и вставка сложных структур из рисунков (например, три рисунка в ряд с подписями), лёгкая работа с библиографией и таблицами, создание титульных листов профессионального уровня. Не говоря уже о наборе химических формул и нот - и всё это может LaTeX.


Ссылки и благодарности

Этот пост написан во многом благодаря обмену мнениями между мной и Сергеем Ивановским по поводу простого создания технической документации. Во многом визуальный подход к ЛаТеХу оправдан для людей, не желающих разбираться с тонкостями для получения хороших результатов при создании документации. Хотя лично я предпочитаю пользоваться Kile, о котором написано здесь, быть может, этот пост будет полезен начинающим ЛаТеХникам, которые только познают всю прелесть этого замечательного инструмента.

14 комментариев:

  1. Посмотрите еще на TeXmacs. Он, имхо, больше заточен именно под набор математических текстов.

    ОтветитьУдалить
  2. пробовал когда то lyx, запутался и не смог нормально работать :(

    а вот с Kile сразу и без проблем :)
    и ничего не сложно :P

    ОтветитьУдалить
  3. 2 portnov
    Посмотрите еще на TeXmacs.
    Как-то у меня ни с Emacs, ни с Vi, не сложилось. Зато полюбил Kate :-) Наверно, остатки испорченности GUIёвыми приблудами :-)

    Всё равно спасибо, буду знать.

    2 Ramaloke
    пробовал когда то lyx, запутался и не смог нормально работать :(
    Так это для людей, которые не хотят / не могут запомнить десяток тэгов. Ну и в ряде случаев lyx на самом деле проще.

    а вот с Kile сразу и без проблем
    Аналогично: сразу въехал и до сих пор в нём работаю. Но не всем это нужно.

    Кстати, а помимо Kile и lyx с TeXmacs-ом есть что-нибудь? В гноме ничего латеховского нет?

    ОтветитьУдалить
  4. для виндов: http://www.texniccenter.org/

    и http://www.xm1math.net/texmaker/
    crossplatform.

    gtk ничего не знаю, но если очень надо не должно быть проблемой настроит' что нибудь вроде scite

    ОтветитьУдалить
  5. Когда учился в универе и надо было набирать или верстать математические тексты я перепробовал LaTeX, plain-TeX, Word, PageMaker, QuarkX и потом OpenOffice. Как ни парадоксально, но быстрее всего у меня получилось набирать/верстать такие тексты в OpenOffice. С тех пор про TeX я вспоминать перестал ))

    ОтветитьУдалить
  6. Спасибо за наглядный экскурс по работе с LyX. Это, пожалуй, один из лидеров TeX based WYSIWYG для Linux.
    Но хотел бы предостеречь о возможных проблемах при одновременном использовании LyX и обычных редакторов для LaTeX: в силу специального формата LyX (не простой текст как в TeX). Интересно было бы услышать мнения об обратной конвертации LyX -> TeX (не будет ли при этом трудностей вроде MathType <-> LaTeX).

    ОтветитьУдалить
  7. Про себя скажу, что пробовал несколько лет назад LyX, когда только начинал интересоваться LaTeX.

    Как-то сразу он мне не поглянулся.

    Вообщем, нисколько не пожалел, что не стал полагаться на WYSIWYG - поневоле приходится "учить матчасть".

    А это в дальнейшем здорово помогает.

    ОтветитьУдалить
  8. Автору: всё же в debian sarge и старше рекомендуемый способ установки пакетов не apt-get, а aptitude

    Роману Логунову: LyX не WYSIWG (what you see is what you get). а WYMIWG (what you meen is what you get).

    ОтветитьУдалить
  9. 2 Ramaloke
    http://www.xm1math.net/texmaker/
    crossplatform.

    Посмотрел, понравилось. Спасибо.
    Только под Саржем не ставится, libstdc++.so.6 просит. Буду ставить в эмуляторе, в Этче.

    2 savagex
    Как ни парадоксально, но быстрее всего у меня получилось набирать/верстать такие тексты в OpenOffice.
    Бьюсь об заклад, что источников литературы было меньше десяти. Иначе вы просто удавитесь в опенофисе их все прописывать...

    2 y
    Спасибо за наглядный экскурс по работе с LyX. Это, пожалуй, один из лидеров TeX based WYSIWYG для Linux.
    Пожалуйста. LyX чуть ли не единственный визуальный латеховый редактор. Хотя мне больше нравится Kile.

    Но хотел бы предостеречь о возможных проблемах при одновременном использовании LyX и обычных редакторов для LaTeX: в силу специального формата LyX
    Собственно, в обзор это не входило, так как я LyX в повседневной жизни не использую :-)
    Но мысль интересная.

    2 Roman Lagunov
    Вообщем, нисколько не пожалел, что не стал полагаться на WYSIWYG - поневоле приходится "учить матчасть".
    В самом деле, весьма сомнительное дело, если вы собираетесь набирать сложные научные документы. Я вообще начинал с текстового редактора и xdvi :-) Потом в Kile перешёл.

    2 j2a
    Автору: всё же в debian sarge и старше рекомендуемый способ установки пакетов не apt-get, а aptitude
    ... который отличается от apt-get тем, что ставит мягкие зависимости. В остальном - обёртка для apt-get


    Спасибо уважаемым комментаторам за ценные мысли и замечания.

    ОтветитьУдалить
  10. "Бьюсь об заклад, что источников литературы было меньше десяти. Иначе вы просто удавитесь в опенофисе их все прописывать..."
    В MS Office наверное, а в OO для библиографии всё предусмотрено, возможно не на столько хорошо как в ЛаТеХ, но всё же есть.

    ОтветитьУдалить
  11. @ virens
    ... который отличается от apt-get тем, что ставит мягкие зависимости. В остальном - обёртка для apt-get
    А вот и нет. Еще Aptitude, в отличие от apt-get, различает пакеты, поставленные вручную и поставленные автоматически (которые кто-то потянул по зависимостям). И вот эти последние сносит как только они становятся не нужны. А установку "мягких зависимостей" можно и отключить.

    ОтветитьУдалить
  12. На самом деле, если немного вникнуть в сам LyX (с помощью хотя бы первого мануала), а не бросить его изучение где-то на стадии "научного тыка", то работа с ним превращается в удовольствие. Да, не спорю, не всё поддерживается, мудрёную разметку придется делать ручками с помощью прямых TeX вставок(то есть там, где функционала не хватает, всегда можно воспользоваться разметкой TeX напрямую).
    Ну а вот по поводу формул Вы скорее всего ошиблись, или снова же, не дошли. (ИМХО) когда пишешь в TeX формулу, очень легко ошибиться, особенно когда формула превращается в гроб размером в 300 символов, в котором встречается куча сумм, частных производных, разных скобок и т.д.(бывали у меня такие случаи). Это не значит, что всю формулу нужно набирать "как в ворде", используя лишь мат.панель. Даже наоборот, когда набираешь формулу "в лоб", то LyX сам по ходу набора преобразует Вашу формулу в вид, очень похожий на конечный результат(у LyX лишь редактор формул WYSIWYG, остальное - WYSIWYM). При этом вероятность сделать ошибко резко снижается, потому что Вы сразу видите, что набираете. Лично я, человек мало работающий с LaTeX, использую мат панель лишь если не знаю какого-нибудь символа, или же в случае, когда открывающая и закрывающая скобки разные (что, согласитесь, бывает сравнительно нечасто).

    Кстати, если Вам ещё интересен этот редактор, то хочу вас обрадовать: версия 1.5.1(я обновляю систему с ветки sid) намного опережает своего предшественника и в удобстве работы, и в интерфейсе.

    ОтветитьУдалить
  13. 2 Jolly Roger комментирует...
    На самом деле, если немного вникнуть в сам LyX (с помощью хотя бы первого мануала), а не бросить его изучение где-то на стадии "научного тыка"
    А я и не ставил таких целей. Он мне был интересен как подход, и я не вникал в тонкости. У меня другой подход: я использую Kile.

    Да, не спорю, не всё поддерживается, мудрёную разметку придется делать ручками
    Это и приходится делать, особенно с картинками и таблицами. Лично мне в таких случаях LyX мешает.

    Ну а вот по поводу формул Вы скорее всего ошиблись, или снова же, не дошли. (ИМХО) когда пишешь в TeX формулу, очень легко ошибиться
    ... если пишешь её неправильно :-)
    Формула не должна превращаться в "гроб" - нужно раскидывать её по строкам. И читать легче, и исправить. С таблицами точно так же, а тех, кто сваливает всё в кучу при оформлении таблиц, лучше бить по пальцам стальной линейкой :-)

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

    Этот пост исторически был написан для моих коллег по лаборатории, которым нужно лишь править мой латеховский код, не особо вникая в его хитросплетения.

    в случае, когда открывающая и закрывающая скобки разные (что, согласитесь, бывает сравнительно нечасто).
    Бывает постоянно, и поэтому части формул разносятся по отдельным строкам. Это намного проще.

    Кстати, если Вам ещё интересен этот редактор, то хочу вас обрадовать: версия 1.5.1(я обновляю систему с ветки sid) намного опережает своего предшественника и в удобстве работы, и в интерфейсе.
    У меня stable, и меня он всем устраивает. Но было бы интересно посмотреть, что в LyX нового. Может, напишете краткий обзор?

    Спасибо за такой развёрнутый комментарий.

    ОтветитьУдалить
  14. Лучше Kile пока что ничего не нашел ;)

    ОтветитьУдалить