Главная / Дневники / Sergei Zyablov / Запись
Мечта графомана 21.07.2019 19:54
zblsv
05.07.2009
01:30
Будучи отлучённым от HTML-редактора (который, кстати сказать, мне и не нужен вовсе) снова задумался над тем, как должен выглядеть идеально удобный процесс набора текста.

Что хотелось бы иметь в результате набора?
Всё.
А что? мне и рисунки вставлять нужно, и формулы (и то, и другое уметь вставлять в строку, а не только отдельным абзацем и уметь выравнивать местоположение в строке), и списки, и ссылки, и сборки (абзац, отображаемый в свёрнутом виде), писать индекс внизу и вверху, менять атрибуты шрифта.
Но вот набирать это так, как это делается в Word (особенно, формулы в Equation Editor) или в Open Office (там редактор формул человечнее) не хочу.

Как бы хотелось это всё набирать?
Не пойдёт мне даже RichEdit с сочетаниями клавиш, когда, чтобы начать писать курсивом, нужно нажать Ctrl-I.
Набирать хочу плоский текст.
Зачем мне нужен плоский текст, если Ctrl-I достаточно удобно нажимать? — а я часто правлю текст, собирая его частями из разных источников, чем более плоский тут формат, тем удобнее.
Есть и другие причины, о них много чего понасказано в Сети — не стану пересказывать тут.
В принципе, пойдёт и визуальный редактор (RichEdit), но тогда чур чтобы можно было локально сохранить набранное хотябы в HTML.
Править потом HTML будет неудобно, он плохо читаем, но это лучше, чем ничего.
Я переведу его в нужный мне плоский формат, наредактируюсь всласть, а потом верну обратно.

Textile, Markdown
Это в нужном направлении, но как там, например, на счёт формул?
В принципе, меня лично устроила бы ещё пара конструкций тапа $...$ и $$...$$ для вставки LaTeX, который бы на сервере преобразовывался в простые картинки чем-нибудь типа l2p.
Есть, однако, некоторое "но" против Textile и Markdown: набранное трудно читаемо, если реализовывать всё, что мне нужно, то синтаксических конструкций будет так много, что это превратиться в китайскую грамоту.
Для многих LaTeX уже китайская грамота...

А как же быть?
Или визуальный редактор (но его трудно реализовать на JavaScript, он будет глючить по-разному в разных браузерах, тормозить, особенно в Эксплохере).
Или принципиально другой язык типа Textitle.

Принципиально другой язык
Обычно в тексте мне не требуются все элементы форматирования, а только некий небольшой набор, конкретный состав которого зависит от типа текста.
А вот уже типов текстов море и по-этому море и требуемых конструкций языка.
Значит нужно сделать некий базовый набор самых легко набираемых и читаемых конструкций, а потом способ определить, как они будут форматировать плоский текст, превращая его в красивый HTML.
В roff и в TeX это известно как макросы и макропакеты.
Можно было бы писать сразу на LaTeX, но у того слишком громоздкий синтаксис (\begin{ля-ля-окружение}...\end{ля-ля-окружение} — мне это лень набирать).
Вот roff — это другое дело, он был специально разработан для набора текста и в точности в такой же ситуации (правда, тут та особенность, что наборщики в те времена были несколько другими по образу мысли, чем сейчас).
В общем, суть в том, чтобы набирать что-то вроде *жирное или _подчёркнутое, если нужно выделить только одно слово или *{жирное слово}, если нужно выделить словосочетание.
Да так, что можно в любой момент переопределить смысл звёздочки на отображение курсива вместо жирного.
Неплохо бы и дать пользователю возможность самому выбирать управляющие символы вроде скобок (их неудобно набирать, если приходится переключать раскладки, да раскладки и разные бывают).
Ответить предыдущая | следующая
Архив | Дневники | Новости | Календарь
Вести дневник и оставлять комментарии могут только зарегистрированные пользователи
Логин:
Пароль:
Зарегистрироваться
Последние сообщения
Основные положения
Правила
Всего дневников: 764

Пользователей
в системе: 3386

Всего записей
и комментариев: 59465

Записей и комментариев
за последние 24 часа: 0
 ПОИСК ПОСТОВ
  по автору:
  по тексту:
 АКТИВНЫЕ ДНЕВНИКИ
 Все дневники  
e-mail: admin@arxiv.su       О проекте       RSS       Дизайны
©2009-2017 Архив. Все права защищены
Designed by tanyu6ka