MoinMoin
Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de
versiunea revizuită pe 11 iulie 2019; verificările necesită
4 modificări .
MoinMoin este un motor wiki puternic, ușor de utilizat și extensibil , scris în Python . MoinMoin este un software gratuit licențiat sub GNU GPL .
Numele provine de la salutul frison „Moin” [2] .
MoinMoin folosește un sistem de fișiere pentru a stoca informații [3] .
Poate funcționa cu aproape orice server web care acceptă CGI / FastCGI / WSGI [4] , sau fără acesta (cu server web încorporat bazat pe Werkzeug [5] ).
Istorie
MoinMoin a apărut în jurul anului 2000 [6] . Inițial proiectul a fost dezvoltat de Jürgen Hermann, în momentul în care acesta a părăsit proiectul, iar dezvoltarea este realizată de o echipă de oameni [7] condusă de Thomas Waldmann (Thomas Waldmann). MoinMoin s-a bazat pe motorul PikiPiki , iar MoinMoin a evoluat mult de atunci. În prezent, MoinMoin este folosit pe o serie de site-uri și ca wiki corporativ și personal în numeroase locuri [8] .
Arhitectură
MoinMoin are o arhitectură destul de flexibilă, rezultând un set bogat de funcții încorporate și ușurință de extensibilitate. Componentele cheie ale wiki-ului MoinMoin sunt:
- Server. Prelucrează cererile și apelează la manipulatorii corespunzători.
- Manipulatorii de acțiuni. Pe baza parametrilor de solicitare și de configurare, sunt implementate diverse funcționalități wiki.
- Stocare și cache. Acestea vă permit să stocați diferite tipuri de date (în primul rând pagini wiki și fișiere atașate acestora, conțin și alte tipuri de obiecte, cum ar fi dicționare și grupuri ) și oferă capabilități de stocare în cache (metoda principală de stocare în cache este pickle).
- Mecanism de autentificare. Permiteți utilizatorilor să se autentifice folosind diverse metode (autentificare HTTP, LDAP, cookie-uri PHP, ...), consultați http://master19.moinmo.in/HelpOnAuthentication pentru detalii
- Mecanismul de autorizare și diferențiere a drepturilor de acces (politica de securitate). Furnizați diferite metode de control al accesului, în primul rând, ACL. Consultați și http://master19.moinmo.in/AccessList Help și http://master19.moinmo.in/How To Set Up/Access Rules .
- Mecanisme de notificare. Implementați suport pentru diferite tipuri de notificări atunci când apar diverse evenimente, consultați http://master19.moinmo.in/NotificationHelp .
- De gestionare a formatului de intrare (paratoare, analizatoare). Apelat pentru a procesa o pagină sau un bloc de text într-un anumit format de intrare. Poate fi completat cu analizoare personalizate.
- Manageri de format de ieșire (formatoare, formatoare). Apelat de analizatori pentru a genera text în formatul de ieșire.
- Comenzi macro (macro). Poate fi folosit în corpul unei pagini pentru a genera conținut arbitrar și pentru a extinde sintaxa în acest fel.
Fiecare dintre sistemele descrise este implementat sub forma nucleului principal și a modulelor care implementează funcționalități specifice, prin urmare, fiecare dintre ele poate fi suplimentat cu module terțe, ceea ce oferă o anumită flexibilitate.
Beneficii și caracteristici
- Poate funcționa pe aproape orice sistem de operare și cu multe servere web ( Apache , IIS , WebLogic , Lighttpd , etc.).
- Nu necesită instalarea de software suplimentar, cum ar fi un sistem de gestionare a bazelor de date sau un sistem de control al versiunilor [9]
- Datorită serverului web încorporat, poate fi folosit ca motor wiki portabil multiplatformă ( Un wiki care este întotdeauna cu tine, indiferent de sistemul de operare instalat )
- Are un editor WYSIWYG cu drepturi depline încorporat ( CKeditor integrat ), care vă permite să editați marcajul wiki într-un mod familiar pentru utilizatorii obișnuiți
- Se poate folosi motorul de căutare Xapian , care oferă funcții precum indexarea diferitelor tipuri de conținut (inclusiv diferite formate de fișiere atașate; indexarea fișierelor în format Open Document , MS Office , PDF , diverse formate de text, metadatele EXIF sunt acceptat în prezent în imagini JPEG și șiruri de text în fișiere binare), căutare morfologică, căutare de fișiere după tip MIME și o serie de altele
- Are suport încorporat pentru applet-urile Java pentru crearea de ilustrații pe un wiki - AnyWikiDraw și TWikiDraw [10]
- Suportul pentru mecanismele de gestionare a formatului de intrare și ieșire („parser” și „formatter”) vă permite să utilizați diverse sintaxe de marcare pe wiki în corpul paginilor (în prezent, pe lângă sintaxa nativă (link indisponibil) , sintaxa creolă , reStructurată Formatul text , paginile XML sunt acceptate folosind XSLT , afișarea sub formă de tabele CSV , evidențierea sintaxelor pentru diferite formate de text [11] , consultați http://master19.moinmo.in/HelpOnParsers pentru detalii ) și paginile de export în diverse formate (în plus față de HTML, exportul în text simplu este posibil și docbook). În plus, există depozite de analizatoare și formatatoare terțe care permit suportarea altor formate pe wiki.
- Atât interfața, cât și paginile de sistem și paginile de ajutor au fost traduse într-un număr mare de limbi (mai mult de 30). În plus, MoinMoin are suport pentru wiki-uri multilingve (wiki-uri care folosesc mai multe limbi pentru pagini [12] ). În versiunile 1.8.6 și 1.9, localizarea în limba rusă a fost actualizată.
- Suport pentru liste de acces și diverse politici de securitate bazate pe acestea [13] .
- Suport atât pentru sintaxa legăturilor gratuite, cât și pentru link-uri în CamelCase . Suport pentru încorporarea diferitelor formate de fișiere (imagini, audio, video, SWF , alte pagini) în corpul paginii (consultați http://master19.moinmo.in/How to Link Pages pentru detalii ).
- Mecanisme de protecție împotriva spamului : atât bazate pe liste negre (actualizate central), cât și folosind text captcha .
- Mecanism anti- inundare : este posibil să se limiteze numărul de solicitări pentru anumite acțiuni la un anumit moment în timp pentru un IP sau utilizator.
- Suport pentru sincronizarea conținutului părților mai multor wiki-uri prin mecanismul XML RPC [14] .
- Posibilitatea de a vă abona la notificări despre diverse acțiuni efectuate cu pagini (editare, redenumire, atașare a unui fișier, ștergere, ...) prin poștă sau prin XMPP [15] .
Dezavantaje
- Deoarece informațiile sunt stocate în fișiere, MoinMoin se concentrează pe un număr relativ mic de pagini (conform dezvoltatorilor, nu mai mult de 10.000 de pagini). De asemenea, datorită modului în care numele paginilor sunt mapate cu numele de director pentru stocarea lor, există limite privind lungimea numelor de pagini impuse de sistemul de fișiere în uz.
- Nu acceptă editarea secțiunilor [16] .
- Nu există suport de sistem pentru versiunea fișierelor atașate [17] .
MoinMoin 2.0
Din 2007 , se lucrează la o schimbare fundamentală în arhitectura motorului, acest proiect a primit numele de cod MoinMoin 2.0. Ramura 1.9, conform dezvoltatorilor, este ultima dintre 1.x. Versiunea 2.0 a fost inițial planificată pentru lansare în 2010-2011, dar data lansării pentru noiembrie 2014 este încă necunoscută.
Caracteristicile cheie ale versiunii 2.0 sunt următoarele.
- S-a schimbat modul de stocare a paginilor.
- Fiecare element (pagină sau fișier atașat) este stocat într-o stocare comună unificată, cu fiecare element (Articol) asociat istoric al versiunilor și metadate [18] .
- Suport pentru diverse moduri de stocare a conținutului wiki: suport anunțat în prezent pentru hg , diverse baze de date SQL prin SQLAlchemy , stocare fișiere 1.x și un nou format de stocare a fișierelor [19] .
- Conversia elementelor din formatul de intrare în formatul de prezentare folosind wiki DOM .
- Teme de aspect bazate pe Jinja 2.
- Migrare la CKEditor ca editor WYSIWYG .
- Relucrarea sistemului de module și XML RPC.
O instalare de testare a MoinMoin 2.0 a fost implementată
la http://test.moinmo.in/ (downlink) .
Link -uri
Note
- ↑ https://sourceforge.net/projects/moin/files/moin/0.1/
- ↑ Vezi și http://moinmo.in/MoinMoinEtymology Arhivat 2 februarie 2009 la Wayback Machine
- ↑ Versiunea 2.0 este planificată o copie de arhivă din 13 septembrie 2009 la Wayback Machine , suport pentru diferite tipuri de stocare: diverse baze de date SQL folosind SQLAlchemy , hg , etc.
- ↑ Vezi [1] Arhivat la 19 septembrie 2009 la Wayback Machine , [2] Arhivat la 10 martie 2009 la Wayback Machine
- ↑ Înainte de versiunea 1.9, era folosit serverul web Twisted http
- ↑ Informații din fișierul docs/CHANGES despre versiunea 0.1 (downlink) . Data accesului: 18 ianuarie 2010. Arhivat din original la 27 decembrie 2015. (nedefinit)
- ↑ Vezi http://moinmo.in/MoinCoreTeamGroup Arhivat 12 octombrie 2009 la Wayback Machine
- ↑ Acest lucru este dovedit, în special, de paginile personale ale participanților de pe site-ul web MoinMoin, unde mulți dintre proprietarii lor indică că folosesc MoinMoin ca wiki corporativ.
- ↑ În același timp, pentru a susține unele caracteristici suplimentare, cum ar fi căutarea Xapian Arhivată 7 august 2011 pe Wayback Machine , suport DocBook și RST , MS Office și indexarea fișierelor PDF Arhivate 7 august 2011 pe Wayback Machine , instalarea corespunzătoare sunt necesare programe și module Python.
- ↑ Vezi http://master19.moinmo.in/HelpByDrawings
- ↑ În versiunea 1.9, evidențierea sintaxei este implementată folosind Pygments [3] Arhivat 5 ianuarie 2012 la Wayback Machine , permițând evidențierea sintaxei pentru peste 150 de formate Arhivat 5 ianuarie 2012 la Wayback Machine
- ↑ Consultați http://master19.moinmo.in/Language Support Help
- ↑ Consultați http://master19.moinmo.in/AccessList Help , http://master19.moinmo.in/AutoAdmin Help , http://master19.moinmo.in/How To Set Up/Access Rules
- ↑ Vezi http://master19.moinmo.in/SyncHelp
- ↑ vezi http://master19.moinmo.in/HelpOnAlert și http://master19.moinmo.in/HelpOnConfiguration/EmailSupport Arhivat la 24 aprilie 2011 la Wayback Machine
- ↑ Pagina de discuții privind solicitarea de funcții Arhivată pe 23 februarie 2010 la Wayback Machine are o serie de patch-uri de la terți pentru diferite versiuni de MoinMoin care implementează această caracteristică în grade diferite. În plus, o recompensă este atribuită pentru implementarea sa completă până la sfârșitul anului 2010 Arhivată la 29 noiembrie 2010 la Wayback Machine
- ↑ Este planificat să fie activat în MoinMoin 2.0 prin unificarea fișierelor și paginilor și sprijinirea unui sistem de versiuni pentru acestea
- ↑ Vezi . Consultat la 11 decembrie 2009. Arhivat din original la 13 septembrie 2009. (nedefinit)
- ↑ Vezi http://moinmo.in/MoinMoin2.0#Storage_API.2C_misc._storage_backends Arhivat 9 noiembrie 2009 la Wayback Machine