XWiki Syntax Guide

Senast ändrad av Slava_ MSE den 2026/03/11 07:16

XWiki Syntax 2.1

XWiki Syntax 2.1: All

Generell

Inledning

2.1 Introduction

Sedan introduktionen av XWiki syntax 2.0 har några begränsningar upptäckts.  För att åtgärda dessa har den experimentella syntaxen XWiki syntax 2.1 introducerats i XWiki Enterprise version 3.0.  Anledningarna att denna nya syntax utvecklats är:

  • Harmonisera länk- och bild-syntaxerna för tydlighetens och konsekvensens skull och för att förbättra påbyggnadsmöjligheterna.
  • Möjligheten att visa ikoner, att länka till filer med UNC-notation och att länka till relativa URL:er.
Information

Eftersom XWiki syntax 2.1 bygger på XWiki syntax 2.0 gäller all syntax från XWiki syntax 2.0 om inte annat anges i specifikationen för 2.1.

Utöver syntaxändringarna har vi också bytt ut den underliggande renderingsmotorn (vilken tidigare var Radeox) till förmån för vår egen motor som bygger på Wikimodel och Doxia (och möjligen andra i framtiden).  Detta låter oss tillhandahålla andra syntaxer i wikin: MediaWiki, Confluence, JSPWiki, Creole, TWiki m.fl.

Anmärkningar

2.0 General Remarks

XWiki syntax v2.1 rättar bl.a. de fel och tvetydigheter som exemplifieras i tabellen nedan.

BeskrivningExempel på ogiltig eller tvetydig syntaxFixad XWiki syntax 2.1
Ej avslutad stil**fetstil**fetstil**
Två fristående element som ej särskiljs av två nyradstecken| tabellcell
* listelement
| tabellcell

* listelement
Två fristående element ej separerade av två nyradsteckenstycke
----
stycke
stycke

----

stycke
Nyradstecken i början av dokumentet<nyradstecken i början av dokumentet>
stycke
stycke
Ej avslutad rubriksyntax=== rubrik=== rubrik ===

Andra syntaxer

1.0 Other Syntaxes

Följande syntaxer finns implementerade i XWiki enterprise 1.6 och senare:

Warning

Implementationen för dessa syntaxer är ej kompletta ännu.  Länkar fungerar exempelvis inte alltid som förväntat.  Vi måste även bestämma om syntaxerna skall utökas för att stödja XWiki-specifik funktionalitet såsom möjligheten att länka till en annan virtuell wiki.

Redigera

Stycken

2.0 Paragraphs

Stycken är textelement som separeras av två eller flera nyradstecken.

Information

I XWiki syntax 2.1 är nyradstecken signifikanta, vilket inte är fallet i XWiki syntax 1.0 och i Creole.

FormateringstypXWiki syntax 2.1Resultat
StyckeDetta är ett styckeDetta är ett stycke
Flerradigt styckeStycke med
flera rader
Stycke med
flera rader
Två styckenStycke ett

Stycke två
Stycke ett

Stycke två
Parametriserade stycken(% style="text-align:center;color:blue" %)
Centrerat stycke med blå text

Centrerat stycke med blå text

Rubriker

2.0 Headings

FormateringstypXWiki syntax 2.1Resultat
Standardrubriker
= nivå 1 = 
== nivå 2 ==
=== nivå 3 ===
==== nivå 4 ====
===== nivå 5 =====
====== nivå 6 ======

nivå 1

 

nivå 2

nivå 3

nivå 4

nivå 5
nivå 6
Parametriserade rubriker(% style="color:blue" %)
= rubrik =

rubrik

Rubriker med wikisyntax=== Rubrik med **fetstil** ===

Rubrik med fetstil

Textformatering

2.0 Text Formatting

Information

Nytt i XWiki syntax 2.1 jämfört med XWiki syntax 1.0:

  • Blanktecken är tillåtna omedelbart efter syntaxsymbolerna (i XWiki syntax 1.0 var exempelvis * detta inte fetstil *).
  • Användning av symboldubblering där det var enkla symboler i XWiki syntax 1.0 för att minska risken att användarna av misstag lägger in textformatering.
  • Möjlighet att låta formatering sträcka sig över flera rader.
FormateringstypXWiki syntax 2.0Resultat
Fetstil**fetstil**fetstil
Understruken__understruken__understruken
Kursiv//kursiv//kursiv
Genomstruken--genomstruken--genomstruken
Fastbredd##fastbredd##fastbredd
Upphöjdlite ^^upphöjd text^^lite upphöjd text
Nedsänktlite ,,nedsänkt text,,lite nedsänkt text

Horisontell linje

2.0 Horizontal Line

Information

En linje består av minst fyra bindestreck.

Information

Notera skillnaden mot Creole där exakt fyra bindestreck krävs.

FormateringstypXWiki syntax 2.1Resultat
Horisontell linje  ---- 

Parametriserad horisontell linje 
(% style="color:blue" %)
----

Listor

2.0 Lists

FormateringstypXWiki syntax  2.1Resultat
Punktlista
* element 1
** element 2
*** element 3
* element 4
  • element 1
    • element 2
      • element 3
  • element 4
Numrerad lista
1. element 1
11. element 2
111. element 3
1. element 4
  1. element 1
    1. element 2
      1. element 3
  2. element 4
Blandad lista
1. element 1
1*. element 2
1*. element 3
1. element 4
  1. element 1
    • element 2
    • element 3
  2. element 4
Kvadratmarkerad lista
(% style="list-style-type: square" %)
* element 1
* element 2
  • element 1
  • element 2
Diskmarkerad lista
(% style="list-style-type: disc" %)
* element 1
* element 2
  • element 1
  • element 2
Alfabetisk lista av gemener
(% style="list-style-type: lower-alpha" %)
* element1
* element2
  • element1
  • element2
Alfabetisk lista av versaler
(% style="list-style-type: upper-alpha" %)
* element1
* element2
  • element1
  • element2
Romerska siffror av gemener
(% style="list-style-type: lower-roman" %)
* element1
* element2
  • element1
  • element2
Romerska siffror av versaler
(% style="list-style-type: upper-roman" %)
* element1
* element2
  • element1
  • element2
Grekiska gemener
(% style="list-style-type: lower-greek" %)
* element1
* element2
  • element1
  • element2
Grekiska versaler
(% style="list-style-type: upper-greek" %)
* element1
* element2
  • element1
  • element2
Hiragana
(% style="list-style-type: hiragana" %)
* element1
* element2
  • element1
  • element2
Hiragana iroha
(% style="list-style-type: hiragana-iroha" %)
* element1
* element2
  • element1
  • element2
Katakana
(% style="list-style-type: katakana" %)
* element1
* element2
  • element1
  • element2
Katakana iroha
(% style="list-style-type: katakana-iroha" %)
* element1
* element2
  • element1
  • element2
Armenisk lista
(% style="list-style-type: armenian" %)
* element1
* element2
  • element1
  • element2
Hebreisk lista
(% style="list-style-type: hebrew" %)
* element1
* element2
  • element1
  • element2
Georgisk lista
(% style="list-style-type: georgian" %)
* element1
* element2
  • element1
  • element2
CJK ideografisk lista)
(% style="list-style-type: cjk-ideographic" %)
* element1
* element2
  • element1
  • element2

Definitionslistor

2.0 Definition Lists

FeatureXWiki Syntax 2.1Result
Standard definition
; term
: definition
term
definition
Nested definitions
; term 1
: definition 1
:; term 2
:: definition 2
term 1
definition 1
term 2
definition 2
Parametrized definition
(% style="color:blue" %)
; term
: definition
term
definition

Radbrytning

2.0 New Line Line Breaks

En radbrytning tvingar fram ny rad och kan stå var som helst i en text.

Information

I XWiki syntax 2.1 är nyradstecken signifikanta, vilket inte är fallet i XWiki syntax 1.0 och i Creole-syntax.

FormateringstypXWiki syntax 2.1Resultat
RadbrytningRad\\Ny radRad
Ny rad
Ny radRad
Ny rad
Rad
Ny rad

Länkar

FormateringstypXWiki syntax 2.1Resultat
Länk till sida i aktuellt rum[[WebHome]]XWiki
Länk med etikett[[etikett>>WebHome]]etikett
Länk med wikisyntax i etikett[[**fetstilad etikett**>>WebHome]]fetstilad etikett
Länk till en sida i specificerat rum[[Main.WebHome]]Main
Länk till underwiki[[underwiki:Main.WebHome]]Main
Länk som öppnas i nytt fönster[[etikett>>WebHome||rel="__blank"]]etikett
Länk till URL direkt i textDetta är en URL: http://xwiki.orgDetta är en URL: http://xwiki.org
Länk till en URL [[http://xwiki.org]]http://xwiki.org
Etiketterad länk till URL[[XWiki>>http://xwiki.org]]XWiki
Länk till e-postadress[[sven@svensson.se>>mailto:sven@svensson.se]]sven@svensson.se
Bildlänk[[image:Rum2.Sida2@img.png>>Rum1.Sida1]]img.png
Bildlänk med bildparametrar[[[[image:Rum2.Sida2@img.png||width="26" height="26"]]>>Rum1.Sida1]]img.png
Länk till bilaga på aktuell sida[[text>>attach:img.png]]text
Länk till bilaga på annan sida[[text>>attach:Rum.Sida@img.png]]text
Link to an Anchor in a page[[label>>Space.Page||anchor=anchor]]label
Link to a Heading in a page[[label>>XWiki.XWikiSyntax||anchor=HMyheading]]label
Information

When you add a Heading, an anchor named "H" followed by the heading title with only alpha characters is created. For example, for a Heading named "My heading", the generated anchor will be "HMyheading".

XWiki syntax 2.1 länkspecifikation

Information

Delarna inom ( ) är obligatoriska och delarna inom [ ] får utelämnas.

Det fullständiga formatet för en länk är [etikett>>] (resurs) [||parametrar]

  • etikett:  En utelämningsbar sträng som visas som länktext då sidan renderas.  Etiketten får inehålla wikiformattering.  Om ingen etikett anges kommer en länktext att automatgenereras.  Mönstret för den automatgenererade texten kan ställas in.  Se Administrationsguiden. Exempel: Min Sida
  • resurs: En obligatorisk sträng med länkreferensen på en av följande former:
    • URL: En URL på formatet [url:] protokoll://sökväg. Exempel: http://xwiki.org, url:https://svn.xwiki.org/
      • url: En sträng (vilken får utelämnas) som identifierar resursen som en URL.
      • Wikisida på formen [doc:] [[wikiNamn:] rum.] (sida). Exempel: WebHome, Main.WebHome, mywiki:Main.WebHome
      • doc: En sträng (vilken får utelämnas) som identifierar resursen som en wikisida.
      • wikiNamn: En sträng (vilken kan utelämnas) som anger namnet på den virtuella wikin.  Länken kommer att peka på en sida inuti den namngivna wikin.  Exempel: minwiki
      • rum: Ett rum i wikin.  Om inget anges används det aktuella rummet, dvs samma rum som sidan som innehåller länken.  Exempel: Main
      • sida: Namnet på den länkade sidan. Exempel: WebHome
    • InterWiki-sidnamn på formen interwiki: (interWikiAlias:) (sida). Exempel: interwiki:wikipedia:XWiki
      • interwiki: En obligatorisk sträng som identifierar resursen som en InterWiki-länk.
      • interWikiAlias:  Ett Inter-wiki-alias (vilket får utelämnas) som är definierat i interwikikartan  (se Administrationsguiden).  Exempel: wikipedia
      • sida: En obligatorisk sträng som anger namnet på den länkade sidan. Example: XWiki
    • Bilaga på formatet attach: [wikisidnamn@] (bilagenamn). Exempel: attach:img.png, attach:minwiki:Main.WebHome@img.png
      • attach:: Den sträng som identifierar resursen som en bilaga.  (Från engelskans "attachment" vilket betyder "bilaga".)
      • wikisidnamn: En sträng vilken kan utelämnas som refererar till det dokument bilagan tillhör.  Se punkten "wikisida" ovan.
      • bilagenamn: Namnet på själva bilagan.  (Notera att XWiki ibland ändrar filnamnet på filer som laddas upp som bilaga.)
    • E-postadress på formatet mailto: (e-postadress) (#ankare får ej användas här). Exempel: mailto:sven@svensson.se
      • mailto:: Den sträng som identifierar resursen som en e-postadress.  (Från engelskans "mail to" vilket betyder "e-brev till".)
      • epostadress: Den e-postadress som skall vara mål för länken.  Exempel: "sven@svensson.se"
    • Relativ sökväg på servern på formatet path: (sökväg). Exempel: path:$doc.getURL('reset') producerar måladressen http://server.domän.se/xwiki/bin/reset/Rum/Sida where /xwiki/bin/reset/Rum/Sida produceras av $doc.getURL('reset').
      • path: En obligatorisk sträng som identifierar resursen som en relativ sökväg.  (Från engelskans "path", vilket betyder "sökväg".)
      • sökväg: En obligatorisk sträng som anger den på servern relativa sökvägen till resursen som skall länkas.
    • UNC på formen unc: (sökväg). Länken renderas som en file://-länk. Exempel: unc:C:\Windows\, unc:\\minserver\path\img.png, unc:home/user/nånfil
      • sökväg: En obligatorisk sträng som anger lokal resurs för användaren. Exempel: C:\Windows\, \\minserver\sökväg\img.png, home/user/nånfil
  • parameters: En utelämningsbar lista separerad med blankstegstecken med parametrar till länken.  Exempel: queryString="mindata1=5&mindata2=Hej" anchor="HTableOfContents" rel="__blank"
    • queryString: En query-sträng (vilken får utelämnas) som anger parametrar som skall vara med i den renderade URL:en.  Exempel: url:http://domän.com/sökväg||queryString="mindata1=5&mindata2=Hej" producerar måladressen http://domän.com/sökväg?mindata1=5&mindata2=Hej
    • anchor: Ett ankarnamn (vilket får utelämnas) som pekar på en ankardefinition på sidan som refereras av länken.  I XWiki skapas ankare automatiskt för varje rubrik bestående av bokstaven H (som i engelskans heading) följt av rubriknamnet.  De svenska bokstäverna å, ä och ö utelämnas alltid ur ankarnamnet.  Detta gäller även för alla tecken som ej är bokstäver eller siffror, exempelvis blanktecken, punk och komma.  En länk till sektionen XWiki syntax 2.1 Länkspecifikation kan alltså skapas via ankaret HXWikisyntax21Lnkspecifikation.  Exempel: url:http://domän.com/sökväg||anchor="HTableOfContents" producerar måladressen http://domän.com/sökväg#HTableOfContents
    • rel: En parameter (som får utelämnas) som anger hur länken skall öppnas. Exempel: rel="__blank" (öppnar länken i nytt fönster)

Tabeller

2.0 Tables

I XWiki syntax är det relativt enkelt att skapa tabeller.  Det går också att ange parametrar för enskilda celler och rader i XWiki syntax 2.1.

FormateringstypXWiki syntax 2.1Resultat
Standardtabell
|=Titel 1|=Titel 2
|Ord 1 |Ord 2
eller
!=Titel 1!=Titel 2
!!Ord 1!!Ord 2
Titel 1Titel 2
Ord 1Ord 2
Parametriserad tabell
(% style="background-color:red;text-align:center" %)
|=Titel 1|=(% style="background-color:yellow" %)Titel 2
|Ord 1|Ord 2
Titel 1Titel 2
Ord 1Ord 2
Filtrerbar och sorterbar tabell
{{velocity}}
$xwiki.ssfx.use("js/xwiki/table/table.css")
$xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js", true)
{{/velocity}}

(% class="grid sortable filterable doOddEven" id="tableid" %)
(% class="sortHeader" %)|=Titel 1|=Titel 2
|Cell 11|Cell 12
|Cell 21|Cell 22
Information

För mer avancerade funktionalitet, se LiveData-makrot.

Titel 1Titel 2
Cell 11Cell 12
Cell 21Cell 22

Images

2.1 Images

FormateringstypXWiki syntax 2.1Resultat
Bild från bilaga till aktuell sidaimage:img.pngimg.png
Bild från bilaga i annat dokumentimage:Rum.Sida@img.pngimg.png
Bild med parametrar[[image:img.png||width="25" height="25"]]img.png
Bild från URLimage:http://some/url/img.pngimg.png
Ikonimage:icon:acceptaccept

XWiki Syntax 2.1 Image Specification

Information

Delarna inom ( ) är obligatoriska och delarna inom { } får utelämnas.

Det fullständiga formatet för bilder är antingen image: (referens) eller [[image: (referens) {||parametrar}]]

  • image: En obligatorisk sträng som identifierar resursen som en bild.
  • referens: Referensen till bilden som skall visas på ett av följande format:
    • URL: En URL till en bild på formatet http://sökväg/bildnamn. Exempel: http://domän.org/sökväg/bild.png
    • Bilaga referens på formatet {{{wikinamn:} rum.} sida@} (bildnamn)
      • wikiNamn: En sträng (vilken kan utelämnas) som anger namnet på den virtuella wikin.  Bildreferensen kommer att peka på en bild inuti den namngivna wikin.  Exempel: minwiki
      • rum: Ett rum i wikin.  Om inget anges används det aktuella rummet, dvs samma rum som sidan som innehåller länken.  Exempel: Main
      • sida: En sträng (vilken kan utelämnas) som anger namnet på sidan som bildbilagan tillhör.  Exempel: WebHome
      • bildnamn: En obligatorisk sträng som anger namnet på bildbilagan.  (Notera att XWiki ibland ändrar filnamnet på filer som laddas upp som bilaga.)
    • Ikon referens på formatet (icon:) (ikonnamn). Exempel: icon:accept
      • icon: En obligatorisk sträng som identifierar bildreferensen som en ikon från XWikis ikonsamling.
      • ikonnamn: En obligatorisk sträng som anger namnet på ikonen. Exempel: accept
  • parametrar: En utelämnings bar lista separerad av blankstegstecken med parametrar till bilden.  Exempel: width="800" height="600" alt="img.png" title="Min fina bild"
    • HTML-attribut:  Alla attribut definierade i HTML-standarden för taggen <img> kan användas.
      • style: CSS-stilinformation som skall appliceras på bilden. Exempel: style="float:right;height:50" (bilden till höger, höjd 50 pixlar), style="display:block;margin-left:auto;margin-right:auto;width:80%" (bilden centrerad, bredd 80% av blockbredden), style="vertical-align:bottom" (texten ställs i linje med bildens nederkant)
      • height: Parameter som anger höjden på bilden vid visning.  Värdet kan anges antingen i pixlar (exempel: height="80") eller relativt höjden på bildens omgivande block (exempel: height="40%").
      • width: Parameter som anger bredden på bilden vid visning.  Värdet kan anges antingen i pixlar (exempel: height="80") eller relativt bredden på bildens omgivande block (exempel: height="40%"). 
      • title: Parameter som anger texten som blir synlig då muspekaren hålls över bilden. Exempel: title="Min fina bild"
      • alt: Parameter som anger ersättningstext om webbläsaren ej kan visa bilder.  Eftersom denna parameter är obligatorisk i HTML kommer XWiki att använda filnamnet istället om denna parameter utelämnas.  Exempel: alt="img.png"
      • Mer: En mer omfattande beskrivning av HTML-taggen <img> inklusive fler attribut kan man läsa om på w3.org.
    • queryString: Det går även att ange parametrar till nedladdningslänken för bilden.  Exempel: queryString="width=100&height=800&keepAspectRatio=true" (keepAspectRatio=true kommer att misslyckas om både width- och height-parametrarna specificerats utöver queryString!)

Avancerad

Ej formaterad text

2.0 Verbatim

Det går att ange att text ej skall formateras av wiki syntaxen, dvs, symbolerna för wikisyntax kommer att visas istället för att texten formateras.

FormateringstypXWiki syntax 2.1Resultat
Ej formaterad text inuti formaterad textLite {{{**[[ej renderat]]**}}} innehållLite **[[ej renderat]]** innehåll
Block av ej formaterad text
{{{
flerradigt
**ej renderat**
innehåll
}}}
flerradigt
**ej renderat**
innehåll

Citering

2.0 Quotations

FormateringstypXWiki syntax 2.1Resultat
Citat
> Anna sade detta
Jag sade ok

 Anna sade detta

Jag sade ok

Nestlade citat
> Anna sade detta
>> Lina svarade detta
Jag sade ok

 Anna sade detta

 Lina svarade detta

Jag sade ok

Gruppering

2.0 Groups

Gruppering kan användas för att infoga kompexa element i löpande text. Exempelvis för att infoga ett dokument i löpande text, eller komplexa element inuti listor eller tabellceller.  Gruppering markeras med följande syntaktiska symboler: (((...))).  En gruppering kan innehålla en annan gruppering.

XWiki syntax 2.1Resultat
|=Titel 1|=Titel 2|=Titel 3
|Cell ett|(((
= Inbäddat dokument

Ett inbäddat stycke

* listelement ett
* listelement två
  ** underelement 1
  ** underelement 2
))) | Cell tre

Fortsättningen på toppnivådokumentet
Titel 1Titel 2Titel 3
Cell ett

Inbäddat dokument

Ett inbäddat stycke

  • listelement ett
  • listelement två
    • underelement 1
    • underelement 2
 Cell tre

Fortsättningen på toppnivådokumentet

Kontrollsekvenser

2.0 Escapes

Kontrollsekvenser för wikisymboler

FormateringstypXWiki syntax 2.1Resultat
Kontrollsekvens för enstaka tecken

Detta är inte en ~[~[länk~]~]
InformationFör att generera ett ~-tecken använd två ~-tecken: ~~ 

Detta är inte en [[länk]]

Parameters

2.0 Parameters

Med XWiki syntax  2.1 är det möjligt att ange parametrar till syntaktiska element och textblock.  Detta används exempelvis för att ändra stil på elementen.  Det går att ange nyckel/värde-par så att XHTML-renderaren infogar motsvarande attribut i den underliggande XHTML-representationen av syntaxelementen. 

XWiki syntax 2.1Genererad XHTML
(% class="minKlass" style="minStil" id="mittId" %)
= rubrik =
<h1 class="myClass" style="minStil" id="mittId">rubrik</h1>

Programmera

Makron

2.0 Macros

Det finns två typer av makron i XWiki syntax 2.0:

  • Velocity-makron, vilka anropas med syntaxen #makronamn(parameter1 ... parameterN)# inuti XWiki-makrot "velocity".
  • XWiki-makron, vilka anropas med syntaxen {{makronamn parameter1="värde1" ... parameterN="värdeN"}}.
FormateringstypXWiki syntax 2.1Resultat
XWiki-makron
{{code language="java"}}
System.out.println("Hello World!");
{{/code}}
System.out.println("Hello World!");
Information

Radeox-makron kan ej användas i XWiki syntax 2.0 och har därför skrivits om som XWiki-makron.

Information

En fullständig lista över tillgängliga makron finns på makroreferenssidan.

HTML

2.0 HTML

Information

I XWiki syntax 2.1 HTML eller XHTML måste anges inuti HTML-makrot.

XWiki syntax 2.1Resultat
{{html}}<b>fetstil</b>{{/html}}fetstil
Information

I XWiki syntax 2.1, tolkas ej wikisyntax (ej heller andra makron, eftersom makron är wikisyntax) inuti HTML-makrot om inget annat anges. Ange {{html wiki="true"}} för att slå på tolkning av wikisyntax.

Skript

2.0 Scripts

Information

In XWiki syntax 1.0 är det möjligt att ange Velocity-skript var som helst på en wikisida.  Detta medför problem då en användar oavsiktligen matar in Velocity-kod.  Dessutom renderas sidor som ej innehåller Velocity-kod långsammare än nödvändigt.  Det medför även andra tekniska begränsningar.  Således måste Velocity-skript avgränsas med hjälp av velocity-makrot i XWiki syntax 2.1.  Detsamma gäller för Groovy-skript som måste anges med hjälp av groovy-makrot.

FormateringstypXWiki syntax 2.1
Velocity-skript
{{velocity}}
#set ($var = "något värde")
{{/velocity}}
Groovy-skript
{{groovy}}
def var = "något värde"
{{/groovy}}