DokuWiki supporta del semplice linguaggio di formattazione, che cerca di rendere i file dei dati più leggibili possibile. Questa pagina contiene tutta la sintassi che si può usare quando si modificano le pagine. Basta dare semplicemente un'occhiata al codice sorgente di questa pagina premendo il bottone Modifica questa pagina (Edit this page) in alto o in fondo alla pagina. Se volete fare qualche prova, usate la pagina playground. La formattazione più semplice è facilmente accessibile anche attraverso i pulsanti veloci.
DokuWiki supporta testi in grassetto, corsivo, sottolineato ed equispaziato
. Naturalmente tutti questi si possono combinare
.
DokuWiki supporta testi in **grassetto**, //corsivo//, __sottolineato__ ed ''equispaziato''. Naturalmente tutti questi si possono **__//''combinare''//__**.
Si possono usare anche pedici e apici.
Si possono usare anche <sub>pedici</sub> e <sup>apici</sup>.
Inoltre si può contrassegnare qualcosa come cancellato.
Inoltre si può contrassegnare qualcosa come <del>cancellato</del>.
I paragrafi sono creati da righe vuote. Se si vuole forzare un ritorno a capo senza un paragrafo, si possono usare due barre retroverse seguite da uno spazio bianco o dalla fine della riga.
Questo è del testo con qualche interruzione di linea
Notare che le
due barre retroverse sono riconosciute soltanto alla fine di una linea
oppure quando seguite da
uno spazio bianco \\ecco cosa succede senza di questo.
Questo è del testo con qualche interruzione di linea\\ Notare che le due barre retroverse sono riconosciute soltanto alla fine di una riga\\ oppure quando seguite da\\ uno spazio bianco \\ecco cosa succede senza di questo.
I ritorni a capo forzati dovrebbero essere usati solo quando realmente necessari.
DokuWiki supporta molteplici modi per la creazione di collegamenti.
I collegamenti esterni sono riconosciuti automaticamente: http://www.google.com o semplicemente www.google.com - Si possono impostare anche i testi dei collegamenti: Questo collegamento punta a Google. Sono riconosciuti anche gli indirizzi di posta elettronica come questo: andi@splitbrain.org .
DokuWiki supporta molteplici modi per la creazione di collegamenti. I collegamenti esterni sono riconosciuti automaticamente: http://www.google.com o semplicemente www.google.com - Si possono impostare anche i testi dei collegamenti: [[http://www.google.com|Questo collegamento punta a Google]]. Sono riconosciuti anche gli indirizzi di posta elettronica come questo: <andi@splitbrain.org> .
I collegamenti interni sono creati usando le parentesi quadre. Si può immettere una pagina o, in alternativa, un testo del collegamento aggiuntivo.
I collegamenti interni sono creati usando le parentesi quadre. Si può immettere una [[pagina]] o, in alternativa, un [[pagina|testo del collegamento]] aggiuntivo.
I nomi delle pagine wiki sono convertiti automaticamente in minuscolo, i caratteri speciali non sono consentiti.
Si può specificare la categoria usando i due punti (:) nel nome della pagina.
Si può specificare la [[manuale:categoria]] usando i due punti (:) nel nome della pagina.
Per i dettagli si veda categorie.
È pure possibile realizzare collegamenti a una specifica sezione. È sufficiente aggiungere il nome della sezione prima del carattere diesis (#), come è noto dall'HTML. Questo collegamento punta a questa Sezione.
Questo collegamento punta a [[syntax#interni|questa Sezione]].
Note:
Dokuwiki supporta i collegamenti Interwiki. Si tratta di collegamenti rapidi ad altri Wiki. Per esempio, questo collegamento punta alla pagina italiana di Wikipedia riguardante i Wiki: Wiki.
Dokuwiki supporta i collegamenti [[doku>it:interwiki|Interwiki]]. Si tratta di collegamenti rapidi ad altri Wiki. Per esempio, questo collegamento punta alla pagina in italiano di Wikipedia riguardante i Wiki: [[wpit>Wiki]].
Le partizioni Windows come questa sono pure riconosciute. Notare che esse hanno un senso soltanto in un gruppo omogeneo di utenti come in una Intranet aziendale.
Le partizioni Windows come [[\\server\share|questa]] sono pure riconosciute.
Note:
Si può anche usare un'immagine per creare un collegamento a un'altra pagina, interna o esterna, combinando la sintassi per i collegamenti e per le immagini (vedi sotto) come questa:
[[http://www.php.net|{{wiki:dokuwiki-128.png}}]]
Notare: la formattazione dell'immagine è l'unica sintassi di formattazione accettata nei nomi dei collegamenti.
L'intera sintassi delle immagini e dei collegamenti è supportata (incluso il ridimensionamento, immagini interne ed esterne e i collegamenti di tipo URL e interwiki).
Si possono aggiungere note a piè di pagina 1) usando parentesi doppie.
Si possono aggiungere note a piè di pagina ((Questa è una nota a piè di pagina)) usando parentesi doppie.
Si possono usare fino a cinque differenti livelli di intestazione per strutturare il contenuto. Se si hanno più di tre intestazioni, un indice dei contenuti è generato automaticamente - ciò può essere disabilitato includendo la stringa ~~NOTOC~~
nel documento.
==== Livello di intestazione 3 ==== === Livello di intestazione 4 === == Livello di intestazione 5 ==
Usando quattro o più trattini, si può fare una linea orizzontale:
Si possono includere immagini, video e file audio esterni e interni mediante parentesi graffe. In alternativa, se ne possono specificare le dimensioni.
Ridimensionata a una larghezza data:
Ridimensionata a larghezza e altezza date2):
Immagine esterna ridimensionata:
Dimensione reale: {{wiki:dokuwiki-128.png}} Ridimensionata a una larghezza data: {{wiki:dokuwiki-128.png?50}} Ridimensionata a larghezza e altezza date: {{wiki:dokuwiki-128.png?200x50}} Immagine esterna ridimensionata: {{http://php.net/images/php.gif?200x50}}
Usando spazi bianchi a sinistra o a destra si può scegliere l'allineamento.
{{ wiki:dokuwiki-128.png}} {{wiki:dokuwiki-128.png }} {{ wiki:dokuwiki-128.png }}
Naturalmente, si può aggiungere anche un titolo (visualizzato come suggerimento dalla maggior parte dei programmi di navigazione).
{{ wiki:dokuwiki-128.png |Questa è la didascalia}}
Per collegare un'immagine a un'altra pagina, vedere Collegamenti a immagini sopra.
DokuWiki può incorporare direttamente i seguenti formati multimediali:
Immagini | gif , jpg , png |
Video | webm , ogv , mp4 |
Audio | ogg , mp3 , wav |
Flash | swf |
Se si specifica un nome file che non è un formato di file multimediale supportato, verrà visualizzato come collegamento.
Aggiungendo ?linkonly
verrà visualizzato un collegamento al file senza visualizzarlo
{{wiki:dokuwiki-128.png?linkonly}}
dokuwiki-128.png Questo è solo un link all'immagine.
Sfortunatamente non tutti i browser comprendono tutti i formati video e audio. Per mitigare il problema, puoi caricare il tuo file in diversi formati per la massima compatibilità del browser.
Ad esempio, considera questo video mp4 incorporato:
{{video.mp4|Un video divertente}}
Quando carichi “video.webm” e “video.ogv” oltre al video “video.mp4” di riferimento, DokuWiki li aggiungerà automaticamente come alternative in modo che uno dei tre file sia compreso dal tuo browser.
Inoltre DokuWiki supporta un'immagine “poster” che verrà mostrata prima dell'avvio del video. Quell'immagine deve avere lo stesso nome di file del video e può essere un file jpg o png. Nell'esempio sopra un file video.jpg
funzionerebbe.
Dokuwiki supporta liste ordinate e non-ordinate. Per creare un elemento di una lista, indentare il testo con due spazi e usare un asterisco (*
) per le liste non ordinate oppure un trattino (-
) per quelle ordinate.
* Questa è una lista * Il secondo elemento * Si possono avere livelli differenti * Un altro elemento - La stessa lista ma ordinata - Un altro elemento - Usare semplicemente l'indentazione per ottenere livelli più profondi - È tutto
DokuWiki può convertire alcuni caratteri predefiniti o stringhe in immagini altro testo o HTML.
La conversione di testo in immagini è fatta principalmente per le faccine. E la conversione del testo in formato HTML è usata per sostituzione tipografica ma può essere configurata per usare anche altro HTML.
DokuWiki converte le emoticon comunemente usate nei rispettivi equivalenti grafici. Queste faccine e altre immagini possono essere configurate ed estese. Ecco una panoramica delle faccine incluse in DokuWiki.
DokuWiki può convertire semplici caratteri di testo nelle rispettive entità tipograficamente corrette. Ecco un esempio dei caratteri riconosciuti.
→ ← ↔ ⇒ ⇐ ⇔ » « – — 640×480 © ™ ® “He thought 'It's a man's world'…”
-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r) "He thought 'It's a man's world'..."
La stesso può essere fatto per produrre ogni tipo di codice HTML, e necessario soltanto aggiungerlo nel pattern file
Esistono tre eccezioni che non provengono dal pattern file: moltiplicazione di entità (640×480) 'singole' e “ doppie virgolette”. Possono essere disattivate tramite un'opzione di configurazione
Talvolta si vuole contrasegnare del testo per mostrare che esso è una risposta o un commento. Si può usare la sintassi seguente:
Penso che dovremmo farlo > No, non dovremmo >> Be', dico che dovremmo > Davvero? >> Sì! >>> Allora facciamolo!
Penso che dovremmo farlo
No, non dovremmo
Be', dico che dovremmo
Davvero?
Sì!
Allora facciamolo!
DokuWiki supporta una semplice sintasi per la creazione di tabelle.
Intestazione 1 | Intestazione 2 | Intestazione 3 |
---|---|---|
Riga 1 Col 1 | Riga 1 Col 2 | Riga 1 Col 3 |
Riga 2 Col 1 | Celle unite (notare il doppio pipe) | |
Riga 3 Col 1 | Riga 3 Col 2 | Riga 3 Col 3 |
Le righe delle tabelle devono iniziare e terminare con un carattere |
per le righe normali o con il carattere ^
per le intestazioni.
^ Intestazione 1 ^ Intestazione 2 ^ Intestazione 3 ^ | Riga 1 Col 1 | Riga 1 Col 2 | Riga 1 Col 3 | | Riga 2 Col 1 | Celle unite (notare il doppio pipe) || | Riga 3 Col 1 | Riga 3 Col 2 | Riga 3 Col 3 |
Per unire le celle orizzontalmente, è sufficiente rendere completamente vuota la cella successiva come mostrato sopra. Assicurarsi di avere sempre lo stesso numero totale di separatori di celle!
È pure possibile realizzare intestazioni verticali di tabella.
Intestazione 1 | Intestazione 2 | |
---|---|---|
Intestazione 3 | Riga 1 Col 2 | Riga 1 Col 3 |
Intestazione 4 | niente fusione questa volta | |
Intestazione 5 | Riga 2 Col 2 | Riga 2 Col 3 |
Come si può notare, è il separatore di cella prima di una cella che decide il tipo di formattazione:
| ^ Intestazione 1 ^ Intestazione 2 ^ ^ Intestazione 3 | Riga 1 Col 2 | Riga 1 Col 3 | ^ Intestazione 4 | niente fusione questa volta | | ^ Intestazione 5 | Riga 2 Col 2 | Riga 2 Col 3 |
Si possono avere celle unite verticalmente aggiungendo :::
dentro le celle sotto quella a cui devono connettersi.
Intestazione 1 | Intestazione 2 | Intestazione 3 |
---|---|---|
Riga 1 Col 1 | questa cella è unita verticalmente | Row 1 Col 3 |
Riga 2 Col 1 | Row 2 Col 3 | |
Riga 3 Col 1 | Row 2 Col 3 |
A parte la sintassi di unione quelle celle non devono contenere niente altro.
^ Intestazione 1 ^ Intestazione 2 ^ Intestazione 3 ^ | Riga 1 Col 1 | questa cella è unita verticalmente | Riga 1 Col 3 | | Riga 2 Col 1 | ::: | Riga 2 Col 3 | | Riga 3 Col 1 | ::: | Riga 3 Col 3 |
Si può allineare anche il contenuto di una tabella. È sufficiente aggiungere almeno due spazi bianchi al lato opposto del testo: aggiungere due spazi a sinistra per allineare a destra, due spazi a destra per allineare a sinistra e almeno due spazi ad entrambi i lati per il testo centrato.
Tabella con allineamento | ||
---|---|---|
destra | centro | sinistra |
sinistra | destra | centro |
xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |
Ecco come appare nel sorgente:
^ Tabella con allineamento ^^^ | destra| centro |sinistra | |sinistra | destra| centro | | xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |
Nota: l'allineamento verticale non è supportato.
Se avete bisogno di visualizzare il testo esattamente come è scritto (senza alcuna formattazione), racchiudete l'area sia con il marcatore <nowiki>
o più semplicemente, con i segni di doppia percentuale %%
.
Questo è del testo che contiene indirizzi come questo http://www.splitbrain.org e **formattazione**, ma niente è fatto con esso. Lo stesso è vero per //__questo__ testo// con una faccina ;-).
<nowiki> Questo è del testo che contiene indirizzi come questo: http://www.splitbrain.org e **formattazione**, ma niente è fatto con esso. </nowiki> Lo stesso è vero per %%//__questo__testo// con una faccina ;-)%%.
È possibile includere blocchi di codice nei documenti sia indentandoli con almeno due spazi (come negli esempi precedenti), sia usando i marcatori code
o file
.
Questo testo è intentrato con due spazi.
Questo è codice preformattato e tutti gli spazi sono preservati: come <-questo
Questo è praticamente la stessa cosa, ma si potrebbe usare per mostrare che è stato citato un file.
Questi blocchi sono stati creati da questi sorgenti:
Questo testo è indentrato con due spazi.
<code> Questo è codice preformato ogni spazio è preservato: come <-questo </code>
<file> Questo è praticamente la stessa cosa, ma si potrebbe usare per mostrare che è stato citato un file. </file>
DokuWiki può sottolineare il codice sorgente, che lo rende più facile da leggere. Usa la GeSHi Generic Syntax Highlighter – così ogni linguaggio supportato da GeSHi è consentito. La sintassi è la stessa di quelle dei blocchi di codice o file nella precedente sezione, ma questa volta il nome del linguaggio usato è inserito all'interno del marcatore. Ad esempio <code java>
o <file java>
.
/** * La classe HelloWorldApp implementa un'applicazione che * mostra semplicemente "Hello World!" come risultato. */ class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); //Visualizza la stringa. } }
Le seguenti stringhe di linguaggio sono correntemente riconosciuti: 4cs, abap, actionscript-french, actionscript, actionscript3, ada, apache, applescript, asm, asp, autoconf, autohotkey, autoit, avisynth, awk, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, ecmascript, eiffel, email, erlang, fo, fortran, freebasic, fsharp, gambas, genero, genie, gdb, glsl, gml, gnuplot, groovy, gettext, gwbasic, haskell, hicest, hq9plus, html, icon, idl, ini, inno, intercal, io, j, java5, java, javascript, jquery, kixtart, klonec, klonecpp, latex, lisp, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, modula2, modula3, mmix, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle8, oracle11, oxygene, oz, pascal, pcre, perl, perl6, per, pf, php-brief, php, pike, pic16, pixelbender, plsql, postgresql, povray, powerbuilder, powershell, progress, prolog, properties, providex, purebasic, python, q, qbasic, rails, rebol, reg, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, vala, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xbasic, xml, xorg_conf, xpp, z80
Quando si usa la sintassi <code>
o <file>
come sopra, si potrebbe volere rendere il codice mostrato disponibile per anche per il prelevamento. Si può fare specificando un nome di file dopo il codice del linguaggio come questo:
<file php myexample.php> <?php echo "hello world!"; ?> </file>
<?php echo "hello world!"; ?>
Se non si vuole un file scaricabile senza nessuna evidenziazione, specificate un trattino (-
) come codice del linguaggio: <code - myfile.foo>
.
Potete incorporare righe di codice HTML o PHP nei vostri documenti usando i marcatori <html>
o <php>
. (Usate i marcatori maiuscoli se è necessario includere gli elementi in blocchi)
Esempio HTML:
<html> Questo è <span style="color:red;font-size:150%;">HTML in riga</span> </html> <HTML> <p style="border:2px dashed red;">E questo è un blocco HTML</p> </HTML>
Questo è <span style="color:red;font-size:150%;">HTML in riga</span>
<p style="border:2px dashed red;">E questo è un blocco HTML</p>
Esempio PHP:
<php> echo 'Un logo generato da PHP:'; echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />'; echo '(generated inline HTML)'; </php> <PHP> echo '<table class="inline"><tr><td>Lo stesso, ma all'interno di un elemento di livello blocco:</td>'; echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" /></td>'; echo '</tr></table>'; </PHP>
echo 'Un logo generato da PHP:';
echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />';
echo '(inline HTML)';
echo '<table class="inline"><tr><td>Lo stesso, ma all'interno di un elemento di livello blocco:</td>'; echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" /></td>'; echo '</tr></table>';
Notate bene: l'incorporazione di codice HTML e PHP è disabilitata per impostazione predefinita nella configurazione. Se disabilitata, il codice è visualizzato invece di essere eseguito.
DokuWiki può integrare dati da sorgenti XML esterne. Per l'analisi sintattica delle sorgenti XML è usato SimplePie. Tutti i formati riconosciuti da SimplePie possono essere usati anche in DokuWiki. Si può modificare la visualizzazione mediante diversi parametri separati da uno spazio:
Parametro | Descrizione |
---|---|
any number | sarà usato come numero massimo di elementi da visualizzare, predefinito a 8 |
reverse | visualizza per primi gli ultimi elementi |
author | visualizza i nomi degli autori degli elementi |
date | visualizza le date degli elementi |
description | visualizza la descrizione dell'elemento. Se HTML è disabilitato, tutti i tag HTML saranno rimossi |
n[dhm] | periodo di aggiornamento, dove d=giorni, h=ore, m=minuti. (ad es. 12h = 12 ore). |
Il periodo di aggiornamento predefinito è di 4 ore. Ogni valore al di sotto di 10 minuti sarà considerato come 10 minuti. Generalmente DokuWiki cercherà di fornire una versione della pagina memorizzata localmente; ciò è ovviamente inappropriato quando la pagina contiene del contenuto esterno dinamico. Il parametro dice a DokuWiki di ricaricare nuovamente la pagina se è trascorso un tempo superiore a periodo di aggiornamento dall'ultima volta che la pagina è stata visualizzata.
Esempio:
{{rss>http://slashdot.org/index.rss 5 author date 1h }}
Alcune sintassi influenzano come DokuWiki restituisce una pagina senza creare risultati a sé. Le seguenti macro di controllo sono disponibili:
Macro | Descrizione |
---|---|
~~NOTOC~~ | Se questa macro è trovata nella pagina, la tabella dei contenuti non sarà creata |
~~NOCACHE~~ | DokuWiki si serve automaticamente della memoria cache. Talvolta questo comportamento potrebbe non essere voluto (ad esempio quando è usata la sintassi <php> di cui sopra), aggiungendo questa macro si forza DokuWiki a ricaricare la pagina ad ogni richiesta |
La sintassi di DokuWiki può essere estesa mediante Moduli aggiuntivi. Come sono utilizzati i moduli aggiuntivi è spiegato nelle rispettive pagine di descrizione del caso. I seguenti moduli aggiuntivi per la sintassi sono disponibili in questa particolare installazione di DokuWiki: