- Wackowiki
-
WackoWiki Файл:Wackowiki logo.pngЛоготип WackoWikiТип Язык разметки Разработчик WackoWiki Team ОС Кроссплатформенное программное обеспечение Версия 4.3rc — 28.09.2008 Лицензия Лицензия BSD Сайт http://wackowiki.org WackoWiki — это проект создания вики-движка на языке
Содержание
Основные особенности
Основное предполагаемое применение, на которое рассчитан движок — совместная работа группы над некоторым проектом, представляющим собой набор совместно редактируемых документов. В связи с этим в движке реализован достаточно мощный механизм разграничения прав, позволяющий ограничивать возможности пользователей по воздействию на документы (создатель страницы и администратор системы имеют возможность для операций чтения, изменения и комментирования её содержимого назначить список групп и конкретных пользователей, которым данная операция доступна). Также движок поддерживает автоматическое уведомление пользователей об изменениях в наблюдаемых страницах.
Выбранный в движке способ ввода и редактирования текстов типичен для вики-движков: оформление текста делается с помощью несложной системы вики-разметки. Синтаксис разметки минимизирует переключение раскладок клавиатуры. Особенностью данной реализации является автоматический корректор типографики — некоторые действия по оформлению текста при выводе производятся автоматически, без преобразования исходного текста страницы (например, знак «минус», помещённый в тексте между словами и отделённый от них пробелами, автоматически преобразуется в типографское длинное тире, обычные парные кавычки — в кавычки-"ёлочки"). WikiEdit — javascript-расширение обычного поля ввода, позволяет вводить вики-разметку при помощи «горячих клавиш». Реализована довольно широкая номенклатура «форматтеров» — средств для структурированного вывода текстов в различных формализованных видах, таких как логи IM, исходные тексты программ на языках SQL и т. п.
Для упрощения оформления ссылок на вики-страницы в движке поддерживается соглашение, по которому несколько расположенных слитно слов, каждое из которых записано с прописной буквы (например, «ВотТакоеСлово»), считается именем страницы и автоматически преобразуется при выводе в ссылку на страницу с соответствующим именем. Это упрощает оформление (чтобы поставить ссылку на страницу с подобным именем, не нужно никакой разметки), что провоцирует соответствующее именование страниц на вики-сайтах, поддерживаемых данным движком.
Для структуризации набора страниц используется механизм «кластеров». Страницы организуются в структуру, подобную древовидной файловой системе; присваиванием новой странице соответствующего имени она может быть помещена в нужное место этой структуры. Поддерживается два вида синтаксиса для описания страниц в кластере: url-like и twiki-like.
Механизм «акций» (по сути — макросов, помещаемых в текст и при выводе автоматически заменяемых на определяемую акцией информацию) позволяет автоматически выводить на страницы служебную информацию, например, формировать оглавления страниц, списки содержимого кластеров, перекрёстные ссылки и многое другое.
Система многоязычна — на данный момент доступны 14 языков (en, ru, da, de, el, pl, nl, fr, it, bg, et, es, mo и pt).
История
Движок WackoWiki был создан на основании более раннего проекта WakkaWiki (разработчики Carlos Zottman и Hendrik Mans), предназначенного для совместной разработки в рамках небольших intranet-проектов. Разработка исходного движка была остановлена на стадии версии 0.1.2, в 2003 году. На его основе было запущено несколько (не менее шести) fork-проектов, одним из которых и стал WackoWiki.
- 30 апреля 2003 года вышла первая версия WackoWiki, получившая сразу номер 3.
- 31 июля 2004 года был завершён четвёртый выпуск WackoWiki.
- 27 марта 2005 года была выпущена версия R4.2
- 28 сентября 2008 года выпущена версия RC4.3 (статус — release candidate) — последняя на текущий момент. Финальная версия так и не была выложена, на сайте разработчиков вместо неё приведена рекомендация использовать последнюю RC-версию.
После выхода версии 4.2 разработчики сфокусировались на новом проекте — SVN-репозитории проекта ещё делались, но новых официальных версий так и не появилось, хотя в 2008 году была выпущена версия 4.3 rc, не имеющая принципиальных отличий от 4.2, а содержащая лишь исправления некоторых ошибок. В настоящее время команда прекратила и разработку NPJ.
Ссылки
- wackowiki.org на русском
- WackoWiki.com
- архив рассылки WackoWiki Devevelopment на googlegroups.com
- зеркало архива на NNTP)
Недостатки
Система распределения прав, матричного типа, на три действия (часто этого недостаточно, например нельзя разрешить или запретить создавать дочерние статьи, перемещать статью и пр.). Наследование ролей не поддерживается. Наследование привилегий на ветку документов присутствует, но только на момент создания нового дочернего материала. В последующем, изменение прав на родителя не отражается на дочерних материалах.
Повышенное ресурсопотребление при выводе дочерних статей. Когда требуется загрузить всего один уровень дочерних статей, в память загружается все поддерево, и потом усекается (средствами PHP), что затрудняет обработку большого количества древовидных данных. Это обусловлено выбранным способом хранения дерева - Materialized Path c хранением путей в строковом формате.
Список вики-движков Clearspace · Confluence · JAMWiki · JSPWiki · Kerika · Mindquarry · SnipSnap · Traction TeamPage · XWiki
.NET Framework FlexWiki · WWWiki · Perspective · ScrewTurn Wiki
Lisp CLiki · Svnwiki
Instiki · Pimki · Ruwiki · Redmine
Wikimedia Foundation. 2010.