LINUX.ORG.RU
ФорумTalks

LaTeX не пригоден для написания текстов?

 


0

2

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

В этом и вопрос - назревает задача создания довольно объемного документа в LaTeX, и я возвращаюсь к извечной проблеме: а как его, собственно, писать? Какие есть приложения.

Требования:

  1. Проверка орфографии и желательно пунктуации, на уровне не хуже hunspell + LO Writer. Желательно лучше.

  2. Возможность произвольного выделения кусков текста цветами, шрифтами В ИСХОДНИКЕ документа. Еще раз, внимание - в исходнике, а не в итоговом документе! В итоговом, конечно же LaTeX позволяет оформить как угодно. Надо в исходнике, чтобы я это видел в процессе набора, и чтобы это не было связано с LaTeX разметкой, ибо выделять будет надо намного больше и намного разнообразнее, чем предполагается в сверстанном документе!

  3. Подцветка макросов LaTeX в исходнике.

  4. Возможность корректного открытия файлов с расширением .tex, и чтобы при этом независимо от файла сохранялось форматирование исходника по пункту 2. Я понимаю, что на 146% такого нет нигде и это невозможно. Но а вдруг.

  5. Компромиссный вариант предыдущего - сохранение в rich text формат, с возможностью экспорта в plain text перед сборкой LaTeX.

  6. Весь текст исходника должен вводиться в хотя бы 3 синхронизированных параллельных колонки. Зачем. В первой колонке - номер фрагмента текста. Во второй - набираемый текст, который станет потом входным для LaTeX. В третьей - опорный текст, который выдернут откуда-то, и на основе которого я пишу свой текст. Перед сборкой LaTeX, экспортируется содержимое второй колонки как plain text.

Вопрос - какие, хотя бы общие подходы можно применить для организации такого Workflow?

Обычные LaTeX IDE ничего не могут, бесполезны. Продвинутые plain text редакторы не могут в rich text (пункт 2). Колонки (пункт 5) возможно, из plain text редакторов потянет Emacs. Гипотетически.

Rich text редакторы (LO Writer) могут почти все, кроме подцветки (пункт 3). Остальное реализуется макросами, в принципе.

Пока я склоняюсь к выбору LO Writer для этого, с экспортом в чистый LaTeX исходник макросами.

Может что-то есть получше?

В talks, чтобы не злить вас

★★★★★

Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от glebiao

Мне не нужна визуализация вообще, а навигация есть где угодно, и это вообще не проблема.

Мне нужно блоки текста помечать в исходнике, насколько я помню в LyX этого не было.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от James_Holden

Еще раз уточню. В LyX можно выделить мышью кусок текста и поменять цвет, никак не затрагивая результат в LaTeX? Точно можно?

напрямую – нет. Видимо, за двадцать лет сущетсвования инструмента, такая идея никому в голову не пришла.

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

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

glebiao
()
Ответ на: комментарий от glebiao

Ну так откуда берется, утверждение, что все запрошенные мной пункты он делает, если - не делает?

ликс имеет очень развитые средства навигации

Навигация это наименьшая из проблем.

James_Holden ★★★★★
() автор топика
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от James_Holden

Мне не нужна визуализация вообще

могу только позавидовать могучему воображению

Мне нужно блоки текста помечать в исходнике

может быть, имеет смысл переформулировать задачу. помечать – как? можно ли заменить пометку на пользовательские блоки? использовать комментарии и дочерние документы? и т.п.

glebiao
()
Ответ на: комментарий от glebiao

за двадцать лет сущетсвования инструмента, такая идея никому в голову не пришла

Вот это и поразительно, что базовые вещи, которые реализованы во всех текстовых процессорах, не приходят в голову за 20 лет.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от glebiao

Помечать просто цветами, самый простой пример - абзац который надо бы пересмотреть позже, сделать красным. Пересмотреть, но по причине номер 2 - синим. И так далее. Конечно, это все можно комментариями разметить, но это решение от бедности. Не потому, что так лучше и эффективнее, а потому, что вундер-редактор иначе не умеет.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от James_Holden

Ну так откуда берется, утверждение, что все запрошенные мной пункты он делает, если - не делает?

не делает одну хотелку из 6. ну, может, две.

Навигация это наименьшая из проблем.

ну, не знаю. писал я тут довольно объёмистую справочную книжку, без навигации – смерть коровам.

glebiao
()
Ответ на: комментарий от James_Holden

В LyX это достигается макросами. Просто ставишь \br{}, и нужный абзац в скобках помечается нужным цветом.

VIT ★★
()
Ответ на: комментарий от James_Holden

Помечать просто цветами, самый простой пример - абзац который надо бы пересмотреть позже, сделать красным. Пересмотреть, >но по причине номер 2 - синим. И так далее. Конечно, это все можно комментариями разметить, но это решение от бедности.

от бедности или нет, это рабочее решение. Ну что делать, если никому в голову не пришло это реализовать.

блок комментария + (!!!) метка. Метка видна в дереве навигации. так что работа – посмотреть в дереве навигации, перейти по метке, посмотреть комментарий, изменить. Подозреваю, что это даже надёжнее, чем цвета, которые с усталости можно и пропустить.

glebiao
()
Ответ на: комментарий от glebiao

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

James_Holden ★★★★★
() автор топика
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от PPP328

Местный маркдаун __тест__ делает жирным, а не курсивом или подчёркиванием.

Подчёркивание в большинстве диалектов отсутствует, «чтобы не путать с гиперссылками». Обычно _ и * дают одинаковый результат: 1 символ — курсив, 2 — жирный, 3 — жирный курсив.

question4 ★★★★★
()
Ответ на: комментарий от VIT

Можно задать набор спец макросов для LyX, а при финальной сборке делать их пустыми, либо вырезать скриптом. В целом это вариант.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от James_Holden

самый простой пример - абзац который надо бы пересмотреть позже, сделать красным. Пересмотреть, но по причине номер 2 - синим

ну так это-же закладки, примечания и комментарии в офисном софте ;-)

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

ps/ чегой-то мне кажется вам не TeX нужен или ультра-редактор, а что-то типа ремня «пиши код блджатЪ».

MKuznetsov ★★★★★
()
Ответ на: комментарий от James_Holden

Еще раз уточню. В LyX можно выделить мышью кусок текста и поменять цвет, никак не затрагивая результат в LaTeX? Точно можно?

Несовсем. Только если ты не создашь для LyX такую возможность. В LyX другой подход.

Посмотри добавление модулей в LyX. К примеру, Документ -> Настройки -> Модули. Добавляем модуль (например, Аннотации и рецензирование -> Заметки Fixme). В редакторе появится новый класс объектов Вставка -> пользовательская вставка -> .... При формировании tex файла будете что-то в виде \foo{TEXT}.

AlexVR ★★★★★
()
Ответ на: комментарий от MKuznetsov

ну так это-же закладки, примечания и комментарии в офисном софте

В том то и дело, что в офисном.

чегой-то мне кажется вам не TeX нужен или ультра-редактор, а что-то типа ремня «пиши код блджатЪ»

15 лет назад я еще просто писал код, а сейчас, ремень такого рода не работает при депрессивных проблемах. Нельзя просто сказать «встань и делай» в этой ситуации, ну или надо не быть смертным, чтобы это сказать и оно работало.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от James_Holden

Мне кажется имеено так реализован макрос \comment во всяких IEEEtran.cls стилях. Можно даже глянуть реализацию.

VIT ★★
()
Ответ на: комментарий от James_Holden

Ты не догоняешь — это единственная фича по которой он обходит emacs + auctex. Попробуй — за уши потом не оттащишь, особенно если в коллаборации, ну или всех gitом придётся учить пользоваться.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Не не не, онлайн я использовать точно не буду, это вообще как-то странно, куда еще я буду тексты выгружать наружу, плюс я что, должен зависеть от интернета теперь? Это как вообще.

Или его можно как-то локально запустить?

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от James_Holden

Можно и локально сервис поднять (исходники системы доступны под свободной лицензией), но IMHO эта штука для коллабораций, ровно потому и любима. Локально коллаборацию сколачивать сложнее.

Потыкай палочкой TeXstudio. Отзывы хорошие. Хотя качественных редакторов LaTeX сейчас весьма не мало, ибо чтобы конкурировать с emacs нужно выпрыгнуть высоко и сразу.

Evgueni ★★★★★
()
Последнее исправление: Evgueni (всего исправлений: 1)
Ответ на: комментарий от James_Holden

Спеллчек? Это отдельно:


;; ============================================================
;; 7. Spell Checking
;; ============================================================
(setq ispell-dictionary "american"
      flyspell-default-dictionary "american")

;; Enable flyspell for programming modes
(dolist (hook '(text-mode-hook c++-mode-hook c-mode-hook
                perl-mode-hook cperl-mode-hook fortran-mode-hook))
  (add-hook hook (lambda () (flyspell-mode 1))))

Вместо american можно поставить russian. Нужно соответственно поставить словарь для ispell. flyspell — подчёркивает слова с опечаткой.

Evgueni ★★★★★
()
Последнее исправление: Evgueni (всего исправлений: 4)
Ответ на: комментарий от question4

1 астериск
2 астериска
3 астериска 1 подчёркивание
2 подчёркивания
3 подчёркивания

А вот так то же самое выглядит в телеге: https://i.postimg.cc/yNTbnRBB/image.png

  • ничего
  • жирный
  • ничего
  • ничего
  • курсив
  • ничего
PPP328 ★★★★★
()
Ответ на: комментарий от Evgueni

Потыкай палочкой TeXstudio

Традиционные IDE типа студии я использую годами, поэтому и решил смотреть а что есть лучше.

С emacs у меня не срасталось никогда, и сейчас то же самое. Я не знаю почему. Оно не работает никогда. Настроил ispell со словарем hunspell, оно подчеркивает мне некоторые слова, в которых нет ошибки. Если навести курсор, подчеркивание пропадает. Просто, вот так. Что это, почему, не понятно. И так каждый шаг с emacs. Поэтому я и стал хейтером, в последствии.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от Evgueni

Да я знаю блин что это. Поверь. Я использую его лет 15.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от Evgueni

Сделал вот так

(setq ispell-dictionary "ru_RU")

(add-hook 'LaTeX-mode-hook (lambda ()
                             (flyspell-mode 1)
                             (flyspell-buffer))) 

Результат описанный выше, подчеркиваются некоторые правильные слова, подчеркивание исчезает если на такое слово встать. Что я делаю не так?

Этот же файл как в Writer, так и в Kate проверяется нормально.

James_Holden ★★★★★
() автор топика
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от James_Holden

Короче понятно, это баг в flyspell-buffer команде. Она работает криво. Вот такая базовая вещь, а не работает нормально. Текстовый процессор, ага

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от Evgueni

С russian то же самое, собственно вот список

35 possible completions:
american 	brasileiro 	british 	castellano 	castellano8 	czech 	dansk 	default 	deutsch
deutsch8 	en_US 	en_US-large 	english 	esperanto 	esperanto-tex 	finnish 	francais 	francais-tex
francais7 	german 	german8 	hebrew 	italiano 	nederlands 	nederlands8 	norsk 	norsk7-tex
polish 	portugues 	ru_RU 	russian 	russianw 	slovak 	slovenian 	svenska

Проверка то работает, и показывает ошибки, просто некоторые, очень избранные непонятно как правильные слова, она подчеркивает тоже. Причем, только если вызвать flyspell-buffer. И если файл уполовинить, проблема исчезает. А файл очень короткий, примерно на пару экранов.

И не на всех файлах проблема есть.

James_Holden ★★★★★
() автор топика
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от AlexVR

Собрал LyX.

Хм, это еще круче чем с Emacs, там хотя бы почти все фурычит.

Проблема - LyX при импорте LaTeX файла… не понимает кодировку utf-8! Как это? Он открывает сплошные кракозябры. Я же говорил, что это ужас

James_Holden ★★★★★
() автор топика
Последнее исправление: James_Holden (всего исправлений: 2)
Ответ на: комментарий от Evgueni

Конечно, слова 146% правильные, я этот файл уже в чем только не открывал. Еще раз - в самом Emacs, тут же, они определяются как правильные. Например C-c $ не показывает никаких вариантов, подчеркивание тут же испаряется.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от MoldAndLimeHoney

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

Аллергии на Qt и KDE нет? Тогда KleverNotes.

dataman ★★★★★
()
Ответ на: комментарий от PPP328

А вот так то же самое выглядит в телеге

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

question4 ★★★★★
()
Ответ на: комментарий от James_Holden

Так ничего и не вышло. LyX вообще не открывает исходник, не та кодировка. Выбор utf-8 в меню ничего не меняет. Это вообще фуфло неработоспособное, только время потратил. Собственно, я уже это много лет назад наблюдал и знал, что работать оно не будет.

Emacs тоже не может работать, спеллчек забагован, но это еще ладно. Auctex нормально не работает, базово он подсвечивает конечно, но сборка превью не работает. На одном документе сработало, на втором непонятные ошибки при сборке. Оба собираются через xelatex без проблем. И да, auctex конечно был настроен чтобы собирать именно через xelatex, а не через latex. Это не работает все равно.

Я не знаю, кто и как пользуется всем этим недоразумением, но я пас. Я пошел писать xelatex исходники в LO Writer.

James_Holden ★★★★★
() автор топика
Ответ на: комментарий от Zhbert

Нет, VSCode я не использую сейчас. Я знаю и так, что это не будет для меня удобнее, чем в LO Writer. Работать с latex в VSCode я пробовал не раз и не два, на протяжении лет. Там все работает само по себе, но - вот эти пункты в ОП нужны. То что в VS Code, делается просто в Kate с потреблением ресурсов на порядок меньше.

James_Holden ★★★★★
() автор топика

Как современную альтернативу можно typst попробовать.

Он сильно читабильнее, быстрее компилируется и есть LSP-сервер. В Helix-е, напимер, есть почти rich text подсвтка (курсив курсивом, жирный жирным, заголовки разного уровня разными цветами и т.п.), есть GUI-редактор в каком-то виде.

Но со встоенным spell-checker-ом не очень. Проще всего, кажется, подключить отдельный LSP, но идеального варианта пока не нашёл. Для проверки ошибок стиля есть vale lsp на основе vale, но это не spell-checker. Ещё есть что-то типа typos lsp и codebook, но тоже не совсем то.

A12345
()
Ответ на: комментарий от A12345

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

James_Holden ★★★★★
() автор топика
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)