MoínMoín
La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la
versión revisada el 11 de julio de 2019; las comprobaciones requieren
4 ediciones .
MoinMoin es un motor wiki potente, fácil de usar y extensible escrito en Python . MoinMoin es un software libre con licencia GNU GPL .
El nombre proviene del saludo frisón "Moin" [2] .
MoinMoin utiliza un sistema de archivos para almacenar información [3] .
Puede funcionar con casi cualquier servidor web que admita CGI / FastCGI / WSGI [4] , o sin él (con un servidor web integrado basado en Werkzeug [5] ).
Historia
MoinMoin apareció alrededor de 2000 [6] . Inicialmente el proyecto fue desarrollado por Jürgen Hermann, en este momento dejó el proyecto y el desarrollo lo lleva a cabo un equipo de personas [7] encabezado por Thomas Waldmann (Thomas Waldmann). MoinMoin se basó en el motor PikiPiki y MoinMoin ha evolucionado mucho desde entonces. Actualmente, MoinMoin se utiliza en varios sitios y como wiki corporativo y personal en numerosos lugares [8] .
Arquitectura
MoinMoin tiene una arquitectura bastante flexible, lo que resulta en un rico conjunto de funciones integradas y facilidad de extensibilidad. Los componentes clave de la wiki de MoinMoin son:
- Servidor. Procesa solicitudes y llama a los controladores apropiados.
- Controladores de acciones. En función de los parámetros de solicitud y configuración, se implementan varias funciones de wiki.
- Almacenamiento y caché. Le permiten almacenar varios tipos de datos (principalmente páginas wiki y archivos adjuntos, también contienen otros tipos de objetos, como diccionarios y grupos ) y brindan capacidades de almacenamiento en caché (el principal método de almacenamiento en caché es pickle).
- Mecanismo de autenticación. Permita que los usuarios se autentiquen utilizando varios métodos (autenticación HTTP, LDAP, cookies PHP, ...), consulte http://master19.moinmo.in/HelpOnAuthentication para obtener más información
- El mecanismo de autorización y diferenciación de derechos de acceso (política de seguridad). Proporcione varios métodos de control de acceso, en primer lugar, ACL. Consulte también http://master19.moinmo.in/AccessList Help y http://master19.moinmo.in/How To Set Up/Access Rules .
- Mecanismos de notificación. Implemente soporte para diferentes tipos de notificaciones cuando ocurran varios eventos, consulte http://master19.moinmo.in/NotificationHelp .
- Manejadores de formato de entrada (analizadores, analizadores). Llamado para procesar una página o bloque de texto en algún formato de entrada. Se puede complementar con analizadores personalizados.
- Manejadores de formato de salida (formateadores, formateadores). Lo llaman los analizadores para generar texto en el formato de salida.
- Comandos macro (macro). Puede usarse en el cuerpo de una página para generar contenido arbitrario y extender la sintaxis de esta manera.
Cada uno de los sistemas descritos se implementa en forma de núcleo principal y módulos que implementan funcionalidades específicas, por lo tanto, cada uno de ellos se puede complementar con módulos de terceros, lo que brinda cierta flexibilidad.
Beneficios y características
- Puede funcionar en casi cualquier sistema operativo y con muchos servidores web ( Apache , IIS , WebLogic , Lighttpd , etc.).
- No requiere la instalación de software adicional, como un sistema de gestión de bases de datos o un sistema de control de versiones [9]
- Gracias al servidor web incorporado, se puede usar como un motor wiki portátil multiplataforma ( un wiki que siempre está contigo, independientemente del sistema operativo instalado )
- Tiene un editor WYSIWYG completo incorporado ( CKeditor integrado ), que le permite editar el marcado wiki de una manera familiar para los usuarios comunes.
- Puede utilizar el motor de búsqueda Xapian , que ofrece funciones como la indexación de varios tipos de contenido (incluidos varios formatos de archivos adjuntos; la indexación de archivos en Open Document Format , MS Office , PDF , varios formatos de texto, los metadatos EXIF son actualmente compatible con imágenes JPEG y cadenas de texto en archivos binarios), búsqueda morfológica, búsqueda de archivos por tipo MIME y una serie de otros
- Tiene soporte incorporado para applets de Java para crear ilustraciones en un wiki - AnyWikiDraw y TWikiDraw [10]
- La compatibilidad con mecanismos para controladores de formato de entrada y salida ("analizador" y "formateador") le permite usar varias sintaxis de marcado en el wiki en el cuerpo de las páginas (actualmente, además de la sintaxis nativa (enlace no disponible) , sintaxis criolla , reStructured Formato de texto , las páginas XML son compatibles con XSLT , se muestran como tablas CSV , resaltado de sintaxis para varios formatos de texto [11] , consulte http://master19.moinmo.in/HelpOnParsers para obtener detalles ) y exporta páginas en varios formatos (además de HTML, es posible exportar a texto sin formato y docbook). Además, hay repositorios de analizadores y formateadores de terceros que permiten admitir otros formatos en la wiki.
- Tanto la interfaz como las páginas del sistema y las páginas de ayuda han sido traducidas a una gran cantidad de idiomas (más de 30). Además, MoinMoin tiene soporte para wikis multilingües (wikis que usan múltiples idiomas para las páginas [12] ). En las versiones 1.8.6 y 1.9 se ha actualizado la localización rusa.
- Soporte para listas de acceso y diversas políticas de seguridad basadas en ellas [13] .
- Compatibilidad con sintaxis de enlaces gratuitos y enlaces en CamelCase . Soporte para incrustar varios formatos de archivo (imágenes, audio, video, SWF , otras páginas) en el cuerpo de la página (ver http://master19.moinmo.in/Cómo vincular páginas para más detalles ).
- Mecanismos de protección contra spam : tanto basados en listas negras (actualizadas de forma centralizada) como mediante texto captcha .
- Mecanismo anti- inundación : es posible limitar la cantidad de solicitudes para ciertas acciones en un momento determinado para una IP o usuario.
- Soporte para sincronizar el contenido de partes de múltiples wikis a través del mecanismo XML RPC [14] .
- La posibilidad de suscribirse a notificaciones sobre diversas acciones realizadas con las páginas (editar, renombrar, adjuntar un archivo, eliminar, ...) por correo o vía XMPP [15] .
Desventajas
- Dado que la información se almacena en archivos, MoinMoin se centra en un número relativamente pequeño de páginas (según los desarrolladores, no más de 10.000 páginas). Además, debido a la forma en que los nombres de página se asignan a los nombres de directorio para almacenarlos, existen límites en la longitud de los nombres de página impuestos por el sistema de archivos en uso.
- No es compatible con la edición de secciones [16] .
- No hay soporte de sistema de versión para archivos adjuntos [17] .
MoinMoin 2.0
Desde 2007 , se ha estado trabajando en un cambio fundamental en la arquitectura del motor, este proyecto recibió el nombre en clave MoinMoin 2.0. La rama 1.9, según los desarrolladores, es la última entre 1.x. La versión 2.0 se planeó originalmente para su lanzamiento en 2010-2011, pero aún se desconoce la fecha de lanzamiento para noviembre de 2014.
Las características clave de la versión 2.0 son las siguientes.
- Se modificó la forma de almacenar las páginas.
- Cada elemento (página o archivo adjunto) se almacena en un almacenamiento común unificado, con cada elemento (Item) asociado al historial de versiones y metadatos [18] .
- Soporte para varias formas de almacenar contenido wiki: soporte anunciado actualmente para hg , varias bases de datos SQL a través de SQLAlchemy , almacenamiento de archivos 1.x y un nuevo formato de almacenamiento de archivos [19] .
- Conversión de elementos de formato de entrada a formato de presentación usando wiki DOM .
- Temas de apariencia basados en Jinja 2.
- Migración a CKEditor como editor WYSIWYG .
- Reelaboración del sistema de módulos y XML RPC.
Se ha implementado una instalación de prueba de MoinMoin 2.0
en http://test.moinmo.in/ (enlace descendente) .
Enlaces
Notas
- ↑ https://sourceforge.net/projects/moin/files/moin/0.1/
- ↑ Ver también http://moinmo.in/MoinMoinEtymology Archivado el 2 de febrero de 2009 en Wayback Machine .
- ↑ La versión 2.0 está planificada Copia de archivo fechada el 13 de septiembre de 2009 en Wayback Machine , soporte para varios tipos de almacenamiento: varias bases de datos SQL usando SQLAlchemy , hg , etc.
- ↑ Ver [1] Archivado el 19 de septiembre de 2009 en Wayback Machine , [2] Archivado el 10 de marzo de 2009 en Wayback Machine
- ↑ Antes de la versión 1.9, se usaba el servidor web Twisted http
- ↑ Información del archivo docs/CHANGES sobre la versión 0.1 (enlace descendente) . Fecha de acceso: 18 de enero de 2010. Archivado desde el original el 27 de diciembre de 2015. (indefinido)
- ↑ Ver http://moinmo.in/MoinCoreTeamGroup Archivado el 12 de octubre de 2009 en Wayback Machine .
- ↑ Esto se evidencia, en particular, en las páginas personales de los participantes en el sitio web de MoinMoin, donde muchos de sus propietarios indican que usan MoinMoin como un wiki corporativo.
- ↑ Al mismo tiempo, para admitir algunas funciones adicionales, como la búsqueda de Xapian . Archivado el 7 de agosto de 2011 en Wayback Machine , compatibilidad con DocBook y RST , MS Office e indexación de archivos PDF. Se requieren programas y módulos de Python.
- ↑ Ver http://master19.moinmo.in/HelpByDrawings
- ↑ En la versión 1.9, el resaltado de sintaxis se implementa usando Pygments [3] Archivado el 5 de enero de 2012 en Wayback Machine , lo que permite el resaltado de sintaxis para más de 150 formatos. Archivado el 5 de enero de 2012 en Wayback Machine .
- ↑ Ver http://master19.moinmo.in/Ayuda de soporte de idiomas
- ↑ Ver http://master19.moinmo.in/AccessList Help , http://master19.moinmo.in/AutoAdmin Help , http://master19.moinmo.in/Cómo configurar/Reglas de acceso
- ↑ Ver http://master19.moinmo.in/SyncHelp
- ↑ ver http://master19.moinmo.in/HelpOnAlert y http://master19.moinmo.in/HelpOnConfiguration/EmailSupport Archivado el 24 de abril de 2011 en Wayback Machine .
- ↑ La página de discusión de solicitud de función Archivada el 23 de febrero de 2010 en Wayback Machine tiene varios parches de terceros para varias versiones de MoinMoin que implementan esta función en diversos grados. Además, se asigna una recompensa por su implementación completa para fines de 2010. Archivado el 29 de noviembre de 2010 en Wayback Machine .
- ↑ Planeado para habilitarse en MoinMoin 2.0 unificando archivos y páginas y admitiendo un sistema de control de versiones para ellos
- ↑ Ver . Consultado el 11 de diciembre de 2009. Archivado desde el original el 13 de septiembre de 2009. (indefinido)
- ↑ Ver http://moinmo.in/MoinMoin2.0#Storage_API.2C_misc._storage_backends Archivado el 9 de noviembre de 2009 en Wayback Machine .