Wiki Style Examples

%trail% <<|DocumentationIndex|>>

PmWiki uses WikiStyles for styling text with color and other attributes. PmWiki 2.0 introduced the ability to control the styling further and to even place styles on blocks.

A style is specified within a pair of %-signs and styles the text that follows, as in:


This text is %color=red% red, %color=blue% blue, %% and normal (black).

This text is %color=red% red, %color=blue% blue, %% and normal (black).

There are a wide number of available style properties, borrowed primarily from HTML and CSS. In addition, an author can define a style "shortcut" by using the define= property. For example, to define a style of %red%, one can use:


%color=red define=mystyle%
Here is some %mystyle% red text created using a style shortcut.

%color=red define=mystyle%
Here is some %mystyle% red text created using a style shortcut.

Shortcuts can be combined with other styles, including other shortcuts:


%color=red define=lovelyred%
%bgcolor=yellow define=likegrapefruit%

%red% This text is red, %red bgcolor=#ccc% red on a grey background, and
%lovelyred likegrapefruit% red on a yellow background.  

%color=red define=lovelyred%
%bgcolor=yellow define=likegrapefruit%

%red% This text is red, %red bgcolor=#ccc% red on a grey background, and %lovelyred likegrapefruit% red on a yellow background.

So far, this is all basically the same as what was available in PmWiki 1.0. PmWiki 2.0 includes the capability to style blocks, by using the apply= style property. Specifying apply=block in a `WikiStyle will cause that style to be applied to the entire block, instead of just the text that follows:


This entire block %apply=block bgcolor=yellow% has a yellow background,
even though the `WikiStyle appears in the middle of the line. 
%bgcolor=pink% Other inline (non-block) WikiStyles can appear in the middle
of the line,%% as before.

This entire block %apply=block bgcolor=yellow% has a yellow background, even though the `WikiStyle appears in the middle of the line. %bgcolor=pink% Other inline (non-block) WikiStyles can appear in the middle of the line,%% as before.

This means it's now possible to do right-aligned and centered text:


%block text-align=right% The text of this paragraph is right-aligned. 

%block text-align=center% The text of this paragraph is centered.  

%block text-align=right% The text of this paragraph is right-aligned.

%block text-align=center% The text of this paragraph is centered.

In fact, PmWiki predefines %right% and %center% style shortcuts so that you can do this more simply:


%right% This is right-aligned.

%center% This is centered.

%right% This is right-aligned.

%center% This is centered.

Authors can define their own custom styles:


%block bgcolor=#fdf define=Pm%
%center bgcolor=#dfd border='3px dotted green' define=goofy%
%right bgcolor=#ffffcc border='1px dotted red' padding=5px
define=rediguana%
%define=strike text-decoration=line-through%

%Pm% Any text that is on a light purple background is a comment from "Pm".

%goofy% Here's some text from Goofy.

%rediguana% bla bla by rediguana!

%goofy%Hello, I am %strike%upset%% %strike%disheartened%% happy to meet
you.

%block bgcolor=#fdf define=Pm%
%center bgcolor=#dfd border='3px dotted green' define=goofy%
%right bgcolor=#ffffcc border='1px dotted red' padding=5px define=rediguana%
%define=strike text-decoration=line-through%

%Pm% Any text that is on a light purple background is a comment from "Pm".

%goofy% Here's some text from Goofy.

%rediguana% bla bla by rediguana!

%goofy%Hello, I am %strike%upset%% %strike%disheartened%% happy to meet you.

Styles can be applied to almost any kind of block:


* %block bgcolor=yellow% Here is a list item
* Here's another list item

* Here's more of a list

# A new list
  • %block bgcolor=yellow% Here is a list item
  • Here's another list item
  • Here's more of a list
  1. A new list

In particular, this means that outlines are now possible using the predefined %ROMAN%, %roman%, %ALPHA%, and %alpha% list-block styles. The style has to be specified on the first item in the list (and we may develop an alternate syntax for this sort of ordered list):


# %ROMAN% Top level
## %ALPHA% second-level
## second-level
## second-level
### third-level
### third-level
## second-level
### third-level
#### %alpha% fourth-level
##### %roman% fifth-level
##### fifth-level
#### fourth-level
# top-level
# top-level
  1. %ROMAN% Top level
    1. %ALPHA% second-level
    2. second-level
    3. second-level
      1. third-level
      2. third-level
    4. second-level
      1. third-level
        1. %alpha% fourth-level
          1. %roman% fifth-level
          2. fifth-level
        2. fourth-level
  2. top-level
  3. top-level

WikiStyles can be combined with CSS stylesheets to do this automatically -- see Cookbook:OutlineLists.

Q & A

How do I get a block of preformatted text?

Use something similar to this (assuming you want markup within the block to be interpreted as wiki markup and URIs to be recognized).


>>white-space=pre<<
This block of text is ''preformatted'', see all   the   white-space
and   linebreaks
are preserverd. Links such as [[wiki styles]] etc still work.
>><<

>>white-space=pre<<
This block of text is preformatted, see all the white-space
and linebreaks
are preserverd. Links such as wiki styles etc still work.
>><<

How do I get a block of preformatted text with a colored background and a border?

Use something similar to this (note that wiki markup etc is not recognized within the block):


%block bgcolor=#f0f9ff border='1px solid gray' padding=5px%[@
ip access-list extended example-acl
remark ** This is an example acl **
deny ip any host 10.0.0.1
permit ip any any
@]

%block bgcolor=#f0f9ff border='1px solid gray' padding=5px%

ip access-list extended example-acl
remark ** This is an example acl **
deny ip any host 10.0.0.1
permit ip any any

%trail% <<|Documentation Index|>>

Page last modified on August 19, 2006, at 11:44 AM