VisualEditor
VisualEditor — это расширение для MediaWiki, предоставляющее визуальный (WYSIWYG) редактор, позволяющий редактировать страницы без необходимости изучения вики-разметки. В отличие от классического редактора исходного кода, VisualEditor отображает форматирование текста (жирный шрифт, курсив, заголовки, списки) в режиме реального времени, делая процесс редактирования интуитивно понятным для пользователей, не знакомых с синтаксисом MediaWiki. Разработка ведётся Фондом Викимедиа (Wikimedia Foundation, Inc. — организация, признанная в РФ нежелательной, деятельность запрещена) и сообществом разработчиков.
История
Предпосылки и начало разработки
Идея создания визуального редактора для MediaWiki обсуждалась с середины 2000-х годов. Традиционный редактор вики-текста требовал от пользователей знания разметки, что создавало барьер для новых участников. В 2010 году Фонд Викимедиа начал проект «VisualEditor» в рамках стратегии по упрощению редактирования и привлечению более широкой аудитории. Первоначальная разработка велась компанией Wikia (ныне Fandom) и Фондом Викимедиа.
Запуск и развитие
В 2011 году была выпущена первая альфа-версия для тестирования. В 2012 году VisualEditor стал доступен как опция для зарегистрированных пользователей в английской Википедии. В 2013 году он был включён по умолчанию для всех пользователей, однако из-за проблем с производительностью и совместимостью (особенно с шаблонами и сложными таблицами) его использование было ограничено. В 2014 году была выпущена стабильная версия 1.0. В последующие годы разработчики сосредоточились на улучшении поддержки шаблонов, математических формул, ссылок и мультимедиа.
Современное состояние
На 2024 год VisualEditor является основным редактором по умолчанию для большинства проектов Викимедиа, включая Википедию, Викиучебник и Викиновости. Он доступен в двух режимах: визуальный (редактирование как в текстовом процессоре) и редактор исходного кода (с подсветкой синтаксиса, но в современном интерфейсе). Разработка продолжается в рамках проекта «Editing team» Фонда Викимедиа.
Архитектура и принцип работы
Основные компоненты
VisualEditor состоит из нескольких ключевых модулей:
- Parsoid — сервис, преобразующий вики-текст в HTML и обратно. Это центральный элемент, обеспечивающий двустороннюю конвертацию между разметкой MediaWiki и DOM-деревом, которое отображается в редакторе.
- CE (ContentEditable) — модуль, реализующий редактирование HTML-документа в браузере с использованием API
contentEditable. - DM (Data Model) — внутренняя модель данных, хранящая структуру документа (абзацы, заголовки, списки, ссылки) в виде графа.
- UI (User Interface) — интерфейс пользователя, включающий панели инструментов, диалоговые окна и всплывающие подсказки.
Процесс редактирования
- При открытии страницы в режиме VisualEditor Parsoid запрашивает HTML-версию вики-текста с сервера.
- Браузер загружает этот HTML в редактор, используя
contentEditable. - Пользователь вносит изменения (форматирование, вставка ссылок, изображений, таблиц).
- При сохранении Parsoid преобразует изменённый HTML обратно в вики-текст, который затем записывается в базу данных MediaWiki.
Преимущества и недостатки
Преимущества:
- Интуитивно понятный интерфейс, не требующий знания вики-разметки.
- Поддержка автодополнения ссылок и категорий.
- Встроенная проверка орфографии.
- Возможность редактирования на мобильных устройствах (специальная версия).
Недостатки:
- Высокая нагрузка на сервер из-за преобразований Parsoid.
- Проблемы с редактированием сложных шаблонов, таблиц и математических формул (хотя поддержка улучшается).
- Зависимость от JavaScript (не работает в браузерах с отключённым скриптами).
- Ограниченная поддержка некоторых расширений MediaWiki.
Возможности и функции
Форматирование текста
VisualEditor поддерживает все основные типы форматирования: жирный, курсив, подчёркнутый, зачёркнутый, надстрочный и подстрочный текст, а также моноширинный шрифт. Доступны стили заголовков (H1–H6), цитаты, списки (нумерованные и маркированные) и отступы.
Работа со ссылками
Редактор позволяет вставлять внутренние ссылки (на другие страницы вики), внешние ссылки, а также ссылки на разделы внутри страницы. При вводе текста ссылки автоматически предлагаются варианты из поиска по вики.
Мультимедиа
Вставка изображений, видео (с YouTube, Vimeo, Wikimedia Commons) и аудиофайлов осуществляется через диалоговое окно, где можно настроить размер, положение, подпись и альтернативный текст. Поддерживается галерея изображений.
Таблицы
VisualEditor позволяет создавать и редактировать таблицы: добавлять/удалять строки и столбцы, объединять ячейки, изменять стили (цвет фона, границы). Однако сложные таблицы с вложенными шаблонами могут отображаться некорректно.
Шаблоны и формулы
Для работы с шаблонами (например, карточки статей) используется специальный диалог, который отображает параметры шаблона в виде формы. Для математических формул используется синтаксис LaTeX, который отображается в реальном времени.
Комментарии и примечания
Редактор поддерживает вставку сносок, примечаний и комментариев (скрытых от читателей, видимых только редакторам).
Применение
В проектах Викимедиа
VisualEditor является основным редактором в большинстве проектов Фонда Викимедиа, включая Википедию (все языковые разделы), Викисловарь, Викиучебник, Викиновости и Викицитатник. По данным Фонда, использование VisualEditor увеличило количество правок от новых участников на 15–20% по сравнению с классическим редактором.
В сторонних вики
Расширение VisualEditor доступно для установки на любых сайтах, использующих MediaWiki. Оно активно применяется в корпоративных вики, образовательных проектах и сообществах, где требуется простота редактирования. Например, его используют такие проекты, как Fandom (ранее Wikia) и некоторые вики-сайты на базе MediaWiki.
В образовании
VisualEditor используется в образовательных программах, где студенты впервые знакомятся с редактированием вики. Благодаря интуитивному интерфейсу, он позволяет сосредоточиться на содержании, а не на технических деталях разметки.
Критика и ограничения
Производительность
Одной из главных проблем VisualEditor является высокая нагрузка на сервер, особенно при редактировании больших статей. Parsoid требует значительных вычислительных ресурсов для преобразования HTML в вики-текст, что может приводить к задержкам при сохранении.
Совместимость с шаблонами
Многие сложные шаблоны (например, информационные карточки, навигационные блоки, шаблоны с условной логикой) отображаются в VisualEditor некорректно. Разработчики постоянно улучшают поддержку, но полная совместимость не достигнута.
Зависимость от JavaScript
VisualEditor полностью зависит от JavaScript, что делает его недоступным для пользователей, отключивших скрипты в браузере, или для устройств с ограниченной поддержкой JavaScript (например, старые мобильные телефоны).
Обучение и адаптация
Опытные редакторы, привыкшие к вики-разметке, часто критикуют VisualEditor за недостаточную гибкость и медленную работу. Многие предпочитают использовать классический редактор исходного кода, который остаётся доступным в качестве альтернативы.
Будущее развитие
Фонд Викимедиа продолжает активную разработку VisualEditor. В планах на ближайшие годы:
- Улучшение поддержки сложных шаблонов и таблиц.
- Оптимизация производительности Parsoid.
- Интеграция с новыми форматами контента (например, интерактивные карты, 3D-модели).
- Разработка мобильной версии редактора с учётом особенностей сенсорных экранов.
- Внедрение машинного обучения для автоматического исправления ошибок форматирования.
Интересные факты
- VisualEditor изначально разрабатывался как альтернатива расширению «FCKeditor» (позже «CKEditor»), которое использовалось в некоторых вики.
- В 2013 году, после включения VisualEditor по умолчанию в английской Википедии, произошёл резкий рост числа правок, но также увеличилось количество ошибок из-за несовместимости с шаблонами.
- Parsoid, лежащий в основе VisualEditor, может использоваться и для других целей, например, для создания статических копий вики-сайтов или интеграции с внешними системами.
- В 2020 году VisualEditor был адаптирован для работы с вики-текстом в режиме «редактор исходного кода» (с подсветкой синтаксиса), что позволило объединить два подхода в одном интерфейсе.
Источники
- Документация расширения VisualEditor на MediaWiki.org
- Официальный блог Фонда Викимедиа (Wikimedia Foundation)
- «VisualEditor: A WYSIWYG Editor for MediaWiki» — статья в журнале «WikiSym» (2012)
- Отчёты разработчиков на Phabricator (проект VisualEditor)
- «The Future of Editing: VisualEditor and Beyond» — презентация на конференции Wikimania (2019)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →