Wikistile

für die Liste aller Seiten

Autoren (Grundlagen und Fortgeschritten)

< Inhaltsverzeichnis | Dokumentations-Index | Beispiele zu Wikistilen >

Wikistile erlauben es dem Autor, die Farbe und andere Merkmale eines Seiteninhalts zu verändern. Ein Wikistil wird von Prozentzeichen eingerahmt wie z. B. bei %red% oder %bgcolor=lightblue%.

Wikistil Attribute

Die erkannten Stilattribute innerhalb eines Wikistils sind:

 ----------------- CSS ------------------
 ---- HTML ----
 bgcolor
 background-color
 border1
 color
 display
 float
 clear
 font-size
 font-family
 font-weight
 font-style
 height*
 list-style
 margin1
 padding1
 text-align
 text-decoration   
 white-space
 width* 
 accesskey 
 align
 class
 hspace 
 id 
 target 
 rel 
 vspace 
 value
 reversed
 Sonderattribute: 
 define, apply

Die Attribute in den ersten beiden Spalten entsprechen den Cascading Style Sheet (CSS) Attributen gleichen Namens. Die Attribute in der letzten Spalte sind nur für bestimmte Dinge gültig:

Wikistile contra CSS-Stile

Wikistile, wie sie in die Seitenquelltexte geschrieben werden, sind nicht exakt CSS-Stile oder CSS-Klassen. Wikistile erlauben Autoren, sowohl vom Administrator vordefinierte CSS-Klassen als auch eigenen Klassen zu benutzen und neue Kombinationen von Stilen zu definieren, ohne die lokalen CSS-Dateien auf dem Server zu verändern.

Beachten Sie, dass PmWiki fortgeschrittenen Autoren erlaubt, class= und style= in DIV-Bereichen und Tabellen zu benutzen, doch sind dies reine HTML-Attribute und keine Wikistile, Kenntnisse in CSS sind auf jeden Fall erforderlich.

Textfarben und Schriften

Die grundlegenste Anwendung von Wikistilen ist das Ändern von Textattributen wie Farbe, Hintergrundfarbe und Schriftart. PmWiki definiert bereits einige Wikistile für die Veränderung der Farbe vor: %black% (schwarz), %white% (weiß), %red% (rot), %yellow% (gelb), %blue% (blau), %gray% (grau), %silver% (silber), %maroon% (braun), %green% (grün), %navy% (dunkelblau) und %purple% (lila)

Der Korb enthält %red% Äpfel, %blue% Blaubeeren, %purple% Auberginen, %green% Limetten %% und noch anderes.

Der Korb enthält Äpfel, Blaubeeren, Auberginen, Limetten und noch anderes.

Für andere als die vordefinierten Farben verwendet man den %color=...% Wikistil. (Hinweis: RGB Farben (#rrggbb) sollten immer mit Kleinbuchstaben definiert werden, damit sie nicht versehentlich als WikiWort erkannt werden.)

Ich hätte auch gerne noch %color=#ff7f00% Mandarinen%%!

Ich hätte auch gerne noch Mandarinen!

Die Hintergrundfarbe kann mit dem Wikistil %bgcolor=...% verändert werden:

Dieser Satz enthält %bgcolor=green yellow% gelben Text auf grünem Hintergrund. 

Dieser Satz enthält gelben Text auf grünem Hintergrund.

Weitere Farbdefinitionen: Wikistil-Farben

Textausrichtung

WikiStile werden benutzt, um die Textausrichtung zu kontrollieren

%center% Dieser Text ist zentriert. 

%right% Rechtsbündig.

Dieser Text ist zentriert.

Rechtsbündig.

und den Textfluss zu beeinflussen:

%rfloat% Dieser Text fließt nach rechts 

%rframe% fließt nach rechts mit einem Rahmen 

Lorem ipsum dolor sit amet, consectetuer sadipscing elitr

Dieser Text fließt nach rechts

fließt nach rechts mit einem Rahmen

Lorem ipsum dolor sit amet, consectetuer sadipscing elitr

Gültigkeitsbereich

Wikistile können auch einen Gültigkeitsbereich angeben; ohne Gültigkeitsbereich wird der Stil dem nachfolgenden Text bis zum nächsten Wikistil oder dem Ende des Absatzes zugewiesen, je nachdem, was zuerst kommt. Das apply=-Attribut und seine Kurzformen erlauben den Gültigkeitsbereich wie folgt zu ändern:

LangformKurzformDer Stil wird angewendet auf ...
%apply=img ...%-alle folgenden Bilder, bis ein anderer Stil wirkt
%apply=p ...%%p ...%den aktuellen Absatz
%apply=pre ...%-den aktuellen vorformatierten Text
%apply=list ...%%list ...%die aktuelle Liste
%apply=item ...%%item ...%den aktuellen Listenpunkt
%apply=div ...%-den aktuellen DIV-Abschnitt
%apply=block ...%%block ...%den aktuellen Block (Absatz, Liste, Listenpunkt, Überschrift oder DIV-Abschnitt).

Demnach ist %p color=blue% das Gleiche wie %apply=p color=blue% und %list ROMAN% ist das Gleiche wie %apply=list list-style=upper-roman%.

Auch einige vordefinierte Stilkurzformen machen Gebrauch von apply=, so ist %right% eine Kurzform von %text-align=right apply=block%.

Beispiel:

Wende einen Stil auf einen Absatz an
%p bgcolor=#ffeeee% Der Wikistil am Anfang dieses Absatzes gilt vom Anfang dieser Zeile für den gesamten Absatz, sogar wenn %blue% andere Wikistile %% mitten im Absatz erscheinen.

Der Wikistil am Anfang dieses Absatzes gilt vom Anfang dieser Zeile für den gesamten Absatz, sogar wenn andere Wikistile mitten im Absatz erscheinen.

Achtung: Ein angewendeter Wikistil wirkt nur, wenn er in der ersten Zeile dessen steht, was er verändern soll. Mit anderen Worten, ein Wikistil in der dritten Quellkodezeile eines Absatzes kann die Attribute des Absatzes nicht ändern.

Der Wikistil in der folgenden Zeile
%apply=p color=blue% ist wirkungslos,
weil der Absatz bereits begonnen hat

Der Wikistil in der folgenden Zeile ist wirkungslos, weil der Absatz bereits begonnen hat

In der ersten Zeile %p color=red% des
Absatzes funktioniert die Anweisung

In der ersten Zeile des Absatzes funktioniert die Anweisung

* Eine Liste
* %list red% Hoppla - zu spät, um für die Liste zu wirken!
  • Eine Liste
  • Hoppla - zu spät, um für die Liste zu wirken!
* %list red% Hier ist alles gut.
* Aber das Unheil kommt.

* %list green% Hier wirkt der Style nicht.
* Es handelt sich noch immer um die selbe Liste.
* [=%list green%=] kommt zu spät.
  • Hier ist alles gut.
  • Aber das Unheil kommt.
  • Hier wirkt der Style nicht.
  • Es handelt sich noch immer um die selbe Liste.
  • %list green% kommt zu spät.

Wenn Sie eine Liste in zwei teilen wollen, reicht nicht eine leere Zeile, die nichts oder nur Leerzeichen enthält. Diese wird als zum vorigen Listenpunkt gehörend angesehen.
Fügen Sie eine Zeile ein, die ein nicht umbrechendes Leerzeichen (&nbsp;) oder ein maskieres Nullzeichen ([==]) enthält.

* %list red% erster Punkt
* zweiter Punkt
&nbsp;
* %apply=list bgcolor=lightgreen% zweite Liste - erster Punkt
* zweite Liste - zweiter Punkt
[==]
* %list class=mambo% dritte Liste - erster Punkt
* dritte Liste - zweiter Punkt
  • erster Punkt
  • zweiter Punkt

 

  • zweite Liste - erster Punkt
  • zweite Liste - zweiter Punkt

  • dritte Liste - erster Punkt
  • dritte Liste - zweiter Punkt

Größere Blöcke

Der >>wikistyle<<-Block kann für die Zuweisung eines Wikistils für einen größeren Bereich verwendet werden. Der Stil wird bis zum nächsten >><< verwendet.

>>blue font-style=italic bgcolor=#ffffcc<<
Alles nach obiger Zeile ist mit blauem, kursivem Text geschrieben,

Das beinhaltet
    vorformatierten Text
* Listen
-> eingerückte Zeilen
>><<

Alles nach obiger Zeile ist mit blauem, kursivem Text geschrieben,

Das beinhaltet

    vorformatierten Text
  • Listen
eingerückte Zeilen

Anmerkung: Die (:div style="..." class="...":)-Direktive funktioniert nicht in der gleiche Weise wie >>wikistyle<<, sie kann nur die regulären HTML-Style- und -Class-Attribute enthalten.

HTML "class" und "style" auf (:div:)-Bereiche anwenden

(:div style="...":) funktioniert fast wie >>style<<, aber die Stilinformation ist in ein style="..." Attribut eingebettet. Beachten Sie, dass diese Attribute keine Wikistile sind, Kenntnisse in CSS sind Voraussetzung für ihren Gebrauch. Verschachteln von Blöcken ist möglich.

(:div class="green" style="font-style:italic; border:1px solid blue; color:#00aa00; background-color:#ffffcc":)
Alles nach dieser Zeile ist grün und kursiv

Das beinhaltet
    vorformatierten Text
* Listen
-> eingerückte Zeilen
(:divend:)

Alles nach dieser Zeile ist grün und kursiv

Das beinhaltet

    vorformatierten Text
  • Listen
eingerückte Zeilen
(:div1 style="font-style:italic; background-color:#ffffcc":)
Äußerer Stil
(:div2 style="color:red; background-color:lightblue":)
verschachtelter Stil
(:div2end:)
wieder äußerer Stil
(:div1end:)

Äußerer Stil

verschachtelter Stil

wieder äußerer Stil

HTML "class"- und "style"-Attribute auf Tabellen anwenden

Wikistile sind nur die Kommandos zwischen den Prozentzeichen (%...%).

Tabellen und Tabellendirektiven erlauben fortgeschrittenen Autoren, die HTML/CSS-Attribute class= und style= einzubauen. Beachten Sie, dass diese Attribute keine Wikistile sind, Kenntnisse in CSS sind Voraussetzung für ihren Gebrauch.

||border=1 class="beispiel" style="font-style:italic; border:1px solid blue; background-color:#ffffcc"
||Kursiver Text mit gelbem Hintergrund, CSS-Klasse "beispiel" (falls definiert)||
||für eine einfache Tabelle||
Kursiver Text mit gelbem Hintergrund, CSS-Klasse "beispiel" (falls definiert)
für eine einfache Tabelle
(:table class="beispiel" style="font-style:italic; border:1px solid blue; background-color:#ffffcc":)
(:cellnr:)
Kursiver Text mit gelbem Hintergrund, CSS-Klasse "beispiel" (falls definiert)

Einschließlich
    vorformatiertem Text
* Listen
-> Einrückung
(:tableend:)

Kursiver Text mit gelbem Hintergrund, CSS-Klasse "beispiel" (falls definiert)

Einschließlich

    vorformatiertem Text
  • Listen
Einrückung

Eigene Kurznamen für Stile

Mit dem define=-Attribut können einem Kurznamen verschiedene Wikistile zugewiesen werden. Dieser Kurzname kann für spätere Wikistile verwendet werden.

%define=box block bgcolor=#eeeeee border="2px dotted blue"%

%box% [@
$ echo "Hallo Welt"
Hallo Welt
$ exit
@]

%box font-weight=bold color=green% [@
$ echo "Ich sagte, HALLO"
@]
$ echo "Hallo Welt"
Hallo Welt
$ exit
$ echo "Ich sagte, HALLO"

Tipp: Meist ist es eine gute Idee, gemeinsame Stildefinitionen in den Kopfzeilen der Gruppe unterzubringen, so dass sie bei allen Seiten der Gruppe verwendet werden können. Alternative kann der Administrator des Wikis Stile als lokale Anpassungen definieren, die auf der gesamten Webseite gültig sind (siehe Eigene Wikistile).

Tipp: Verwenden Sie bei der Definition von Stilen passende Bedeutungen als Text anstatt nur den Farbnamen. Wenn zum Beispiel Warnungen in grüner Farbe erscheinen sollen setzen Sie %define=warn green% und verwenden dann %warn% anstatt %green% im Dokument. Dann können Sie später immer noch entscheiden, dass Warnungn vielleicht doch anders dargestellt werden sollen. So ist es viel einfacher, die (eine) Definition anstatt vieler (%green%-)Stile zu ändern.

Tipp: Jeder undefinierte WikiStil wird automatisch als ein Aufruf einer Klasse behandelt, damit ist %pre% das Gleiche wie %class=pre%.

Vordefinierte Stilkurznamen

PmWiki definiert einige Stilkurznamen:

Aktivieren der Syntaxhervorhebung per "Kodeverschönerungsbibliothek"

Seit Version 2.2.119 macht es PmWiki relativ leicht, Syntaxhervorhebungen für vorformatierte Textblöcke zu aktivieren. Beachten Sie, dass ein Block als "Kodeblock" für Syntaxhervorhebungen angesehen wird, wenn er als vorformatiertes Element gerendert wird. Siehe unter BasicEditing#preformatted, 3 mögliche Wege zu vorformatierten Texten.

Um die Syntaxhervorhebungen zu aktivieren, fügen Sie Ihrer config.php-Datei das Folgende hinzu:

  $EnableHighlight = 1;
  $HTMLHeaderFmt['Highlight'] = '
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@latest/build/styles/default.min.css" />
  <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@latest/build/highlight.min.js"></script>';

Dies lädt die Highlight.js-Bibliothek von einem globalen Content Delivery Network (CDN), aber Sie können stattdessen diese beiden Dateien auch in Ihr pub-Verzeichnis kopieren und darauf verweisen.

Dann können Sie – in einer Wikiseite – die Wikistile %highlight% oder %hlt% und die Sprache benutzen, um damit Ihre Kodeblöcke zu markieren.

Entweder direkt vor dem Kodeblock:

%hlt php%[@
  function SDVA(&$var,$val)
    { foreach($val as $k=>$v) if (!isset($var[$k])) $var[$k]=$v; }
  function IsEnabled(&$var,$f=0)
    { return (isset($var)) ? $var : $f; }
@]
  function SDVA(&$var,$val)
    { foreach($val as $k=>$v) if (!isset($var[$k])) $var[$k]=$v; }
  function IsEnabled(&$var,$f=0)
    { return (isset($var)) ? $var : $f; }

Oder in einem umgebenden DIV-Block:

>>highlight css<<
  /* Dies justiert die Größen und Abstände von Überschriften */
  h1, h2, h3, h4, h5, h6 { margin:1.0em 0 .6em 0; }
  h1, h2, h3, h6 { font-weight:normal; }
  h4, h5 { font-weight:bold; }
>><<
  /* Dies justiert die Größen und Abstände von Überschriften */
  h1, h2, h3, h4, h5, h6 { margin:1.0em 0 .6em 0; }
  h1, h2, h3, h6 { font-weight:normal; }
  h4, h5 { font-weight:bold; }

Wenn Sie die Möglichkeit korrekt aktiviert haben, sehen Sie die Syntaxhervorhebung des obigen Kodes.

Stile aktivieren

Stile, die oben nicht definiert sind, kann ein Wiki-Administrator aktivieren, indem er die local/config.php-Datei verändert. Um z. B. das "line-height"-Stilattribut zu aktivieren, fügt er die folgende Zeile hinzu:

$WikiStyleCSS[] = 'line-height';

Gültigkeitsbereich für andere HTML-Elemente definieren

Sie können zusätzliche HTML-Elemente zu $WikiStyleApply hinzufügen, um WikiStyles auf weitere HTML-Elemente anzuwenden, um zum Beispiel Stile für Tabellenzeilen oder Anker-Tags zu erlauben.

Um einen Stil auf Anker-Tags anzuwenden, setzen Sie folgende Zeile in die config.php:

$WikiStyleApply['link'] = 'a';

Dann können Sie eine Klasse oder einen Stil auf einen Anker-Verweis anwenden:

%apply=link red%[[PmWiki.WikiStyles | test link]]

test link

Oder, um ein ID-Attribut zu einer Tabellenzeile hinzuzufügen, setzen Sie die folgende Zeile in die config.php:

$WikiStyleApply['row'] = 'tr';

und in einer erweiterten Tabelle schreiben Sie:

(:cellnr:) %apply=row id=myid bgcolor=pink% cell content

Das geht auch auch in einer einfachen Tabelle:

|| border=1
|| %apply=row id=myrowid% 1 || 2 || 3 || 4 ||

Beachten Sie: Der %apply=row...%-WikiStil sollte in der gleichen Zeile wie (:cellnr:) stehen. Dem (:cellnr:) muss ein Leerzeichen folgen.

Beispiele

Beispiele zu den Wikistilen enthält eine Reihe von Beispielen, wie Wikistile in Seiten eingesetzt werden können.

Bekannte Probleme

Siehe auch

für die Liste aller Seiten

< Inhaltsverzeichnis | Dokumentations-Index | Beispiele zu Wikistilen >


Übersetzung von PmWiki.WikiStyles,   Originalseite auf PmWikiDe.WikiStyles   —   Rückverweise

Zuletzt geändert:   PmWikiDe.WikiStylesam 17.06.2020
 PmWiki.WikiStylesam 02.03.2023