Introduzione
Vi siete mai chiesti come mai ci sono così tante pagine? È dovuto al fatto che non c'è un metodo per fornire tutte le pagina di aiuto in un unico file. O perché installare un tema non è facile dato che non si sa mai dove mettere i file?
L'installatore di pacchetto è un framework per script per MoinMoin che semplifica l'installazione di estensioni per MoinMoin.
È possibile usare questo sistema per creare "pacchetti" di modelli specifici per rendere MoinMoin un sistema CRM, oppure è possibile rendere i propri plug-in/temi più facili da installare.
Installare un pacchetto
I super-utenti (quelli contenuti nella lista superuser della configurazione) scaricheranno il pacchetto, lo caricheranno sul wiki e quindi installeranno il pacchetto direttamente nella pagina degli allegati. Inoltre, possono installare il pacchetto usando la riga di comando (`MoinMoin/packages.py i pacchetto.zip`).
Creare pacchetti
È possibile creare un pacchetto in diversi modi, come usare l'azione PackagePages per crearne uno automaticamente, oppure è possibile farlo a mano. Basta creare un file zip contenente i file e un file speciale chiamato `MOIN_PACKAGE`, lo script di installazione. Questo script contiene un comando per ogni riga e viene eseguito dall'alto verso il basso. Consultare l'esempio:
MoinMoinPackage|1 ReplaceUnderlay|miapagina.txt|AiutoContenuti AddRevision|miapagina2.txt|PaginaPrincipale InstallPlugin|mioparser.py|global|parser|mioparser.py
- La prima riga indica che il file è uno script e imposta la revisione, per ora è a 1.
La seconda riga sostituisce la versione underlay della pagina AiutoContenuti con il file `miapagina.txt`.
La terza riga aggiunge una revisione alla pagina PaginaPrincipale, per esempio la cambia.
- La quarta riga installa un nuovo processore.
Comandi implementati
I comandi non fanno distinzione tra maiuscolo e minuscolo.
- `Print|testo`
- Stampa il testo come output, l'utente lo vedrò successivamente.
`IgnoreExceptions|booleano`
- Imposta l'eccezione `ignore`. Se le eccezioni vengono ignorate, lo script non si ferma quando ne viene incontrata una.
`SetThemeName|nometema`
- Imposta il nome del tema che verrà modificato in seguito.
`CopyThemeFile|nomefile|tipo|obiettivo`
- Copia un file di un tema (CSS, PNG, etc.) nella directory del tema corrente.
- Attualmente è solo supportato sui server tipo standalone.
Esempio: `CopyThemeFile|screen.css|css|screen.css`
`InstallPlugin|nomefile|visibilità|tipoplugin|obiettivo`
Copia un plugin da nomefile a obiettivo. Visibilità può essere `local` in cui viene selezionata la cartella dei plug-in del wiki corrente o `global` che seleziona la cartella del pacchetto python di MoinMoin; tipoplugin può essere `parser`, `macro`, etc.
Esempio: `InstallPlugin|mioparser.py|global|parser|mioparser.py`
`AddRevision|nomefile|nomepagina|autore|commento|banale`
Aggiunge una revisione (letta dal file nomefile) alla pagina nomepagina. autore specifica il nome di chi fa la modifica ed è facoltativo. commento specifica il commento per la revisione ed è facoltativo, banale indica se la modifica è da considerarsi banale ed è facoltativo.
Esempio (installa un nuovo modello):
AddRevision|cust.tpl|AcquirenteModello AddRevision|phone.tpl|TelefonoModello
`DeletePage|nomepagina|commento`
Cancella la pagina nomepagina, opzionalmente impostando anche un commento.
Esempio: `DeletePage|PaginaPrincipale`
`ReplaceUnderlay|nomefile|nomepagina`
Sostituisce la versione underlay della pagina. Può essere utilizzato per installare pagine underlay o per aggiornarle.
`EnsureVersion|versione|righe`
Termina lo script o salta righe se il criterio della versione non corrisponde e righe è specificato.
Il seguente esempio fornisce due parser e installa quello corretto:
EnsureVersion|1.3.3|2 InstallPlugin|mioparser.py_3|global|parser|mioparser.py Exit EnsureVersion|1.3.2 InstallPlugin|mioparser.py_2|global|parser|mioparser.py
- `Exit`
- Ferma lo script.
`InstallPackage|Nomepagina|Nomefile`
Installa un altro pacchetto che deve essere un allegato chiamato Nomefile della pagina Nomepagina.
Esempio: `InstallPackage|PaginaPrincipale|IlMioPlugin.zip`
`AddAttachment|nome file nel file zip|nomefile|nomepagina|autore|commento`
Esempio: `AddAttachment|2_attachment|song.wav|PaginaPrincipale|PincoPallino|una canzone di esempio.`
`DelAttachment|nomefile|nomepagina|autore|commento`
Esempio: `DelAttachment|canzone.wav|PaginaPrincipale|PincoPallino|prova`
`RenamePage|nomepagina|nuovo nome|autore|commento`
- Rinomina una pagina.