Plugin Diagram for DokuWiki
Basic features
Plugin extends syntax of DokuWiki and allows to construct diagrams.
Diagrams must be used within a special tag. It's because their syntax is similar to table syntax. To insert diagram into a code you should write the following:
<diagram> Diagram specification </diagram>
Diagram specification is a multiline expression. Each line consists of control characters, that define links between blocks, and letter sequences, that define blocks. These entities are separated by the special character `|'. For example, the following specification
<diagram> | AAA |-| BBB | | |:| | | | | | | |L|~|~| CCC | </diagram>
defines this diagram:
AAA | BBB | ||||||||||||||
CCC | |||||||||||||||
You can write any text instead of letter sequences for block description except the case of special characters.
<diagram> | root |-| 1-st branch | | |:| | | | | | | |L|~|~| 2-nd branch | </diagram>
root | 1-st branch | ||||||||||||||
2-nd branch | |||||||||||||||
Unfortunately, this method breaks down text representation of diagram (for large diagram this leads to difficulty in changing wiki-code) and also doesn't allow to use wiki-syntax within a block. To overcome this you should consider sequences of letters, digits and underscore as abbreviations and decode them at the end of a line using the equal sign and `|' symbol as a separator. For example:
<diagram> | AAA |-| BBB |AAA=root|BBB=1<sup>st</sup> branch (see [[wp>Branch]]) | |:| | | | | | | |L|~|~| CCC |CCC=2<sup>nd</sup> branch\\ **(very important branch)** </diagram>
root | 1st branch (see Branch) | ||||||||||||||
2nd branch (very important branch) |
|||||||||||||||
You can describe family trees using such diagrams.
<diagram> | | | Dad |y| Mom | | |Dad=Daddy|Mom=Mommy | |,|-|-|-|+|-|-|-|.| | | Sys | | Me | | Bro |Sys=Syster|Bro=Brother </diagram>
Daddy | Mommy | ||||||||||||||||||||||
Syster | Me | Brother | |||||||||||||||||||||
All types of connections are shown in the following table:
, | . | ` | ' | ^ | v | ( | ) | - | ! | + |
F | 7 | L | J | A | V | C | D | ~ | : | % |
y | h | } | { | p | b | ] | [ | * | # | |
We'll refer to these elements as connection tiles.
Style of diagram elements
You can change border color and background color of a block. It's done by specifying block parameters in abbreviation description right before equal sign and within curly brackets. Parameters should be formatted as key:value and separated by semicolon. There are two keys supported in the current version of plugin: border-color
for a color of border and background-color
for a color of background. Color values should be specified in CSS2 format including SVG color keywords.
<diagram> | AAA | | | | |F|~|~|~|7| |AAA{border-color:blue;background-color:lightgreen}=Border is blue,\\ background is lightgreen | |!| | | | | CCC | | DDD |CCC{border-color:#a9c}=Border is #a9c,\\ background is transparent|DDD{border-color:silver;background-color:silver;}=Border is silver,\\ background is silver | BBB | | | | | | | | | | |BBB{border-color:rgb(0%,50%,0%);background-color:#abcdef}=Border is green,\\ background is #abcdef </diagram>
Border is blue, background is lightgreen |
|||||||||||||||||||||||||
Border is #a9c, background is transparent |
Border is silver, background is silver |
||||||||||||||||||||||||
Border is green, background is #abcdef |
|||||||||||||||||||||||||
There is also possible to setup text alignment and internal indent using text-align
and padding
properties:
<diagram> |Left| |Left{text-align:left;}=Text is\\ aligned to the left | |!| | |`|-|-|Center| |Center=By default text is aligned\\ to the center | | | | | |!| | | | | | |`|-|-|Right|Right{text-align:right;padding:1em}=Align text\\ to the right\\ and setup indents </diagram>
Text is aligned to the left |
|||||||||||||||||||||
By default text is aligned to the center |
|||||||||||||||||||||
Align text to the right and setup indents |
|||||||||||||||||||||
You can note here that it's allowed to skip empty sections in the end of a row as in the last example. But you should be aware of some difficulties in futher editing of diagram and influence on block width. Besides you can change spacing between blocks by introducing more columns and rows (this works because of minimal height and width of each empty block). Compare
<diagram> | AAA |-| BBB | | |:| | | | | | | DDD | | |L|~|~| CCC | </diagram>
AAA | BBB | ||||||||||||||||||||||
DDD | |||||||||||||||||||||||
CCC | |||||||||||||||||||||||
with
<diagram> | AAA |-|-|-| BBB | | | | | | | | |:| | |:| | | | | | | | | | | DDD | | |:| | |L|~|~|~|~| CCC | </diagram>
AAA | BBB | ||||||||||||||||||||||||||||||
DDD | |||||||||||||||||||||||||||||||
CCC | |||||||||||||||||||||||||||||||
Arrows
You can use arrows in diagrams. For example,
<diagram> | AAA |-@2| BBB |-@a| EEE | | |:@1| | | |!@4| | | |}@72|-|-| GGG | | DDD |~@8| CCC | | FFF | </diagram>
AAA | BBB | EEE | ||||||||||||||||||||||||||||
GGG | ||||||||||||||||||||||||||||||
DDD | CCC | FFF | ||||||||||||||||||||||||||||
To insert an arrow you should put '@' and one or two symbols as direction settings after а control character. The first symbol sets arrows that are pointed out of the center of connection tile. It's a hexadecimal number that has 4 bits for each of 4 directions: Up, Right, Down, Left. Each bit sets the presence of an arrow in the corresponding direction. If you're not familiar with hexadecimal representation then use the following algorithm. Calculate a sum of direction numbers using this table:
Up | Right | Down | Left |
1 | 2 | 4 | 8 |
If you got a number that is greater than nine, then replace it by a letter according to the table:
10 | 11 | 12 | 13 | 14 | 15 |
a | b | c | d | e | f |
The second symbol is not necessary if you need all arrows to look outside. Otherwise, specify the ones that should look inside using the same direction scheme for the second symbol.
Example: Kennedy family tree
Basic syntax for diagrams was borrowed from Wikipedia. Compare Kennedy family tree with the family tree below.
<diagram> | | | | | JAK |y| MAK | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |JAK=James Kennedy\\ (c. 1770 - c. 1840)|MAK=Maria Kennedy\\ (c. 1775 - 1835) | | | | | | | |!| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PAK |y| BMK | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |PAK=[[wp>Patrick Kennedy (1823–1858)|Patrick Kennedy]]\\ (c. 1823 - 1858)|BMK=[[wp>Bridget Murphy Kennedy|Bridget Murphy]]\\ (1824 - 1888) | |,|-|-|-|v|-|-|-|+|-|-|-|v|-|-|-|.| | | | | | | | | | | | | | | | | | | | | | | | | | | MLK | | JLK | | JOK | | MMK | | PJK |y| MAH | | | | | | | | | | | | | | | | | | | | |MLK=Mary L. Kennedy\\ (1851 - 1926)|JLK=Joanna L. Kennedy\\ (1852 - 1926)|JOK=John Kennedy\\ (1854 - 1855)|MMK=Margaret M. Kennedy\\ (1855 - 1929)|PJK=[[wp>P. J. Kennedy|Patrick Joseph Kennedy]]\\ (1858 - 1929)|MAH=[[wp>Mary Augusta Hickey Kennedy|Mary Augusta Hickey]]\\ (1857 - 1923) | | | | | | | | | | | | | | | | | | | |!| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | JPK |y| RFK | | | | | | | | | | | | | | | | | | |JPK=[[wp>Joseph P. Kennedy, Sr.]]\\ (1888 - 1969)|RFK=[[wp>Rose Fitzgerald Kennedy|Rose Elizabeth Fitzgerald]]\\ (1890 - 1995) | | | | | |,|-|-|-|v|-|-|-|v|-|-|-|v|-|-|-|+|-|-|-|v|-|-|-|v|-|-|-|v|-|-|-|.| | | | | | | | | | | JPK | | JFK |7| ROK | | KAK |7| EMK |F| PAK |F| RFK |F| JAK |F| EDK | | | | |JPK=[[wp>Joseph Patrick Kennedy Jr.]]\\ (1915 - 1944)|JFK=[[wp>John Fitzgerald Kennedy]]\\ (1917 - 1963)|ROK=[[wp>Rosemary Kennedy]]\\ (1918 - 2005)|KAK=[[wp>Kathleen Cavendish, Marchioness of Hartington]]\\ (1920 - 1948)|EMK=[[wp>Eunice Kennedy Shriver]]\\ (b. 1921)|PAK=[[wp>Patricia Kennedy Lawford]]\\ (1924 - 2006)|RFK=[[wp>Robert Francis Kennedy]]\\ (1925 – 1968)|JAK=[[wp>Jean Kennedy Smith]]\\ (b. 1928)|EDK=[[wp>Edward Moore Kennedy]]\\ (b. 1932) | | | | | | | | | | | |:| | | | | | | |:| |:| |:| |F|~|J| | | |:| | | |:| | | | | | | | | | | | | | | | JLB |y|J| | | | WJC |~|J| |:| |:| |:|F|~|~|~|~|J| | | |:| | | | | | | |JLB=[[wp>Jacqueline Kennedy Onassis|Jacqueline Lee Bouvier]]\\ (1929 - 1994)|WJC=[[wp>William John Robert Cavendish, Marquess of Hartington]]\\ (1917 - 1944) | | | | |,|-|-|-|v|-|^|-|v|-|-|-|.| | | | |:| |:| |:|:| | | | | JBK |y|J| | | | | | | |JBK=[[wp>Joan Bennett Kennedy|Virginia Joan Bennett]]\\ (b. 1936) | | | | ARK | | CBK | | JKJ | | PBK | | | |:| |:| |:|:| | |,|-|-|-|v|^|-|-|.| | | | | |ARK=Arabella Kennedy\\ (1956 - 1956)|CBK=[[wp>Caroline Kennedy]]\\ (b. 1957)|JKJ=[[wp>John F. Kennedy, Jr.]]\\ (1960 - 1999)|PBK=[[wp>Patrick Bouvier Kennedy]]\\ (1963 - 1963) | | | | | | | | | | | | | | | | | | | | | |:| |:| |:|:| | KAK | | EMK | | PJK | | | | |KAK=[[wp>Kara Anne Kennedy]]\\ (b. 1960)|EMK=[[wp>Edward Kennedy, Jr.]]\\ (b. 1961)|PJK=[[wp>Patrick J. Kennedy]]\\ (b. 1967) | | | | | | | | | SAS |y|~|~|~|~|~|~|~|~|~|J| |:| |:|:| | | | | | | | | | | | | | | | |SAS=[[wp>Sargent Shriver]]\\ (b. 1915) | |,|-|-|-|v|-|-|-|v|-|^|-|v|-|-|-|.| | |F|~|~|J| |:|L|~|~|~|~|y| SES | | | | | | | | |SES=[[wp>Stephen Edward Smith]]\\ (1927-1990) | RSS | | MOS | | TPS | | MKS | | APS | |:| |F|~|~|J| | | | | |!| | | | | | | | | | | |RSS=[[wp>Robert Sargent Shriver III]]\\ (b. 1954)|MOS=[[wp>Maria Shriver]]\\ (b. 1955)|TPS=[[wp>Timothy Perry Shriver]]\\ (b. 1959)|MKS=[[wp>Mark Kennedy Shriver]]\\ (b. 1964)|APS=[[wp>Anthony Paul Kennedy Shriver]]\\ (b. 1965) | | | | | | | | | | | | | | | | | | | | |:| |:| | |,|-|-|-|v|-|^|-|v|-|-|-|.| | | | | | | | | | | | | | | | PEL |y|~|~|~|~|~|~|~|J| |:| | SEJ | | WKS | | AMS | | KMS | | | | |PEL=[[wp>Peter Lawford]]\\ (1923 - 1984)|SEJ=Stephen Edward Smith, Jr.\\ (b. 1957)|WKS=[[wp>William Kennedy Smith]]\\ (b. 1960)|AMS=Amanda Mary Smith\\ (b. 1967)|KMS=Kym Maria Smith\\ (b. 1972) | | | | | | |,|-|-|-|v|-|^|-|v|-|-|-|.| | | |:| | | | | | | | | | | | | | | | | | | | | | | | | | | CKL | | SML | | VFL | | REL | | |L|y| ETS | | | | | | | | | | | | | | | | |CKL=[[wp>Christopher Lawford]]\\ (b. 1955)|SML=Sydney Maleia Lawford\\ (b.1956)|VFL=Victoria Francis Lawford\\ (b. 1958)|REL=Robin Elizabeth Lawford\\ (b. 1961)|ETS=[[wp>Ethel Skakel Kennedy|Ethel Skakel]]\\ (b. 1928) | |,|-|-|-|v|-|-|-|v|-|-|-|v|-|-|-|v|-|-|-|v|-|^|-|v|-|-|-|v|-|-|-|v|-|-|-|v|-|-|-|.| | | KHK | | JPK | | RFK | | DAK | | MCK | | MLK | | MKK | | CGK | | MMK | | DHK | | REK |KHK=[[wp>Kathleen Kennedy Townsend]]\\ (b. 1951)|JPK=[[wp>Joseph Patrick Kennedy II]]\\ (b. 1952)|RFK=[[wp>Robert F. Kennedy, Jr.]]\\ (b. 1954)|DAK=[[wp>David Kennedy]]\\ (1955 - 1984)|MCK=[[wp>Courtney Kennedy Hill]]\\ (b. 1956)|MLK=[[wp>Michael LeMoyne Kennedy]]\\ (1958 - 1997)|MKK=[[wp>Kerry Kennedy]]\\ (b. 1959)|CGK=[[wp>Christopher George Kennedy]]\\ b. 1963)|MMK=[[wp>Matthew Maxwell Taylor Kennedy]]\\ (b. 1965)|DHK=[[wp>Douglas Harriman Kennedy]]\\ (b. 1967)|REK=[[wp>Rory Kennedy]]\\ (b. 1968) </diagram>
Example: Kennedy family tree with arrows
Let's add arrows now. They're a little bit redundant here but it's for a greater variety.
<diagram> | | | | | JAK |y@aa| MAK | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |JAK=James Kennedy\\ (c. 1770 - c. 1840)|MAK=Maria Kennedy\\ (c. 1775 - 1835) | | | | | | | |!@4 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PAK |y@aa| BMK | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |PAK=[[wp>Patrick Kennedy (1823–1858)|Patrick Kennedy]]\\ (c. 1823 - 1858)|BMK=[[wp>Bridget Murphy Kennedy|Bridget Murphy]]\\ (1824 - 1888) | |,@4|-|-|- |v@4|- |- |- |+@e |- |- |- |v@4|- |-|- |.@4| | | | | | | | | | | | | | | | | | | | | | | | | | | MLK | | JLK | | JOK | | MMK | | PJK |y@aa| MAH | | | | | | | | | | | | | | | | | | | | |MLK=Mary L. Kennedy\\ (1851 - 1926)|JLK=Joanna L. Kennedy\\ (1852 - 1926)|JOK=John Kennedy\\ (1854 - 1855)|MMK=Margaret M. Kennedy\\ (1855 - 1929)|PJK=[[wp>P. J. Kennedy|Patrick Joseph Kennedy]]\\ (1858 - 1929)|MAH=[[wp>Mary Augusta Hickey Kennedy|Mary Augusta Hickey]]\\ (1857 - 1923) | | | | | | | | | | | | | | | | | | | |!@4 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | JPK |y@aa| RFK | | | | | | | | | | | | | | | | | | |JPK=[[wp>Joseph P. Kennedy, Sr.]]\\ (1888 - 1969)|RFK=[[wp>Rose Fitzgerald Kennedy|Rose Elizabeth Fitzgerald]]\\ (1890 - 1995) | | | | | |,@4|- |- |- |v@4 |- |- |- |v@4|- |-|- |v@4|- |- |-|+@e |-|- |-|v@4|- |- |-|v@4|-|- |-|v@4|- |- |-|.@4| | | | | | | | | | | JPK | | JFK |7@88| ROK | | KAK |7@88| EMK |F@22| PAK |F@22| RFK |F@22| JAK |F@22| EDK | | | | |JPK=[[wp>Joseph Patrick Kennedy Jr.]]\\ (1915 - 1944)|JFK=[[wp>John Fitzgerald Kennedy]]\\ (1917 - 1963)|ROK=[[wp>Rosemary Kennedy]]\\ (1918 - 2005)|KAK=[[wp>Kathleen Cavendish, Marchioness of Hartington]]\\ (1920 - 1948)|EMK=[[wp>Eunice Kennedy Shriver]]\\ (b. 1921)|PAK=[[wp>Patricia Kennedy Lawford]]\\ (1924 - 2006)|RFK=[[wp>Robert Francis Kennedy]]\\ (1925 – 1968)|JAK=[[wp>Jean Kennedy Smith]]\\ (b. 1928)|EDK=[[wp>Edward Moore Kennedy]]\\ (b. 1932) | | | | | | | | | | | |: | | | | | | | |: | |:@4 | |: | |F |~ |J | | | |: | | | |: | | | | | | | | | | | | | | | | JLB |y@aa|J | | | | WJC |~@2|J | |: | |: | |: |F |~ |~|~ |~|J | | | |: | | | | | | | |JLB=[[wp>Jacqueline Kennedy Onassis|Jacqueline Lee Bouvier]]\\ (1929 - 1994)|WJC=[[wp>William John Robert Cavendish, Marquess of Hartington]]\\ (1917 - 1944) | | | | |,@4|- |- |- |v@4|- |^@a |- |v@4 |- |- |-|.@4| | | | |: | |: | |: |: | | | | | JBK |y@aa|J | | | | | | | |JBK=[[wp>Joan Bennett Kennedy|Virginia Joan Bennett]]\\ (b. 1936) | | | | ARK | | CBK | | JKJ | | PBK | | | |: | |: | |: |: | | |,@4|-|- |-|v@4|^@a |- |-|.@4| | | | | |ARK=Arabella Kennedy\\ (1956 - 1956)|CBK=[[wp>Caroline Kennedy]]\\ (b. 1957)|JKJ=[[wp>John F. Kennedy, Jr.]]\\ (1960 - 1999)|PBK=[[wp>Patrick Bouvier Kennedy]]\\ (1963 - 1963) | | | | | | | | | | | | | | | | | | | | | |:@4 | |:@4 | |:@4|:@4| | KAK | | EMK | | PJK | | | | |KAK=[[wp>Kara Anne Kennedy]]\\ (b. 1960)|EMK=[[wp>Edward Kennedy, Jr.]]\\ (b. 1961)|PJK=[[wp>Patrick J. Kennedy]]\\ (b. 1967) | | | | | | | | | SAS |y@aa|~ |~ |~ |~|~ |~ |~ |~ |~|J | |: | |: |: | | | | | | | | | | | | | | | | |SAS=[[wp>Sargent Shriver]]\\ (b. 1915) | |,@4|-|-|- |v@4|- |- |- |v@4 |- |^@a |- |v@4|- |-|- |.@4| | |F|~ |~|J | |: |L |~ |~|~ |~|y@aa| SES | | | | | | | | |SES=[[wp>Stephen Edward Smith]]\\ (1927-1990) | RSS | | MOS | | TPS | | MKS | | APS | |:| |F|~ |~|J | | | | | |! | | | | | | | | | | | |RSS=[[wp>Robert Sargent Shriver III]]\\ (b. 1954)|MOS=[[wp>Maria Shriver]]\\ (b. 1955)|TPS=[[wp>Timothy Perry Shriver]]\\ (b. 1959)|MKS=[[wp>Mark Kennedy Shriver]]\\ (b. 1964)|APS=[[wp>Anthony Paul Kennedy Shriver]]\\ (b. 1965) | | | | | | | | | | | | | | | | | | | | |:| |:| | |,@4|- |- |-|v@4|-|^@a |-|v@4|- |- |-|.@4| | | | | | | | | | | | | | | | PEL |y@aa|~ |~ |~|~ |~ |~ |~ |J| |:| | SEJ | | WKS | | AMS | | KMS | | | | |PEL=[[wp>Peter Lawford]]\\ (1923 - 1984)|SEJ=Stephen Edward Smith, Jr.\\ (b. 1957)|WKS=[[wp>William Kennedy Smith]]\\ (b. 1960)|AMS=Amanda Mary Smith\\ (b. 1967)|KMS=Kym Maria Smith\\ (b. 1972) | | | | | | |,@4|- |- |- |v@4 |- |^@a |- |v@4|-|- |- |.@4| | | |:| | | | | | | | | | | | | | | | | | | | | | | | | | | CKL | | SML | | VFL | | REL | | |L|y@aa| ETS | | | | | | | | | | | | | | | | |CKL=[[wp>Christopher Lawford]]\\ (b. 1955)|SML=Sydney Maleia Lawford\\ (b.1956)|VFL=Victoria Francis Lawford\\ (b. 1958)|REL=Robin Elizabeth Lawford\\ (b. 1961)|ETS=[[wp>Ethel Skakel Kennedy|Ethel Skakel]]\\ (b. 1928) | |,@4|-|-|- |v@4|- |- |- |v@4 |- |- |- |v@4|- |-|- |v@4|- |- |-|v@4 |-|^@a |-|v@4|- |- |-|v@4|-|- |-|v@4|- |- |-|v@4|-|-|-|.@4| | | KHK | | JPK | | RFK | | DAK | | MCK | | MLK | | MKK | | CGK | | MMK | | DHK | | REK |KHK=[[wp>Kathleen Kennedy Townsend]]\\ (b. 1951)|JPK=[[wp>Joseph Patrick Kennedy II]]\\ (b. 1952)|RFK=[[wp>Robert F. Kennedy, Jr.]]\\ (b. 1954)|DAK=[[wp>David Kennedy]]\\ (1955 - 1984)|MCK=[[wp>Courtney Kennedy Hill]]\\ (b. 1956)|MLK=[[wp>Michael LeMoyne Kennedy]]\\ (1958 - 1997)|MKK=[[wp>Kerry Kennedy]]\\ (b. 1959)|CGK=[[wp>Christopher George Kennedy]]\\ b. 1963)|MMK=[[wp>Matthew Maxwell Taylor Kennedy]]\\ (b. 1965)|DHK=[[wp>Douglas Harriman Kennedy]]\\ (b. 1967)|REK=[[wp>Rory Kennedy]]\\ (b. 1968) </diagram>
Additional tests
Using all connection types:
<diagram> | | |v| | | | |V| | | | |,|!|.| | |F|:|7| | | |y| | |p| | |)|-|+|-|(|D|~|%|~|C| |}| |{|]| |[| |*| |#| | |`|!|'| | |L|:|J| | | |h| | |b| | | | |^| | | | |A| | | </diagram>
Using all arrow types: on the separate page.
License
The GNU General Public License (GPL), Version 2.
Download and install
Stable version: Plugin Diagram 20210221, compatible with DokuWiki 2020-07-29 "Hogfather", 2018-04-22c "Greebo" and previous releases.
Previous version: Plugin Diagram 20180829, compatible with DokuWiki 2018-04-22c "Greebo" and previous releases.
Copy this link to plugin manager or download archive and unpack it into lib/plugins directory of your DokuWiki installation. Probably, you'll need to clear a browser cache or even a wiki cache to let diagrams render properly. To clear a wiki cache visit the following page: <wiki-path>/lib/exe/css.php?purge=true.
Discussion
You can ask questions and suggest ideas in the corresponding topic of the blog or by sending emails directly.
Change log
version 20210221
- fix: compatibility with DokuWiki-20200729
version 20180829
- fix: PHP-7 warnings
version 20130128
- fix: IE7+ support (thanks to Volker Leonhardt)
version 20121223
- fix: style issues regarding to a new default template of DokuWiki-20121013
version 20111114
- experimental branch is stabilized
- fix: printing issues
- new: support for digits and underscore in abbreviations
version 20100207e, experimental branch
- new: arrows support
- new: reworked processing engine and new layout for decreasing amount of XHTML code
version 20100205
- new: commands 'p' and 'b' for connection lines
version 20100111
- fix: PHP 5.3 and DokuWiki-20091225 compatibility
version 20091111
- fix: support for XHTML 1.0 Strict standard (thanks to Anika Henke)
version 20090811
- new: support for new style options for block (
text-align
,padding
properties)
version 20090724
- new: colored block support (
border-color
,background-color
properties)
version 20090407
initial public release