MoinMoin

MoinMoin
MoinMoin
Moinmoin.png
MoinMoinScreenshot.png
Скриншот сайта http://moinmo.in/, работающего под управлением MoinMoin
Тип

Wiki

Разработчики

Thomas Waldmann, Jürgen Hermann, и др.

Написана на

Python

Операционная система

Кроссплатформенное программное обеспечение

Языки интерфейса

более 30 языков, в том числе русский

Последняя версия

1.9.5 (стабильная) (24 сентября 2012)

Лицензия

GNU General Public License

Сайт

http://moinmo.in/

MoinMoin — мощный, простой в использовании и расширяемый вики-движок, написанный на языке Python. MoinMoin — свободное программное обеспечение, распространяемое по лицензии GNU GPL.

Название происходит от приветствия «Moin» во фризском языке[1].

Для хранения информации MoinMoin использует файловую систему[2].

Может работать практически с любым веб-сервером, поддерживающим CGI/FastCGI/WSGI[3], или без него (со встроенным веб-сервером на базе Werkzeug[4]).

Содержание

История

MoinMoin появился в районе 2000 года[5]. Изначально проект разрабатывался Юргеном Херманном (Jürgen Hermann), на данный момент он покинул проект и разработка ведётся командой людей[6], возглавляемой Томасом Вальдманном (Thomas Waldmann). В качестве основы для MoinMoin был использован движок PikiPiki, и MoinMoin сильно эволюционировал с того времени. На данный момент MoinMoin используется на ряде сайтов, а также в качестве корпоративной и персональной вики в множестве мест[7].

Архитектура

MoinMoin имеет достаточно гибкую архитектуру, следствием чего является богатый набор встроенных функций и простота расширяемости. Ключевыми компонентами вики-сервера MoinMoin являются:

  • Сервер. Обрабатывает запросы и вызывает соответствующие обработчики.
  • Обработчики-действия (actions). На основании параметров запроса и конфигурации реализуют различную функциональность вики.
  • Хранилище и кэш. Позволяют хранить различные виды данных (в первую очередь, страницы вики и прикреплённые к ним файлы, также там содержатся другие виды объектов, такие как словари и группы) и предоставляют возможности по кэшированию (основной способ кэширования — pickle).
  • Механизм аутентификации. Позволяют аутентифицироваться пользователям различными способами (HTTP auth, LDAP, PHP cookie, …), подробнее см. http://master19.moinmo.in/ПомощьПоАутентификации
  • Механизм авторизации и разграничения прав доступа (security policy). Обеспечивают различные методы разграничения доступа, в первую очередь, ACL. См. также http://master19.moinmo.in/ПомощьПоСпискамДоступа и http://master19.moinmo.in/КакНастраивать/ПравилаДоступа.
  • Механизмы оповещения. Реализуют поддержку различных видов оповещений при возникновении различных событий, см. http://master19.moinmo.in/ПомощьПоОповещению.
  • Обработчики входных форматов (parsers, парсеры). Вызываются для обработки страницы или блока текста в некоем входном формате. Могут дополняться пользовательскими парсерами.
  • Обработчики выходных форматов (formatters, форматтеры). Вызываются парсерами для генерации текста в выходном формате.
  • Макрокоманды (macro). Могут использоваться в теле страницы для генерации произвольного содержимого и расширения синтаксиса, таким образом.

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

Преимущества и функциональные особенности

  • Может работать практически на любой операционной системе и со многими веб-серверами (Apache, IIS, WebLogic, Lighttpd и др.).
  • Не требует установки дополнительного программного обеспечения, такого как система управления базами данных или система управления версиями[8]
  • Благодаря наличию встроенного веб-сервера может использоваться как кросс-платформенный переносной вики-движок (Вики которая всегда с тобой, вне зависимости от установленной ОС)
  • Имеет встроенный полноценный WYSIWYG-редактор (интегрированный FCKeditor), который позволяет редактировать wiki-разметку привычным для простых пользователей способом
  • Может использовать поисковой движок Xapian, что предоставляет такие возможности, как индексация различных видов содержимого (в том числе различных форматов прикреплённых файлов; на данный момент поддерживается индексирование файлов в форматe Open Document Format, MS Office, PDF, различных текстовых форматов, мета-данных EXIF в изображениях JPEG и текстовых строк в бинарных файлах), морфологический поиск, поиск файлов по типу MIME и ряд других
  • Имеет встроенную поддержку Java-апплетов для создания иллюстраций на вики — AnyWikiDraw и TWikiDraw[9]
  • Поддержка механизмов обработчиков входного и выходного форматов («parser» и «formatter») позволяет использовать на вики различные синтаксисы разметки в теле страниц (на данный момент поддерживаются, помимо собственного синтаксиса, синтаксис Creole, формат reStructured Text, XML-страницы с использованием XSLT, отображение в виде таблиц CSV, подсветка синтаксиса для различных текстовых форматов[10], подробнее см. http://master19.moinmo.in/ПомощьПоПарсерам) и экспортировать страницы в различных форматах (помимо HTML, возможен экспорт в plain text и DocBook). Кроме того, существуют репозитории сторонних парсеров и форматтеров, позволяющих поддерживать другие форматы на вики.
  • Как интерфейс, так и системные страницы и страницы помощи переведены на большое количество языков (более 30). Кроме того, MoinMoin имеет поддержку многоязычных вики (вики, на которых используется несколько языков для страниц[11]). В версиях 1.8.6 и 1.9 русская локализация была обновлена.
  • Поддержка списков доступа и различных политик безопасности на их основе[12].
  • Поддержка как свободного синтаксиса ссылок, так и ссылок в CamelCase. Поддержка встраивания различных форматов файлов (изображения, аудио, видео, SWF, других страниц) в тело страницы (подробнее см. http://master19.moinmo.in/КакСвязыватьСтраницы).
  • Механизмы защиты от спама: как на основе чёрных списков (централизованно обновляемых), так и с использованием текстовой капчи.
  • Механизм защиты от флуда: имеется возможность ограничить количество запросов определённых действий в определённый момент времени для одного IP или пользователя.
  • Поддержка синхронизации содержимого частей нескольких вики посредством механизма XML RPC[13].
  • Возможность подписываться на уведомления о различных действиях, производимых со страницами (правка, переименование, прикрепление файла, удаление, …) по почте или по XMPP[14].

Недостатки

  • Поскольку информация хранится в файлах, MoinMoin ориентирован на сравнительно небольшое количество страниц (по утверждению разработчиков, не более 10 000 страниц). Также, в связи со способом отображения имён страниц в имена директорий для их хранения существуют ограничения на длину имён страниц, накладываемые используемой файловой системой.
  • Не поддерживает редактирование секций[15]
  • Не поддерживается система версий для прикреплённых файлов[16]
  • Проблемы совместимости с Python на 64-битных ОС

MoinMoin 2.0

Начиная с 2007 года, планируется кардинально изменить архитектуру MoinMoin, реализовав её в MoinMoin 2.0. Ветка 1.9, по заявлениям разработчиков, является последней среди 1.x. Версия 2.0 запланирована к выходу на 2010—2011 год.

К ключевым особенностям версии 2.0 следует отнести:

  • Изменённый способ хранения страниц
    • Каждый элемент (страница или прикреплённый файл) хранится в общем хранилище унифицировано, с каждым элементом (Item) связана история версий и метаданные[17].
    • Поддержка различных способов хранения содержимого вики: на данный момент заявлена поддержка hg, различных SQL БД посредством SQLAlchemy, файловое хранилище 1.x и новый формат файлового хранилища[18].
    • Преобразование элементов из входного формата в формат представления посредством wiki DOM.
    • Темы внешнего вида на основе Jinja2.
    • Миграция на CKEditor в качестве WYSIWYG-редактора.
    • Переработка системы модулей и XML RPC.

На сайте http://test.moinmo.in/ развёрнута тестовая установка MoinMoin 2.0.

Ссылки

Примечания

  1. См. также http://moinmo.in/MoinMoinEtymology  (англ.)
  2. В версии 2.0 планируется поддержка различных видов хранилищ: различных SQL БД посредством SQLAlchemy, hg и др.
  3. См. [1]  (англ.), [2]  (англ.)
  4. До версии 1.9 использовался веб-сервер Twisted http
  5. Информация из файла docs/CHANGES о версии 0.1
  6. См. http://moinmo.in/MoinCoreTeamGroup  (англ.)
  7. Об этом свидетельствуют, в частности, персональные страницы участников на сайте MoinMoin, где многие их владельцы указывают, что используют MoinMoin в качестве корпоративной вики
  8. При этом, для поддержки некоторых дополнительных возможностей, таких как поиск Xapian, поддержка DocBook и RST, индексация файлов MS Office и PDF, требуется установка соответствующих программ и модулей Python.
  9. См. http://master19.moinmo.in/ПомощьПоРисункам
  10. В версии 1.9 подсветка синтаксиса реализована посредством Pygments [3], что позволяет подсвечивать синтаксис более чем для 150 форматов
  11. См. http://master19.moinmo.in/ПомощьПоПоддержкеЯзыков
  12. См. http://master19.moinmo.in/ПомощьПоСпискамДоступа, http://master19.moinmo.in/ПомощьПоAutoAdmin, http://master19.moinmo.in/КакНастраивать/ПравилаДоступа
  13. См. http://master19.moinmo.in/ПомощьПоСинхронизации
  14. см. http://master19.moinmo.in/ПомощьПоОповещению и http://master19.moinmo.in/HelpOnConfiguration/EmailSupport  (англ.)
  15. На странице обсуждения запроса о добавлении функции имеется ряд сторонних патчей для различных версий MoinMoin, в различной мере реализующих данную функцию. Кроме того, за реализацию её в полной мере до конца 2010 года назначено вознаграждение.
  16. Планируется разрешить в MoinMoin 2.0 путём унификации файлов и страниц и поддержки системы версий для них.
  17. См.
  18. См. http://moinmo.in/MoinMoin2.0#Storage_API.2C_misc._storage_backends



Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "MoinMoin" в других словарях:

  • Moinmoin — Développeur Jürgen Hermann, Thomas Waldmann Dernière version 1.8.1 (le 2008 …   Wikipédia en Français

  • MoinMoin — Développeur Jürgen Hermann, Thomas Waldmann Dernière version 1.8.5 (2009 09 11) …   Wikipédia en Français

  • MoinMoin — Entwickler: Jürgen Hermann, Thomas Waldmann Aktuelle Version: 1.8.2 (8. Februar 2009) Betriebssystem …   Deutsch Wikipedia

  • MoinMoin — This article is about the wiki software. For the Frisian greeting from which this software takes its name, see Moin. For the Nigerian dish, see Moin moin. Developer(s) Jürgen Hermann Thomas Waldmann Stable release …   Wikipedia

  • MoinMoin — Símbolo de MoinMoin. MoinMoin. El MoinMoin es un software wiki simi …   Wikipedia Español

  • Moinmoin — Moin bezeichnet: „Moin!“, eine norddeutsche Begrüßung MoinMoin, eine Wiki Software Meldewesen Online in Niedersachsen, ein Projekt in Niedersachsen zur Realisierung des elektronischen Meldewesens Moin, eine Schlange der germanischen Mythologie… …   Deutsch Wikipedia

  • MoinMoin Wiki — MoinMoin Entwickler Jürgen Hermann, Thomas Waldmann Aktuelle Version 1.9.3 (27. Juni 2010) Betriebssystem …   Deutsch Wikipedia

  • Comparison of wiki software — The following tables compare general and technical information for a number of wiki software packages. Contents 1 General information 2 Target audience 3 Features 1 4 Features 2 …   Wikipedia

  • Moin Moin — Moin ist ein regional in Teilen Norddeutschlands und dem Süden Dänemarks (Südjütland) verbreiteter Gruß, der prinzipiell zu jeder Tages und Nachtzeit verwendet werden kann. Es gibt allerdings regional unterschiedliche Konventionen zur Verwendung …   Deutsch Wikipedia

  • Moinsen — Moin ist ein regional in Teilen Norddeutschlands und dem Süden Dänemarks (Südjütland) verbreiteter Gruß, der prinzipiell zu jeder Tages und Nachtzeit verwendet werden kann. Es gibt allerdings regional unterschiedliche Konventionen zur Verwendung …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»