Программа для создания текстовых документов: что это, и какие можно встретить разновидности редакторов?


Bred

Размер файла инсталляции — 580 Кбайт

Текущая версия — 3.0.3

Автор — Gladiators Software

Сайт — https://www.astonshell.ru

Bred является многофункциональным текстовым редактором, заменяющим стандартный Блокнот Windows. Этот пакет поддерживает наиболее распространенные кириллические кодировки (ANSI, KOI8, OEM, Unicode) с возможностью преобразования текста на лету, позволяет работать с файлами любого размера, поддерживает плагины, предлагает подсветку синтаксических конструкций и многое другое.

Онлайн-уникализация текста

Третий метод преобразования текстового контента – техническая уникализация. В отличие от предыдущих вариантов, здесь осуществляется переформулировка текста на уровне кода, что позволяет повысить его уникальность до 70-100%.

Кодирование документа повышает его уникальность, не затрагивая структуры текста. По сути, кодирование позволяет «перехитрить» антиплагиат, не внося изменений в содержание документа.

В среднем, обработка текста посредством онлайн-программы выполняется за три минуты.

Cool Editor

Размер файла инсталляции — 820 Кбайт

Текущая версия — 3.2

Автор — Виктор Андреевич Куликов

Сайт — https://www.cooleditor.nm.ru/cooleditor.html

Cool Editor — пакет, сочетающий функции обычного текстового редактора и редактора HTML. Программа поддерживает 24 типа подсветки. Все подсветки легко настраиваются в зависимости от личных предпочтений. Имеется возможность просмотра редактируемой Web-страницы в просмотровой утилите программы или в одном из четырех подключаемых браузеров.

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

Everest Editor

Размер файла инсталляции — 1,9 Мбайт

Текущая версия — 1.0.0.88

Автор — Archi Team

Сайт — https://everesteditor.chat.ru/index.htm

Этот очень популярный WYSIWYG-редактор не использует стандартного RTF-компонента Windows. Everest Editor поддерживает формат RTF и собственные форматы — тэговый и бинарный, причем набор тэгов может расширяться. Этот редактор обеспечивает поддержку графики в разных форматах, таблиц, стилей, разбиения документа на блоки, гиперссылок, конвертацию таблиц в PlainText, рисование линий псевдографикой.

Everest Editor получил номинацию WOW! на SoftList.ru и Good на SoftArea.ru, а также вошел в число «Полезных программ месяца» журнала КомпьютерПресс.

Hieroglyph

Размер файла инсталляции — 2,9 Мбайт

Текущая версия — 3.7

Автор — Михаил Морозов

Сайт — https://www.adelaida.net/hieroglyph

Данный редактор предлагает порядка 30 функций для работы с русскими текстами при небольшом размере файла инсталляции. Нieroglyph может использоваться как редактор по умолчанию вместо Notepad и Wordpad, а также является хорошим дополнением к Microsoft Word. Кроме того, этот редактор может заменить программы перекодировки, работы с поврежденной почтой, с Unicode и решить проблемы русификации.

Нieroglyph имеет следующие функции:

• практически безошибочный перевод транслитерированного текста в кириллицу;

• транслитерация кириллицы с учетом русского написания англоязычных слов, а также имен и сокращений;

• автопереключение раскладки клавиатуры;

• проверка правописания в интерактивном и автоматическом режиме, автоматическая подсказка при наборе текста;

• встроенный тезаурус — словарь синонимов;

• переформатирование текстов с жесткими переносами и выравниванием; удаление переносов внутри слов; удаление HTML-тэгов из текста;

• перекодировка WIN, KOI, ISO, DOS, MAC, перевод писем, пришедших в семибитном текстовом виде; перевод из Unicode в ANSI и обратно;

• быстрое декодирование многократно (до шести раз) закодированных писем;

• корректирование текста, в том числе пропущенного через программы распознавания CuneiForm, OmniPage и др.; нахождение латинских букв в русских словах;

• таблица символов; виртуальная клавиатура; графический калькулятор;

• выполнение большинства функций по горячим клавишам, назначаемым в других программах;

• сохранение версий, создаваемых при последовательной смене кодировок; просмотр и возврат к любой версии; визуальное сравнение текущего текста с любой из предыдущих версий;

• экспорт и импорт всех установленных в системе текстовых форматов;

• режим сбора информации, попадающей в буфер обмена (Сlipboard): в этом режиме любой текст, попадающий в буфер, добавляется к содержимому редактора;

• работа со списками и словарями; сортировка и фильтрация;

• поддержка всех основных возможностей форматирования текста; drag&drop файлов и выделенных блоков; возможность неограниченного отката и повтора всех операций (Undo&Redo); встраивание в текст картинок и прочих объектов;

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

• полная совместимость со спецификациями RichEdit 3.0/новые функции вызываются с панелей инструментов;

• нумерованные списки;

• масштабирование;

• настраиваемое расстояние между строками (Line Spacing);

• разные стили подчеркивания;

• сортировка текстовых файлов без открытия в редакторе (особенно полезно для крупных файлов).

Программа поставляется вместе с собственным спеллчекером, который имеет следующие характеристики:

• высокая скорость работы;

• работа с несколькими словарями в каждом языке;

• наличие автоматического режима, в котором все ошибки накапливаются в списке помимо привычного интерактивного режима;

• показ вероятных опечаток в словах (то есть показ тех слов, которые могли получиться в результате попадания в соседнюю клавишу, при неправильном порядке ввода букв или при совершении самых распространенных ошибок);

• подсвечивание измененных букв в предлагаемых вариантах;

• улучшенная форма добавления слов в словари пользователя; поддерживание разных пользовательских словарей для разных языков;

• замена буквы «ё» на «е»;

• использование британского и американского написания и англий-ских слов.

Функция «Поиск в Интернете» (Internet Lookup) позволяет запускать поиск выбранного слова в разных поисковых системах посредством контекстного меню по правой кнопке мыши. Кроме того, можно настроить запуск любых сайтов, например обращение к словарю рифм или к толковому online-словарю.

Где скачать синонимайзер?

Количество синонимайзеров в интернете просто огромное количество. Если честно, к автоматическим синонимайзерам, как к программе помогающей повысить уникальность текста, мы относимся крайне скептически. Да, они несут пользу и помогаю отчасти повысить уникальность текста, однако в нашем понимании, польза мала, более того, бездумное использование синонимайзера можете вообще испортить всю вашу написанную курсовую или дипломную работу.

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

В сети также существует множество сервисов, где можно воспользоваться синонимайзером онлайн. Данный синонимайзер текста имеет аналогичные плюсы и минусы синонимайзера приложения. Отличие лишь в том, что скачав программу синонимайзер, вы сможете воспользоваться ей в любое время дня и ночи, с интернетом и без него. Синонимайзеры онлайн же, требую постоянного подключения к сети интернет.

Keynote

Размер файла инсталляции — 1,5 Мбайт

Текущая версия — 1.6.1

Автор — Marek Jedlinski

Сайт — https://www.lodz.pdi.net/~eristic/free/keynote.html

Keynote можно использовать вместо Notepad и Wordpad, то есть в качестве удобной записной книжки с широкими возможностями по форматированию текста (работает с файлами формата RFT) и в качестве текстового редактора.

Одной из основных отличительных черт этой программы является удобство применения: пользователь создает файл темы с любым количеством записей/закладок и пользуется им, добавляя отдельные записи или удаляя их (при этом вводимую информацию можно зашифровывать с помощью алгоритмов Blowfish или IDEA). Внутри закладок можно осуществлять поиск, а сами файлы тем могут конвертироваться из RFT в TXT и наоборот. К интересным функциям данной программы относятся также автоматическое создание записи из текста, скопированного в буфер обмена; назначение на отдельные записи избранных иконок; выделение цветом или стилем шрифта недавних записей; возможность отправки записи по e-mail прямо из программы; наличие встроенного виртуального калькулятора; конвертация сделанных записей в формат некоторых других бесплатных записных книжек.

При желании к KeyNote можно подключить модуль WorldWeb, содержащий английские словарь и тезаурус, а также расширить программу за счет плагинов. KeyNote поддерживает многопользовательский режим с возможностью настройки для каждого пользователя.

Создание текстовых документов: платные и бесплатные программы. Что в них можно делать?

Но все это были лишь общие черты. Как уже понятно, текстовые «Блокноты» могут применяться для создания файлов любого типа (необязательно текстового, поскольку расширение при сохранении файла можно задать даже такое, которое в системе не существует).

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

OpenOffice.org Office Suite

Размер файла инсталляции — 61,9 Мбайт

Текущая версия — 1.1.1

Автор — ALT Linux

Сайт — https://openoffice.ru

OpenOffice.org — полнофункциональный офисный пакет, в состав которого входят:

• текстовый редактор Writer;

• редактор электронных таблиц Calc;

• программа для создания и просмотра мультимедийных презентаций Impress;

• редактор векторной графики Draw;

• редактор математических формул Math.

В основе OpenOffice.org лежит открытый код офисного пакета StarOffice от компании Sun Microsystems, вследствие чего этот пакет распространяется по схемам, предусматривающим полную и бесплатную доступность не только самой программы, но и всех ее исходных текстов.

Текстовый редактор Writer может работать с документами следующих форматов: обычный текст (*.txt), Microsoft Word 6.0/95/97/2000/XP (*.doc), Rich Text Format (*.rtf), StarWriter DOS (*.txt), StarWriter 1.0, 2.0, 3.0-5.0 (*.sdw), HTML, причем наибольший интерес представляет работа именно с документами MS Word — стандарта де-факто среди текстовых редакторов. Вставленные графические файлы, сложные таблицы, колонтитулы, текст с внесенными исправлениями — со всеми этими задачами Writer отлично справляется как при открытии созданного в MS Word документа, так и при сохранении текстового файла в формат MS Word. Собственные возможности Writer также впечатляют: работа с таблицами, вставка объектов, автозамена, диаграммы, набор стилей, проверка орфографии (в том числе автоматическая), включая русский и украинский языки (сборка от ALT Linux), поддержка макросов… Одним словом, здесь есть все, что нужно рядовому пользователю.

Редактор электронных таблиц Calc поддерживает форматы Data Interchange Format (*.dif), dBase (*.dbf), Microsoft Excel 4.x-5.0, 97/2000/XP (*.xls), StarCalc 1.0, 3.0-5.0 (*.sdc), SYLK (*.slk), текст CSV (*.csv), Web-страница (*1ext1l), Lotus 1-2-3 (*.wk1, *.wks).

Программа для создания презентаций Impress может работать с презентациями Microsoft PowerPoint, документами StarImpress/StarDraw, а также с файлами Computer Graphics Metafile.

Другие программы для создания реферата

При работе с текстами могут использоваться и другие программы:

  • OpenOffice;
  • Google Документы;
  • Notebooks;
  • Microsoft Excel;
  • PowerPoint.

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

OpenOffice

Пакет OpenOffice – качественный аналог MicrosoftOffice, обладающий особыми свойствами, которые позволили ему занять серьезные позиции среди потребителей.

Пакет OpenOffice содержит большое количество необходимых инструментов для работы и создания текстов разного уровня сложности и направления. Конечно, большинству пользователей привычен Microsoft Word, но для расширения кругозора, опыта и достижения иных целей все чаще преподаватели и учителя в школе знакомят учащихся с программой OpenOffice. Особым ее преимуществом является общая доступность, иначе говоря, программу можно установить на свой компьютер бесплатно. Совместима она с основными операционными системами, что развивает ее популярность. В состав программы входят самые необходимые компоненты для качественного редактирования текстов на более чем 40 языках:

  • текстовый процессор;
  • инструмент для создания электронных таблиц;
  • база данных;
  • презентации;
  • приложение для создания картинок и формул.

Только у Outlook нет аналога в OpenOffice. После загрузки данной программы на компьютер, написать реферат не составит труда.

Google Документы

Google Документы – интересное и современное средство для работы с текстами, их редактирования и совместного доступа нескольким лицам при особых условиях. Можно изменять и добавлять:

  • шрифт;
  • ссылки;
  • картинки;
  • таблицы.

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

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

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

Notebook

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

Возможности Smart Notebook широки:

  • работа с файлами;
  • оформление и создание страниц;
  • создание объектов: фигуры, линии, таблицы, схем;
  • добавление мультимедии;
  • добавление авторских материалов.

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

Microsoft Excel

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

PolyEdit

Размер файла инсталляции — 1 Мбайт

Текущая версия — 5.0

Автор — PolySoft Solutions

Сайт — https://polyedit.com

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

PolyEdit позволяет шифровать и сжимать документы с целью без-опасной и быстрой передачи по сети; осуществлять предпечатный просмотр и разбивать текст на колонки; вставлять OLE-объекты, картинки, таблицы и специальные символы; проверять орфографию; создавать архивы документов с иерархической структурой; редактировать тексты программ с подсветкой синтаксиса; работать с различными форматами и кодировками (RTF, ETF, MS Word 6.0/95/97/2000/XP, MS Excel, MS Write, WordPerfect, Lotus 1-2-3, OEM (DOS), ANSI (WIN), Unicode, UTF-8, Mac , Unix , KOI-8).

Кроме того, возможности программы могут быть значительно расширены с помощью дополнительных модулей (plug-ins).

TEA

Размер файла инсталляции — 1,3 Мбайт

Текущая версия — 11.0.0.607

Автор — Петр Семилетов

Сайт — https://www.roxton.kiev.ua/tea/about.html

Это очень удобный редактор, однако его создатель объявил, что в дальнейшем TEA будет разрабатываться только для Unix /Linux-платформ.

Поддерживаемые форматы: обычный текст, RTF, HEX, MS Word. Поддерживаемые кодировки: Windows CP 1251, DOS 866, KOI8-R, KOI8-U, UTF8/Unicode, Mac , ISO 8859-5. Имеются функции автоматического определения Windows CP 1251, DOS 866, KOI8-R, конвертирования RTF в HTML с сохранением форматирования, а также текста с подсветкой в RTF и HTML с сохранением текущей подсветки.

Основные возможности ТЕА:

• встроенная подсветка синтаксиса для языков HTML, C, C++, Object Pascal (Delphi, Kylix), JavaScript, Perl, SQL, Visual Basic Script; внешняя подсветка для других языков с помощью файлов описания синтаксиса;

• набор HTML-тэгов в виде сниппетов;

• быстрая вставка тэгов, распознавание форматов JPEG, GIF, PNG, MNG, JNG, BMP, WBMP для вставки тэга IMG с заполнением имени файла и его размеров (чтобы вставить такой тэг, картинку нужно перетащить в редактор);

• встроенный просмотрщик файлов BMP, WBMP, JNG, MNG, JPEG, GIF и PNG;

• генератор Тhumbnail-галерей;

• меню «Бра», из которого можно запустить файл на просмотр в IE, Opera, Mozilla и т.д.;

• мастера Web-эффектов (в частности, градиентного текста);

• мастер подбора цветов; выбор цвета из Web-Safe- и обычной палитр;

• конвертация текста в HTML с форматированием;

• встроенная чистка заданных в списке тэгов;

• математический аппарат, позволяющий выполнять встроенную обработку алгебраических выражений, набранных в тексте документа, конвертировать из одной системы счисления в другую (DEC, BIN, HEX и по произвольной базе), переводить арабские цифры в римские и наоборот;

• при работе с текстом — автозамена, изменение регистра, нумерация строк по формату, форматирование, позиционирование блоков с помощью курсорных клавиш, удаление или выборочная чистка лишних пробелов, коррекция ошибок перекодировки из Word в plain text, детранслитерация, исправление раскладки, сортировка, нумерация и т.д.;

• анализ текста — подсчет количества слов, знаков и пробелов (результат аналогичен Word); анализатор гиперссылок извлекает из текста все ссылки;

• закладки двух типов — временные локальные и закладки-ссылки, которые доступны из специального меню закладок и позволяют запомнить имя файла, позицию в нем и кодировку (выбор такой закладки из меню инициирует загрузку файла в редактор, смещение в нем курсора на сохраненную позицию и установку нужной кодировки);

• файловый менеджер «Нептуно», позволяющий открывать текстовые файлы в редакторе, искать и заменять в неоткрытых файлах заданные строки, массово перекодировать файлы, выполнять поиск по регулярным выражениям.

TEA включает следующие утилиты: календарь, таблицы символов, менеджер проектов, систему сравнения файлов, конвертор величин.

Средства работы с PDF

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

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

TextEd

Размер файла инсталляции — 500 Кбайт

Текущая версия — 1.91

Автор — Николай Мясников

Сайт — https://www.dgstudios.com/nick/soft.shtml

TextEd — удобный редактор неформатированного текста (Рlain Тext Еditor), имеющий наряду со стандартными большое количество таких функций, которые облегчают и улучшают работу с текстом. Программа корректно работает в среде операционных систем Windows 9x/Mе/NT/2000/XP.

В настоящее время существует довольно много заменителей б локнота Windows, но самые удачные из них ориентированы на программистов и потому имеют огромное количество ненужных в обычной жизни функций. Но TextEd предназначен именно для работы с простым неформатированным текстом в кодировках DOS-866, WIN-1251, KOI8-R, MAC и ISO, а также для удобного просмотра и чтения текстовых файлов в формате Рlain Тext. Программа сохраняет функциональность стандартного блокнота, за исключением поддержки Unicode, однако на этом их сходство заканчивается.

Главные отличия TextEd от стандартного блокнота:

• настройка шрифта и цвета фона;

• большинство команд имеют комбинации горячих клавиш;

• статусная строка отображает информацию о текущем положении курсора, количество выделенных символов, процент прокрутки от начала документа, объем документа в байтах, общее количество строк, кодировку текста, состояние клавиши Insert (вставка/замена символов). Здесь же находятся активные индикаторы режимов (двойной щелчок по ним переключает режим): перенос по словам (Word Wrap), только чтение (Read Only), захват буфера обмена (Catch Clipboard), прямое копирование в буфер обмена (Direct Copy);

• перекодировка текста или выделенного фрагмента из кодировок DOS-866, KOI8-R, MAC и ISO в кодировку MS Windows (ANSI/Win-1251) и обратно, а также конвертирование текста в транслит и из него по двум настраиваемым таблицам — при перекодировании происходит физическая замена кодов символов;

• автоматическое определение текущей кодировки текста; автоматическая конвертация текста в Win-1251;

• изменение регистра выделенного фрагмента документа;

• настраиваемые таблицы восстановления раскладки;

• сохранение размера и позиции окна;

• режим автосохранения;

• возможность заложить в любом месте текста быструю закладку, а потом перейти на нее.

В какой программе делать реферат для распечатки

Реферат представляет собой вариант простейшей научной работы, включающий в себя следующие элементы:

  • титульный лист;
  • оглавление;
  • Купить реферат
    введение;
  • основной текст;
  • заключение;
  • список использованных источников;
  • приложение (если есть).

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

Процесс распечатки документа, созданного в этой программе очень прост. Все они хранятся в меню «Файл». Выбирается «Печать» и устанавливаются необходимые характеристики, такие как:

  • количество страниц на листе;
  • формат листа;
  • размеры страниц;
  • варианты печати.

TigerPad

Размер файла инсталляции — 620 Кбайт

Текущая версия — 3.5.2

Автор — Д.П. Благодатских

Сайт — https://dimonius.da.ru

TigerPad (или Dimoniusis Notepad) — это текстовый и HTML-редактор со множеством функций. Программа имеет небольшой размер и привлекательный интерфейс, быстро работает, а ее многочисленные функции удобно рассортированы по меню, которое легко настраивается.

Главные отличия TigerPad от стандартного блокнота:

• открытие файлов любого размера;

• очень быстрая работа;

• поддержка горячих клавиш;

• подсветка синтаксиса HTML, C\C++, Pascal, JavaScript и т.д., причем файлы подсветки можно легко добавлять, писать и править;

• поддержка HTML — подсветка и вставка тэгов и т.п., оптимизация HTML, посредством ликвидации лишних тэгов;

• поддержка кодировок DOS (866), WIN (1251), KOI, ISO, MAC, 855, UTF-8, Unicode, BASE64 и всех версий 7-битных кодировок;

• автоматическое определение кодировки при открытии файла и вставке из буфера обмена;

• поддержка транскодировки (транслитерации);

• исправление ошибок набора текста при неправильной кодировке;

• наличие более 80 JavaScript- и DTHML-скриптов.

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

Свободные текстовые редакторы для совместной работы

Много лет меня преследовал этот зуд — попытки найти «идеальный» текстовый редактор для совместной работы. Но не просто любой текстовый редактор, который поддерживает совместную работу, о нет, моя задача — найти (ну, по крайней мере, искать) открытые текстовые редакторы с групповой работой в режиме реального времени

(т. е. не только обычный текст, но и структурированный контент). Таким образом, основное внимание в этой статье уделяется довольно нишевой категории инструментов с открытым исходным кодом и технологиям, на которых они работают. Если ваши интересы шире, можете обратиться к этому постоянно обновляемому списку редакторов. Итак. Я много раз прыгал с обрыва и нырял в практически бесконечное море программ для совместной работы в реальном времени. Полёт вниз, этот бодрящий нырок на дно бассейна, мне уже хорошо знаком. Обычно он начинается с некоторого первоначального волнения и удивления (
скачок
) новых низкоуровневых технологий и исследовательских работ, затем следует чувство перегруженности и желания всплыть (
эй, тут довольно глубоко
) и исследовать прикладную часть, а затем период, когда мои мысли лучше всего описать фразой: «Я действительно настолько глуп для этого?» (вполне вероятно), потому что обычно документация, демо и код не совсем совпадают или имеют смысл, компонент совместной работы на сервере не запускается и встречаются пограничные ситуации, когда более двух пользователей вводят одно и то же слово, и… на этом всё заканчивается (
всплыл, хватая ртом воздух
).

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

Рис. 1. Прыжок

Дело в том, что в 2020 году я был так взволнован перспективами одного алгоритма (разновидность CRDT), описанного в исследовательской статье, что потратил несколько дней и реализовал его на JavaScript, только чтобы узнать, что в самой научной статье есть пограничная ситуация, для которой не приведено решения (хорошо… но может всё-таки?). Я в то время обратился к автору, но не получил ответа, и обнаружил, что эта конкретная пограничная ситуация рассмотрена в аналогичном алгоритме другой командой, но чёрт, из-за этих тонкостей в реализации, возможно, я мог бы перенести его на Lisp… ТАК, СТОП! Что здесь происходит? Я, конечно, не хочу внедрять новый алгоритм из исследовательской работы и исправлять его проблемы! Что я делаю, как я сюда попал? Давайте перемотаем обратно!

То, что мне (и, вероятно, вам тоже, дорогой читатель) действительно нужно — это редактор plug-and-play, готовый продукт

. Который решает проблему совместной работы в реальном времени. Который позволяет нескольким подключённым пользователям за тысячи миль друг от друга редактировать структурированный документ, нажимая клавиши на клавиатурах, и видеть изменения друг друга на своих экранах. Вот и всё.
Однако редакторы — это сложно…
и я никак не мог найти такого инструмента.

До сих пор.

Наступил 2020 год (зуд вернулся с силой

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

Но редакторов два, и нужно сделать выбор — было бы неплохо объективно рассмотреть, какой из них действительно лучше подходит. Предлагаю глубоко научную систему классификации со следующими категориями (используя киви в качестве стандартной единицы добра):

  1. Открытая
    лицензия: добавляет 1 киви (это также критерий исключения)
  2. Поддержка изображений
    : добавляет 1 киви
  3. Поддержка таблиц
    : добавляет 1 киви
  4. Поддержка списков
    : добавляет 1 киви
  5. Поддержка математики
    : добавляет 1 киви
  6. Поддержка сотрудничества в реальном времени
    : добавляет 1 киви
  7. Доступные серверные компоненты
    : 1 киви
  8. Поддержка удалённого курсора
    и выделения: 1 киви (то есть вы можете видеть курсоры других пользователей)
  9. Работа в офлайне
    : 1 киви (это довольно сложно определить)
  10. Опыт
    работы в продакшне: 1 киви
  11. Поддержка мобильных устройств
    : 1 киви

С такой системой подсчёта очков редактор может получить максимум 11 киви-единиц добра. Давайте приступим!

Рисунок 2. Интерфейс CKEditor 5 (один из возможных вариантов), источник
Начнём с CKEditor 5, последней версии из большой линейки качественных редакторов. Он прекрасен. Я знаю, знаю, что это не критерий, и он в реальности

не имеет значения (и мы можем даже не согласиться), но я просто должен был сказать о его красоте. Итак, этот редактор берёт много киви: он лицензирован под GPL (некоторое обсуждение ограничений здесь), (+1), поддерживает изображения, таблицы, списки (+3), математика поддерживается плагином (+1) и он также поддерживает совместную работу в реальном времени с удалённым курсором и выделениями (+2). Создатели CKEditor написали удивительный подробный пост в блоге о том, как они его разработали с помощью операционных преобразований.

Тем не менее, я не смог найти необходимую реализацию сервера

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

Уровень офлайновой поддержки трудно определить, но похоже, что она не совсем полная (например, редактор выдерживает ненадолго прерванное подключение, но не несколько дней работы в автономном режиме). Наверное, половина киви? То же самое касается мобильной поддержки, там также ведётся работа по полной поддержке (+0,5). И последний момент, CKEditor, безусловно, используется в продакшне, но я не смог найти список продуктов на его основе (+0,5).

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

Полная оценка: 8,5/11

Рис. 3. Atlaskit Editor от Atlassian
Около года назад Atlassian запустила систему Atlaskit Design с открытым исходным кодом, и с ней пришло много

вкусностей, в том числе полноценный готовый к использованию редактор на основе ProseMirror.
Я уже чувствую, что это может быть тот редактор, который мы искали!
Он выпущен под лицензией Apache 2.0, по мнению многих, очень разрешительной лицензией open source (+1 киви). Он не только поддерживает изображения, таблицы и списки, но поддерживает их исключительно хорошо (+3 киви)! Реализация таблиц, чего очень не хватает большинству редакторов, тут выполнена прекрасно:

Рис. 4. Управление таблицами в Atlaskit Editor

К сожалению, математика не поддерживается, но сам редактор основан на ProseMirror, так что не должно стать проблемой добавить к нему существующее решение (+0,5). Он определённо поддерживает совместную работу в реальном времени с удалёнными курсорами и выделениями (+2), это из лучших примеров UI такой поддержки, какие я когда-либо видел (например, удалённые курсоры затемняются, если перекрываются с вашими собственными, и другие прекрасные детали реализации). Кроме того, из моего тестирования поддержка работы в офлайне кажется очень прочной (+1) — вероятно, это связано с подходом «центральной компетенции», который использует для совместной работы ProseMirror. Ничего себе, мы уже добрались до 7,5 киви, а ещё много пунктов! Вперёд!

К сожалению, именно здесь мы немного сталкиваемся с суровой реальностью. Как и в CKEditor, здесь нет доступной серверной реализации для совместной работы в реальном времени. Лентяи. Крупный облом. Интересно, можно ли это исправить?..

Во всяком случае, если продолжать спускаться по критериям, то всё остальное достойно киви: он абсолютно точно используется в продакшне (миллионы пользователей), и у него есть мобильная поддержка (+2). Как раз когда я собирался объявить победителя (в общей сложности 9,5 киви) и опубликовать этот пост, появилось что-то ещё. Оказывается, логотипы и значки, используемые в редакторе, и многие другие компоненты Atlaskit лицензированы под очень ограничительной лицензией ADG, в которой говорится, что вы не можете использовать их за пределами вселенной Atlassian. Однако те же иконки широко используются и плотно интегрированы в редактор. Крупный облом номер два, и я забираю у них киви. Мы вернулись к 8,5, и если вы ведёте подсчёт, то видите, что результат теперь одинаковый. И он окончательный.

Вот если бы что-то сделать с этими иконками…

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

Поэтому сначала я разработал серверную часть

(на основе PostgreSQL, фреймворке PubSweet и смеси REST/WebSockets), код доступен здесь. Он довольно простой, но выполняет свою работу и обеспечивает сохраняемость документов и канал связи в реальном времени. Удивительно, но благодаря огромному сообществу ProseMirror я смог выяснить, как всё должно работать, не имея точной спецификации интерфейса (+1 киви).

А затем я заменил иконки

, используемые редактором, значками из набора Feather. В частности, пришлось заменить три пакета. Поскольку лицензия ADG, среди прочего, запрещает любые производные работы, то эти пакеты нужно было переделывать с нуля. Вероятно, из-за этого потерялись некоторые функции, в основном, с точки зрения доступности для людей с ограниченными возможностями, но зато создана хорошая открытая база для дальнейшего развития. Например, в некоторых случаях для значков отсутствуют лучшие альтернативы, так что если вы хотите внести свой вклад в этот проект, вот вам первая проблема (+1 киви)!

Всё это означает, что теперь мы всего в половине киви от идеального результата (но мы, вероятно, сможем справиться с математикой). Свершилось то, во что я не верил, когда начинал это путешествие. Это также означает, что у нас есть явный победитель в этой битве, и в конечном итоге Atlaskit Editor победил благодаря разнообразному, открытому и полезному сообществу ProseMirror

. Ознакомьтесь с документацией проекта для получения инструкций, с чего начинать. Я считаю, что если вы начинаете новый проект и рассматриваете возможность сотрудничества в реальном времени, это отличное место для начала, даже со всеми оговорками.


Рис. 5. Демонстрация возможностей редактирования в режиме реального времени в Atlaskit Editor
Итоговый (исправленный) результат: 10,5/11

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

Рис. 6. Редактор Wax (текстовый процессор на основе ProseMirror)

Первый — это Wax

(назван в честь древних восковых табличек) от Coko Foundation. Этот текстовый процессор сначала сделали на библиотеке Substance (репозиторий), а теперь перестроили под ProseMirror (репозиторий). Он исключительно упакован функциональностью. Это не совсем те функции, за которые мы даём киви, но тем не менее это отличные функции. Wax изначально построен для вёрстки книг, он поддерживает заметки (нумерованные аннотации, распространённые в книгах), историю изменений, поиск и замену, орнаменты и другие. Может, за это давать апельсины ? В этом случае Wax получит 4 киви (открытая лицензия, изображения, списки, использование в продакшне) и пару апельсинов, возможно, четыре. . Это много фруктов!

Рис. 7. Texture, редактор на основе Substance
Наконец, у нас есть Texture, очень специфический, профессиональный (но с открытым исходным кодом) редактор для создания научного контента в формате JATS (стандарт XML для журнальных статей). Если тут поупражняться в подсчёте фруктов, у нас почти наверняка закончатся пальцы: открытая лицензия, таблицы, изображения, глубокая поддержка математики, ссылки и перекрёстные ссылки, списки, поддержка метаданных, список продолжается! Повторяю, и Wax, и Texture — замечательные редакторы

, и единственное, что удерживает их от максимального количества киви — это отсутствие функций совместного редактирования в реальном времени, чему посвящена эта статья.
Если вы создаёте систему, в которой ключевым компонентом является совместное редактирование в реальном времени, вы выбрали правильное время. В прошлом году ландшафт созрел, и теперь здесь появились почти plug-and-play открытые решения. Возможно, с вашей помощью ровно через год у нас будет целый набор открытых проектов. И возможно, только возможно, мы также будем использовать инструменты, построенные поверх этих открытых слоёв, даже не зная об этом.

  1. Данные, пронизанные историей: причинные деревья и операционные CRDT
  2. Уроки из создания текстового редактора в режиме реального времени
  3. Пример текстового процессора HTML
  4. Совместное редактирование в ProseMirror
Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]