WackoWiki

WackoWiki (произносится как "Ва́ккоВики", в документации часто используется просторечное название "Ва́ка") — вики-движок на PHP. В настоящий момент выпущена версия R6.1.

WackoWiki
Логотип программы WackoWiki
Скриншот программы WackoWiki
Тип Язык разметки
Разработчик WackoWiki Team
Написана на PHP[2] и JavaScript
Операционная система Кроссплатформенное программное обеспечение
Языки интерфейса несколько языков[d], английский, французский, немецкий, русский, испанский, болгарский, датский, греческий, эстонский, персидский, хинди, венгерский, итальянский, японский, корейский, нидерландский, польский, португальский, упрощённый китайский и традиционный китайский[d]
Первый выпуск 25 марта 2003[1]
Последняя версия
Репозиторий github.com/WackoWiki/wac…
Лицензия Лицензия BSD
Сайт wackowiki.org

Основные особенности править

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

Выбранный в движке способ ввода и редактирования текстов типичен для вики-движков: оформление текста делается с помощью несложной системы вики-разметки[4]. Синтаксис разметки минимизирует переключение раскладок клавиатуры. Особенностью данной реализации является автоматический корректор типографики — некоторые действия по оформлению текста при выводе производятся автоматически, без преобразования исходного текста страницы (например, знак «минус», помещённый в тексте между словами и отделённый от них пробелами, автоматически преобразуется в типографское длинное тире, обычные парные кавычки — в кавычки-"ёлочки"). WikiEdit — javascript-расширение обычного поля ввода, позволяет вводить вики-разметку при помощи «горячих клавиш». Реализована довольно широкая номенклатура «форматеров» — средств для структурированного вывода текстов в различных формализованных видах, таких как логи IM, исходные тексты программ на языках PHP и SQL и т. п.

Для упрощения оформления ссылок на вики-страницы в движке поддерживается соглашение, по которому выражение, записанное в стиле CamelCase (например, «ВотТакоеСлово»), считается именем страницы и автоматически преобразуется при выводе в ссылку на страницу с соответствующим именем. Это упрощает оформление (чтобы поставить ссылку на страницу с подобным именем, не нужно никакой разметки), что провоцирует соответствующее именование страниц на вики-сайтах, поддерживаемых данным движком.

Для структуризации набора страниц используется механизм «кластеров». Страницы организуются в структуру, подобную древовидной файловой системе; присваиванием новой странице соответствующего имени она может быть помещена в нужное место этой структуры. Поддерживается два вида синтаксиса для описания страниц в кластере: url-like и twiki-like.

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

Система многоязычна — на данный момент доступны 20 языков (bg, da, de, el, en, es, et, fa, fr, hi, hu, it, ja, ko, nl, pl, pt, ru, zh-tw, zh).
Использует кодировку UTF-8.

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

История править

Движок WackoWiki был создан на основании более раннего проекта WakkaWiki (разработчики Carlos Zottman и Hendrik Mans), предназначенного для совместной разработки в рамках небольших intranet-проектов. Разработка исходного движка была остановлена на стадии версии 0.1.2, в 2003 году. На его основе было запущено несколько (не менее шести) fork-проектов, одним из которых и стал WackoWiki.

  • 30 апреля 2003 года вышла первая версия WackoWiki, получившая сразу номер 3.
  • 31 июля 2004 года был завершён четвёртый выпуск WackoWiki.
  • 27 марта 2005 года была выпущена версия R4.2
    После выхода версии 4.2 разработчики сфокусировались на новом проекте — NPJ, активность разработки WackoWiki резко снизилась. Некоторое время изменения в SVN-репозитории проекта ещё делались, но новых официальных версий так и не появилось. В настоящее время команда прекратила и разработку NPJ.
  • В 2007 году проект был подобран maintainer-ом из Германии, сменил сайт с wackowiki.com на wackowiki.org, и теперь WackoWiki разрабатывает международная команда.
  • 28 сентября 2008 года выпущена версия RC4.3 (статус — release candidate), не имеющая принципиальных отличий от 4.2, а содержащая лишь исправления некоторых ошибок.
  • 20 марта 2011 года выпущена финальная версия R4.3.
  • На конец 2011 года был заявлен выпуск версии 5.0. Фактически версия 5.0RC3 была доступна для скачивания с 20 марта 2012 года. Основные заявленные изменения: совместимость с PHP 5.3, нормализация базы данных, перенос изменений из проекта openSpace (также вики-движок, форк-проект WackoWiki 4.2, добавлен ряд новых инструментов, в частности, панель администратора.
  • 22 апреля 2012 года выпущен релиз версии 5.0, а 17 июня 2012 года — 5.1 (с минимальными исправлениями).
  • 12 июля 2014 года выпущена версия R5.4.
  • 8 февраля 2018 года выпущена версия R5.5.
  • 15 декабря 2019 года выпущена версия R6.0. Добавлена поддержка Юникода.
  • 4 сентября 2021 года выпущена версия R6.1. Добавлена поддержка PHP 8, внедрён адаптивный интерфейс.[5]

Примечания править

  1. https://wackowiki.org/doc/Dev/ChangeLog/VersionHistory
  2. The wackowiki Open Source Project on Open Hub: Languages Page — 2006.
  3. Release 6.1.25 — 2024.
  4. Разметка Ва́ккоВики. Дата обращения: 22 мая 2022. Архивировано 11 января 2022 года.
  5. История версий. Дата обращения: 13 января 2022. Архивировано 13 января 2022 года.

Ссылки править

Недостатки править

  • Наследование ролей не поддерживается.
  • Наследование настроек прав на ветку документов отсутствует, вместо него права родительского документа копируются в дочерний на момент его создания, так что впоследствии изменение прав на статью-родителя не отражается на дочерних материалах.