Таинственная программа LyX. Часть 1

в 8:24, , рубрики: latex, lyx

Скопировано с моего блога в целях создания еще одного русскоязычного источника информации по данной теме.

О чем я буду рассказывать?

Эту серию статей будет писать человек, не очень разбирающийся в компьютерах для таких же людей. Я увлекаюсь математикой и с целью облегчения этого занятия, там, для приличной записи своих решений, доказательств, для облегчения расчетов и т. д. мне пришлось изучить несколько специальных программ. Первое время я для записи своих опусов в математике использовал Ворд. При этом мной явственно ощущалось неприспособленность этой прогры под эти цели. По этой причине я стал искать альтернативные пути решения этого вопроса. Так я наткнулся на $TeX$. Поначалу я не думал тратить на его изучение сколько-то значительного времени, считая его по возможностям где-то около надстройки Mathtype в Word'е. Однако, присмотревшись к $TeX$'у повнимательнее, я пришел к убеждению, что, хотя, с этим, конечно, многие не согласятся, но ничего лучше $TeX$'a для записи текста с математическим, вообще, с научным уклоном, нет. Да, отчасти меня тогда подтолкнуло отсутствие в Office возможности включения формул, набранных на $TeX$ (я знаю, что в Office 16 такая возможность появилась, про более ранние версии не знаю, но еще в Office 2003 такой возможности нет). Несмотря на то, что я в то время не знал, что такое TeX, если бы тогда такая возможность имелась, я бы об этом узнал и, кто знает, может быть, я бы не открыл для себя волшебный мир $TeX$'а.

Но даже после включения в Office поддержки $TeX$'а, Office даже близко не может рассматриваться как конкурент $TeX$'а. С другой стороны, у Ворд есть одно преимущество перед $TeX$ — возможность мгновенной правки текста, в частности, формул (опять-таки с многократным применением мышки — снова минус), но это преимущество превращается в ничто на фоне бесчисленных макросов $TeX$'а. Впрочем, это мое личное мнение. Лично я использую, пусть уже и устаревшую, но вполне работоспособную реализацию $TeX$'а — MiKTEX 2.9. Правда, я ни его, ни репозиторий, не обновлял с 2015 года, но пока не обнаружил какой-то ну уж совсем нерешаемой проблемы при использовании комплекта MiKTEX 2.9+репозиторий, скачанных тогда. О настройке программы MiKTEX я, во всяком случае пока, писать не буду, отсылая читателей настоящих заметок прочитать про это дело во все знающем Инете. Я, т. к. не знаю компьютерных примочек, терминов, буду объяснять на пальцах, при необходимости вставляя графику. Так вот, для взаимодействия пользователя с этим самым $TeX$ существует огромное число прогр: поставляемый в комплекте MiKTEX'а TeXworks, TeXmaker и т. п. И среди этих прогр есть программа LyX. Однако, почему-то русскоязычные пользователи $TeX$'a считают эту программу второсортной, ограничивающей возможности, открывающиеся юзеру, по сравнению с возможностями, открывающимися при использовании "настоящего редактора LaTeX". И потому информации по этой программе в Рунете, считай, нет. А зря. Я же отнесся к этой точки зрения с большим недоверием и потратил приличное время на изучение этой программы. В чем, на мой неискушенный взгляд, эта программа лучше других оболочек для$TeX$? Во-первых, при должной настройке, не нужно переключать клаву на англицкий язык для ввода формул и обратно для ввода текста. Да, для англоязычных пользователей $TeX$'a этой проблемы не существует, но для остальных пользователей она довольно-таки ощутима. Далее, пользователю не нужно заморачиваться с закрытием им же открытых до этого скобок. На первый взгляд, кажется некоторая ограниченность в наборе формул (неправильная интерпретация введенных в математическом режиме символов & и , невозможность вставки, например, rrr@{,}r|r в преамбулу окружения array), однако использование функций Буфер команд и Preview полностью решает эти проблемы. Далее, если у человека проблемы в письме ручкой на бумаге, то данная программа для него просто незаменима, даже при изучении школьного курса алгебры, геометрии, не говоря уже о изучении ВуЗовского курса точных, естественных наук, конечно, если у этого человека есть необходимая техника для использования этой программы, но это тема для другого не очень веселого разговора. Так, ну, по каким еще критериям сравнить? Добавление новых инструментов верстки, скажем, как в $TeX$works? Да, это возможно. Только что закончил возиться с изучением способа добавления инструментов для получения всех возникающих в процессе обработки конкретного файла LyX файлов непосредственно в одной папке с обрабатываемым файлом (задумано-то, что они возникают в специальной папке, указанной в Инструменты>Настройки>Пути Временный каталог, возился ради интереса) и для обработки файлов LyX, в которых есть коды графики asymptote тоже в одной папке с обрабатываемым файлом (а это уже довольно-таки полезный инструмент).

Последнее в том же TeXworks я вообще не смог сделать (у меня есть некоторый опыт написания и использования файлов .bat, так вот я не знаю, как передавать назначенному в качестве движка мной батнику созданному мной в TeXworks Инструменту верстки имя того открытого в настоящий момент в TeXworks файла .tex, который я хочу обработать этим самым инструментом). Обо всем этом я раcскажу в свое время. Хочу сказать, что мне не удалось обнаружить ничего такого, что я бы мог сделать в, повторюсь, "настоящем редакторе $LaTeX$" и не смог сделать в LyX. Впрочем, быть может, это вопрос скудости моей фантазии, не знаю, но я начну писать здесь про находки, сделанные мной в процессе этого изучения. А дальше посмотрим, о чем еще писать. Итак, не тратя лишнее время, начнем.

LyX: Настройка проверки орфографии

Вообще, озираясь на мой скромный опыт, у меня сложилось такое впечатление, что, когда начинаешь использовать комп шире, чем просмотр на нем фильмов или использования Word'а, с использованием даже небольшого количества программирования, как правило, удобно, чтобы расширения файлов отображались после имени файлов. Как это сделать, рассказано, например, вот здесь. Я не буду в 1001 раз описывать то, чему в Инете посвящено сотни ссылок. Итак, вернемся к заявленной теме повествования. Программа LyX для проверки орфографии использует файлы с расширением .aff и .dic. Честно говоря, я на днях попробовал изготовить эти файлы вручную, как в первый раз, а именно: скопировал в папке C:Program FilesLyX 2.0Resourcesdicts первые попавшиеся на глаза файлы с расширением .aff и .dic, вставил в ту же папку, открыл их, удалил в них все строки, переименовал эти файлы на ru_Ru. Вот тут нажал на ru_Ru.aff, выделил там строки

1 SET KOI8-R
.......................
1632 SFX A 0 Á ÉÎ

Причем выделять я начал, находясь мышкой не в строке с номером 1, а, находясь мышкой в одной строке с

blame

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

image

, причем, начинать выделение надо было, находясь в одном столбце с SET KOI8-R, слева от этого набора букв, а заканчивать выделение надо было, находясь в одном столбце с SFX A 0 Á ÉÎ, справа от этого набора букв), опять скопировал (Word я использовал, чтобы убрать номера строк) и только потом вставил в ранее изготовленный мной пустой файл ru_Ru.aff, закрыл с сохранением. Точно также я изготовил файл ru_Ru.dic (код брал отсюда). но ничего почему-то не получилось. Поэтому я выложу нужные файлы, изготовленные мной в 15-ом году описанным выше способом, в упомянутый мной первый раз, со своего компа. Вот они. Итак, скачиваем этот архив, распаковываем его, помещаем находящиеся там файлы ru_Ru.aff и ru_Ru.dic в упомянутую выше папку. В Документ>Настройки>Язык там, где стоит слово Язык:, нажимаю на треугольничек, выбираю левой кнопкой мыши пункт Русский. (как правило, значение переключателя Кодировка оставляешь По умолчанию для языка:

image

, но иногда все-таки оказывается полезным выбрать кодировку вручную. Для этого переключатель Кодировка переключаем с По умолчанию для языка на Другой (просто щелкнуть левой кнопкой мыши в кружок возле этого слова) и в ставшем активным раскрывающемся списке (около слова Другой) выбрать кодировку Кириллический (СР 1251), или Юникод (utf8), или какую другую (после этого всего не забываем нажать кнопку Сохранить или Применить, если не хотим, чтобы диалоговое окно Настройки закрылось)). Все, LyX готов к проверке орфографии. Далее есть 2 варианта использования этой всей прелести. Либо Инструменты>Проверка правописания, при этом вылезет диалоговое окно "Spell Checker" с таким вопросом: "We reached the end of...", в котором нужно нажать кнопку Yes, иначе Проверка правописания закрывается. При этом курсор перескакивает в окончание первого слова с ошибкой, это слово выделяется синим цветом, в основном окне LyX появляется область с кнопками "Проверка правописания", дальнейшая проверка осуществляется вручную, с помощью кнопок этой области. Ну, мне этот способ не очень нравится. Либо в Инструменты>Настройки>Настройки языка>Проверка правописания ставлю галочки напротив Spellcheck continously и Spellcheck notes and comments, нажимаю Сохранить или Применить. Честно говоря, проверка начинается уже после простановки галочки напротив Spellcheck continously. В выпадающем списке Spellchecker engine должно быть выбрано Hunspell. Ну, Hunspell в этом списке стоит изначально, после установки. Все, другое ничего не трогаем. При применении этого способа настройки слова с ошибками начинают подчеркиваться сразу по вставке после них пробела, без включения Инструменты>Проверка правописания.

Только вот еще такой момент. При первоначальных установках это подчеркивание едва заметно:

image

Чтобы это изменить, в Инструменты>Настройки>Screen Fonts в счетчик Масштаб ставлю число, большее, чем там находится, нажимаю OK. При желании, чтобы видимый размер вводимых в окно LyX не изменился, можно пропорционально изменить размеры всех шрифтов. У меня при таких настройках:

image

Подчеркивание ошибок выглядит так:

image

ИМХО, выглядит вполне реально. Наверное, написано сумбурно, извините меня за это, но зато, я надеюсь, доходчиво.

LyX: Тезаурус

Ну, здесь вообще все просто. Тезаурус выдает синонимы к выделенному слову. Его настройка в LyX осуществляется следующим образом. Скачиваем отсюда архив, копируем его содержимое в папку C:Program FilesLyX 2.0Resourcesthes. Если LyX открыт, перезапускаем его. Все, в окне LyX выделяем слово (это делается так: курсор подводится к началу(окончанию) интересующего слова, нажимается левая кнопка мышки, и, не отпуская кнопки, двигаем мышку к окончанию(началу) слова, после того, как последняя(первая) буква слова оказывается выделенной, отпускаем левую кнопку мыши. А можно и так: курсор подводится к началу(окончанию) интересующего слова и нажимаются и удерживаются сразу 2 клавиши Ctrl и Shift, а потом стрелка влево (стрелка вправо)), нажимаем Инструменты>Тезаурус или после выделения интересующего слова нажимаем и удерживаем Shift, а потом F7. Появляется окошечко, в нижней части которого и вместе с тем несколько выше кнопки Отменить содержатся синонимы к выделенному слову, связанные термины с выделенным словом:

image

(снимок сделан после щелчка левой кнопкой мышки по слову репутация). Если я в данной ситуации нажму кнопку Заменить, слово Популярность в окне LyX заменится словом репутация. После окончания работы с тезаурусом, закрываем диалоговое окно "Lyx: Тезаурус" или нажимаем в этом диалоговом окне кнопку Отменить. Если мы используем кнопку Отменить, произведенная нами ранее замена выделенного в окне LyX слова с помощью Тезауруса НЕ ОТМЕНЯЕТСЯ! Так, ну, вроде, это все, что я хотел сообщить по этому поводу.

LyX: Горячие клавиши

Вот когда пишешь текст с теоремами, леммами, их доказательствами, перечислениями и пр. в LyX, нужно переключать окружения с помощью вот этого переключателя:

image

также для выполнения, например, какой-нибудь команды, расположенной на какой-нибудь, пусть даже активированной, доступной в основном окне программы, панели инструментов (для активации какой-либо панели инструментов нужно в Вид>Панели инструментов. поставить галочку напротив ставшей вам нужной панели инструментов), приходится использовать мышь. Когда ты пишешь что-то, что тебя очень занимает или что-то сложное, отвлечение на такое переключение мышью не всегда желательно. Лучше бы, если это все можно было делать клавой. И создатели LyX предусмотрели возможность решения этого вопроса каждым пользователем LyX самостоятельно. Рассмотрим, например, как определить сочетание клавиш для вставки окружения Теорема. Нажимаем на треугольничек с приведенного выше фото. В выпавшем списке щелкаем левой кнопкой мыши на пункте Теорема. При этом строка состояния, внизу окна, там, где обычно написано Шрифт: По умолчанию, на короткое время примет следующий вид:

image

И вот словосочетание layout Theorem нам-то и нужно. Далее идем в Инструменты> Настройки>Редактирование>Горячие клавиши. Там нажимаем кнопку Новый. Появляется вот такое диалоговое окно:

image

В текстовое поле Функция вводим узнанное ранее словосочетание layout Theorem. Щелкаем левой кнопкой мышки в прямоугольник, расположенный справа от надписи Горячая клавиша и вводим придуманное нами сочетание клавиш для данной команды. Я, к примеру, т. к. большинство сочетаний клавиш, начинающихся с Ctrl уже занято, чтобы не заморачиваться с тем, какие сочетания клавиш с таким же началом существуют, какие — нет, начинаю свои сочетания клавиш с Ctrl+0 с цифрового блока, а дальше набор букв, индивидуальный для каждой команды. Этот индивидуальный набор я, чтобы не путаться, присваиваю, исходя из записи русского названия окружения, на которое я создаю сочетание клавиш, латинскими буквами. Например, на окружение Теорема у меня назначено сочетание клавиш Ctrl+0+t+e, на окружение Доказательство — сочетание Ctrl+0+d+o (плюсы в прямоугольник, расположенный справа от надписи Горячая клавиша вводить не нужно, также как и не нужно их нажимать при использовании созданных таким образом сочетаний клавиш). Все, нажимаю кнопки Сохранить или Применить (после нажатия кнопки ОК с фото). Также я назначу сочетание клавиш на команду, к примеру, Вставка>Примечание>Комментарий. Щелкаю левой кнопкой мыши эту команду, строка состояния при этом принимает следующий вид: (note-insert Comment). Все остальные действия аналогичны действиям, описанным выше.

Усё, на первый раз, думаю, хватит. Как говорится по-русски ту би континуед.

Про латынь

"Ой, и откуда из вас эта латынь прет?..." )))

Автор: mathem

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js