MoinMoin
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 11 juli 2019; kontroller kräver
4 redigeringar .
MoinMoin är en kraftfull, lättanvänd och utbyggbar wikimotor skriven i Python . MoinMoin är fri programvara licensierad under GNU GPL .
Namnet kommer från den frisiska hälsningen "Moin" [2] .
MoinMoin använder ett filsystem för att lagra information [3] .
Kan fungera med nästan vilken webbserver som helst som stöder CGI / FastCGI / WSGI [4] , eller utan den (med inbyggd webbserver baserad på Werkzeug [5] ).
Historik
MoinMoin dök upp runt 2000 [6] . Till en början utvecklades projektet av Jürgen Hermann, i det ögonblick han lämnade projektet och utvecklingen utförs av ett team av människor [7] under ledning av Thomas Waldmann (Thomas Waldmann). MoinMoin var baserad på PikiPiki- motorn och MoinMoin har utvecklats mycket sedan dess. För närvarande används MoinMoin på ett antal webbplatser och som en företags- och personlig wiki på många platser [8] .
Arkitektur
MoinMoin har en ganska flexibel arkitektur, vilket resulterar i en rik uppsättning inbyggda funktioner och enkel utökningsbarhet. De viktigaste komponenterna i MoinMoin-wikin är:
- Server. Behandlar förfrågningar och anropar lämpliga hanterare.
- Åtgärdshanterare. Baserat på begäran och konfigurationsparametrarna implementeras olika wikifunktioner.
- Lagring och cache. De låter dig lagra olika typer av data (främst wikisidor och filer som är kopplade till dem, de innehåller också andra typer av objekt, såsom ordböcker och grupper ), och tillhandahåller cachningsmöjligheter (den huvudsakliga cachningsmetoden är pickle).
- Autentiseringsmekanism. Tillåt användare att autentisera med olika metoder (HTTP-autentisering, LDAP, PHP-cookies, ...), se http://master19.moinmo.in/HelpOnAuthentication för detaljer
- Mekanismen för auktorisering och differentiering av åtkomsträttigheter (säkerhetspolicy). Tillhandahåll olika metoder för åtkomstkontroll, först och främst ACL. Se även http://master19.moinmo.in/AccessList Hjälp och http://master19.moinmo.in/How To Set Up/Access Rules .
- Meddelandemekanismer. Implementera stöd för olika typer av aviseringar när olika händelser inträffar, se http://master19.moinmo.in/NotificationHelp .
- Inmatningsformathanterare (parsers, parsers). Kallas för att bearbeta en sida eller ett textblock i något inmatningsformat. Kan kompletteras med anpassade parsers.
- Utdataformathanterare (formaterare, formatterare). Kallas av parsers för att generera text i utdataformatet.
- Makrokommandon (makro). Kan användas i brödtexten på en sida för att generera godtyckligt innehåll och utöka syntaxen på detta sätt.
Vart och ett av de beskrivna systemen implementeras i form av huvudkärnan och moduler som implementerar specifik funktionalitet, därför kan var och en av dem kompletteras med tredjepartsmoduler, vilket ger en viss flexibilitet.
Fördelar och funktioner
- Det kan fungera på nästan alla operativsystem och med många webbservrar ( Apache , IIS , WebLogic , Lighttpd , etc.).
- Kräver inte installation av ytterligare programvara, såsom ett databashanteringssystem eller versionskontrollsystem [9]
- Tack vare den inbyggda webbservern kan den användas som en plattformsoberoende portabel wikimotor ( En wiki som alltid finns med dig, oavsett installerat operativsystem )
- Den har en inbyggd fullfjädrad WYSIWYG - redigerare (integrerad CKeditor ), som låter dig redigera wiki-uppmärkning på ett sätt som är bekant för vanliga användare
- Kan använda sökmotorn Xapian , som tillhandahåller funktioner som indexering av olika typer av innehåll (inklusive olika format av bifogade filer; indexering av filer i Open Document Format , MS Office , PDF , olika textformat, EXIF -metadata är stöds för närvarande i JPEG- bilder och textsträngar i binära filer), morfologisk sökning, filsökning efter MIME -typ och ett antal andra
- Den har inbyggt stöd för Java-applets för att skapa illustrationer på en wiki - AnyWikiDraw och TWikiDraw [10]
- Stöd för mekanismer för in- och utformathanterare ("parser" och "formatter") gör att du kan använda olika uppmärkningssyntaxer på wikin i sidorna (för närvarande, förutom ursprunglig syntax (otillgänglig länk) , kreolsk syntax , omstrukturerad Textformat , XML - sidor stöds med XSLT , visas som CSV- tabeller , syntaxmarkering för olika textformat [11] , se http://master19.moinmo.in/HelpOnParsers för detaljer ) och exportera sidor i olika format (utöver HTML, export till vanlig text är möjligt och docbook). Dessutom finns det arkiv med tredjepartstolkare och formaterare som tillåter andra format att stödjas på wikin.
- Både gränssnitts- och systemsidorna och hjälpsidorna har översatts till ett stort antal språk (mer än 30). Dessutom har MoinMoin stöd för flerspråkiga wikis (wikis som använder flera språk för sidor [12] ). I versionerna 1.8.6 och 1.9 har den ryska lokaliseringen uppdaterats.
- Stöd för åtkomstlistor och olika säkerhetspolicyer baserade på dem [13] .
- Stöd för både gratis länksyntax och länkar i CamelCase . Stöd för att bädda in olika filformat (bilder, ljud, video, SWF , andra sidor) i sidkroppen (se http://master19.moinmo.in/How to Link Pages för mer information ).
- Skräppostskyddsmekanismer : både baserade på svarta listor (uppdateras centralt) och använder text captcha .
- Anti- flod - mekanism : det är möjligt att begränsa antalet förfrågningar för vissa åtgärder vid en viss tidpunkt för en IP eller användare.
- Stöd för att synkronisera innehållet i delar av flera wikis genom XML RPC- mekanismen [14] .
- Möjligheten att prenumerera på meddelanden om olika åtgärder som utförs med sidor (redigera, byta namn, bifoga en fil, radera, ...) via post eller via XMPP [15] .
Nackdelar
- Eftersom information lagras i filer är MoinMoin fokuserad på ett relativt litet antal sidor (enligt utvecklarna, inte mer än 10 000 sidor). Dessutom, på grund av hur sidnamn mappas till katalognamn för att lagra dem, finns det begränsningar för längden på sidnamn som åläggs av filsystemet som används.
- Stöder inte sektionsredigering [16] .
- Det finns inget versionssystemstöd för bifogade filer [17] .
MoinMoin 2.0
Sedan 2007 har arbetet pågått med en fundamental förändring av motorns arkitektur, detta projekt fick kodnamnet MoinMoin 2.0. Gren 1.9, enligt utvecklarna, är den sista bland 1.x. Version 2.0 var ursprungligen planerad att släppas 2010-2011, men releasedatumet för november 2014 är fortfarande okänt.
De viktigaste funktionerna i version 2.0 är följande.
- Ändrade sätt att lagra sidor.
- Varje element (sida eller bifogad fil) lagras i en gemensam lagringsenhet, med varje element (objekt) associerad versionshistorik och metadata [18] .
- Stöd för olika sätt att lagra wikiinnehåll: för närvarande annonserat stöd för hg , olika SQL - databaser via SQLAlchemy , fillagring 1.x och ett nytt fillagringsformat [19] .
- Konvertera element från inmatningsformat till presentationsformat med hjälp av wiki DOM .
- Utseendeteman baserade på Jinja 2.
- Migrering till CKEditor som WYSIWYG - redigerare.
- Omarbetning av modulsystemet och XML RPC.
En testinstallation av MoinMoin 2.0 har distribuerats
på http://test.moinmo.in/ (nedlänk) .
Länkar
Anteckningar
- ↑ https://sourceforge.net/projects/moin/files/moin/0.1/
- ↑ Se även http://moinmo.in/MoinMoinEtymology Arkiverad 2 februari 2009 på Wayback Machine
- ↑ Version 2.0 är planerad Arkivexemplar daterad 13 september 2009 på Wayback Machine , stöd för olika typer av lagring: olika SQL - databaser som använder SQLAlchemy , hg , etc.
- ↑ Se [1] Arkiverad 19 september 2009 på Wayback Machine , [2] Arkiverad 10 mars 2009 på Wayback Machine
- ↑ Före version 1.9 användes webbservern Twisted http
- ↑ Information från docs/CHANGES-filen om version 0.1 (nedlänk) . Datum för åtkomst: 18 januari 2010. Arkiverad från originalet den 27 december 2015. (obestämd)
- ↑ Se http://moinmo.in/MoinCoreTeamGroup Arkiverad 12 oktober 2009 på Wayback Machine
- ↑ Detta bevisas särskilt av deltagarnas personliga sidor på MoinMoins webbplats, där många av deras ägare anger att de använder MoinMoin som en företagswiki
- ↑ Samtidigt, för att stödja några ytterligare funktioner, såsom Xapian- sökning Arkiverad 7 augusti 2011 på Wayback Machine , DocBook och RST- stöd , MS Office och PDF-filindexering Arkiverad 7 augusti 2011 på Wayback Machine , installation av lämpliga program krävs och Python-moduler.
- ↑ Se http://master19.moinmo.in/HelpByDrawings
- ↑ I version 1.9 implementeras syntaxmarkering med Pygments [3] Arkiverad 5 januari 2012 på Wayback Machine , vilket tillåter syntaxmarkering för över 150 format Arkiverad 5 januari 2012 på Wayback Machine
- ↑ Se http://master19.moinmo.in/Language Support Hjälp
- ↑ Se http://master19.moinmo.in/AccessList Help , http://master19.moinmo.in/AutoAdmin Help , http://master19.moinmo.in/How To Set Up/Access Rules
- ↑ Se http://master19.moinmo.in/SyncHelp
- ↑ se http://master19.moinmo.in/HelpOnAlert och http://master19.moinmo.in/HelpOnConfiguration/EmailSupport Arkiverad 24 april 2011 på Wayback Machine
- ↑ Diskussionssidan för funktionsbegäran Arkiverad 23 februari 2010 på Wayback Machine har ett antal tredjepartspatchar för olika versioner av MoinMoin som implementerar denna funktion i varierande grad. Dessutom tilldelas en belöning för dess fullständiga implementering i slutet av 2010 Arkiverad 29 november 2010 på Wayback Machine
- ↑ Planerad att aktiveras i MoinMoin 2.0 genom att förena filer och sidor och stödja ett versionssystem för dem
- ↑ Se . Hämtad 11 december 2009. Arkiverad från originalet 13 september 2009. (obestämd)
- ↑ Se http://moinmo.in/MoinMoin2.0#Storage_API.2C_misc._storage_backends Arkiverad 9 november 2009 på Wayback Machine