From RPTools Wiki
Revision as of 05:48, 23 November 2023 by Azhrei (talk | contribs) (Fix reference to MediaWiki page for editing help)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This article contains documentation on specific features of our wiki, see MediaWiki's help on editing article for details of basic formatting and markup.

Miscellaneous Formatting

Macro Code Highlighting

To perform syntax highlighting on your macro code enclose it in the following tags:


  <syntaxhighlight lang="mtmacro" line>


  <syntaxhighlight lang="mtmacro" line>
    [h: name = getName()]
    [r: name]


[h: name = getName()]
[r: name]

You can also change the number that the line number starts at:


  <syntaxhighlight lang="mtmacro" line start=10>
    [h: name = getName()]
    [r: name]


[h: name = getName()]
[r: name]

This is useful for breaking up long chunks of example code, yet still maintaining proper line numbering.

Inline Code

There are a number of ways to include inline code, but we've created a small template that makes it easier than ever. The syntax below produces: example


You can replace example with anything you want to be shown as inline code. This is useful if you're referencing a variable, function, or anything else that would be more appropriate in a monospaced typeface. This template works inside wiki-links as well, the following syntax produces: abort()


Marking Articles


If you come across an article that looks like little more than a placeholder, please mark it as a stub so that we can easily find it in the future and expand it.

To mark an article as a stub, edit it and add the following tag to the top of the article:


Optionally, you may add a note about why the article is considered a stub.

{{stub|What this article needs so that it wouldn't be a stub.}}


If you come across an article that doesn't seem clear enough on a particular point, you can mark it for clarification which allows a knowledgeable editor to find it easier in the future.

To mark an article for clarification, edit the article and add a note near the section that needs clarification. Use {{Clarify| followed by a short note about what needs to be clarified, then end your note with }}.


{{Clarify|How is this function supposed to be used in the event that such and such occurs?}}

Function Linking

We often find ourselves linking to functions, and function links look better with parenthesis after the function name, but the function articles themselves do not contain the parenthesis. This prevents us from simply creating a [[functionName]] wikilink, and instead forces us to type the function name twice: [[functionName|functionName()]]. To make it easier to link to functions, while still having the parenthesis attached, we've created the {{func| template.



Will result in the link to the function having the necessary parenthesis added automatically.

Roll Option Linking

Formats the roll option link as [rolloption:] or [rolloption():] depending on the type. The type is determined by a list inside the roll template, so be sure to add new roll options there. To use, {{roll| followed by the roll option's article name not including the _(roll_option) that you would normally have to include, then closed with }} template.



Results in a link as if you had entered [[expanded (roll option)|[expanded:] ]]


Results in a link as if you had entered [[foreach (roll option)|[foreach():] ]]

Function Formatting

A template has been created to assist with writing articles for macro functions. To use the template, begin with {{MacroFunction, followed by any parameters you might use, and then end with }}. See Mediawiki's template help for more documentation on using templates.


  • This template only adds the function to the Macro Function category, you should manually add any other categories it belongs in. Categories can be added by including [[Category:Example]], where Example is the name of the category you with to add. You can include this code anywhere within the article, but preferably at the end to make it easier for other editors to find.
  • The broken bar | is a special character inside templates; this presents problems when trying to build wiki tables inside a template. There is a special template that allows you to work around this problem: using {{!}} in place of all broken bars will allow your table to work properly inside a template.


All parameters are optional, except |name= and |usage=. Although the parameters can be used in any order, using them in the order presented will make it easier for other editors that might work on the function article.

  • |name= • Case-sensitive name of the function.
  • |proposed=true • Adds a note that the article refers to a proposed change that has not yet been implemented in the main code base. If this parameter is missing, or contains a value that is not true, it will be treated as false and not displayed.
  • |deprecated= • Adds a note that the function has been deprecated and a link to the function that should be used instead.
  • |trusted=true • Adds a note that the function can only be used in a trusted macro. If this parameter is missing, or contains a value that is not true, it will be treated as false and not displayed.
  • |version= • Adds a note for which version of MapTool included the addition of this function. The value should be the exact version number, e.g. 1.3b50
  • |compatibility= • Adds a note stating the version of MapTool that this function's article is about. This is primarily used if a function has received changes since its first inclusion that could cause the usage and/or examples to not work with the version in which it was first introduced. The value should be the exact version number, e.g. 1.3b50
  • |description= • This should contain a brief description on the purpose of the function.
  • |usage= • The usage block should contain the various syntax that the function accepts.
  • |examples= • Examples should be the majority of a function's page content. The more examples there are, the more of a complete understanding the reader will have.
  • |also= • If you use other functions in any examples, or if there are other articles that are related to this one, you should include links to them in this block.
  • |changes= • A place to record changes that function has received in various versions of MapTool.


This is an example function.  It doesn't actually exist as a function in MapTool.

<syntaxhighlight lang="mtmacro" line>
exampleFunction(param1, param2)
{{param|param1|Describe parameter}}
{{param|param2|Describe parameter}}

This example doesn't really do anything.
<syntaxhighlight lang="mtmacro" line>
[h: exampleVariable = "a,b,c"]
[r: exampleFunction(exampleVariable, reverse)]
<syntaxhighlight lang="mtmacro" line>

[[linkToRelatedArticle|Display Name of Related Article]]

* '''1.3b52''' - Added reverse parameter.