Extension:MikUML

From MediaWiki.org
Jump to navigation Jump to search
MediaWiki extensions manual
OOjs UI icon advanced.svg
MikUML
Release status: experimental
Implementation Parser function
Description Process and returns the plant uml object AFTER processiong the raw wikitext.
Author(s) Michele Fella <michele.fella@gmail.com> (Michele.Fellatalk)
Latest version 0.1 (2016-05-10)
MediaWiki 1.26+
Database changes No
License Apache License
Download
<MikUML>
Translate the MikUML extension if it is available at translatewiki.net
Check usage and version matrix.

The MikUML depends on PlantUML extension and was previously available with MikFunctions.

If you are not familiar with UML and wiki extension you might want to check plantuml and PlantUML pages.

The purpose of the function was to override the PlantUML extension tag <uml>, and process the raw wikitext before submitting it to PlantUML for processing.

Note Note: This extension currently works only on *NIX servers

Install[edit]

  • Download and place the file(s) in a directory called MikUML in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php:
    require_once "$IP/extensions/MikUML/MikUML.php";
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Usage[edit]

#uml:[edit]

With Plant UML you write:

<uml>plantumlcode</uml>

Example

<uml>actor Mik #99FF99</uml> will return the uml object after being processed by the PlantUML extension.

But this wont work if you use the uml tag in a template and you want to build your uml code with triple braces vaiables, insthead, in your template you can use the <mikuml>actor Mik #99FF99<mikuml> to obtain the same result.

Note: some parser function such as #replace seems not properly being parsed, a workaround so far is to store your uml code into variable and include those variable into the mikuml tag.

Example

{{#vardefine:participant|actor Mik #99FF99}}

<mikuml>{{#var:participant|}}<mikuml>


Note Note: PlantUML links examples:

 actor Bob [[http://plantuml.com/sequence]] should be added within <mikuml> tag as actor Bob http://plantuml.com/sequence
 actor "This is [[http://plantuml.com/sequence Alice<nowiki>]]" should be added within <mikuml> tag as actor "This is [http://plantuml.com/sequence Alice]"
 Alice -> Bob : hello with [[http://plantuml.com/start{Tooltip for message} some link]] should be added within <mikuml> tag as Alice -> Bob : hello with [http://plantuml.com/start{Tooltip for message} some link]

See also[edit]