This is a tool that generates documentation based on comments on an mSL file.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Kedyn Macedonio 449e02ea64 to a mpm package 2 weeks ago
dist to a mpm package 2 weeks ago
src to a mpm package 2 weeks ago
test fixed multiple topics with the same name 1 month ago
LICENSE Update license and readme 4 months ago
README.md to a mpm package 2 weeks ago
package.mpm to a mpm package 2 weeks ago

README.md

SimpleDocumentation

This is a tool that generates documentation based on comments on an mSL file.

Dependencies

mIRC v7.52+

Installation

The main file is called SimpleDocumentation.mRC and it is located in the dist folder. All you must do is load it to mIRC.

How to use it

The main command is document <file> <destination>, where <file> is the msl file and <destination> the destination path for the file of the documentation (README.html).

All of your documentation comments must start with /**. And the documentation must start with an asterics and a space. The documentation must follow the following paterns:

For General Information

/**
* @title Documentation title
* @header Main Header
* @subheader Sub Header
* @footer Some footer
*/

example:

/**
* @title My Project's Documentation
* @header My Project
* @subheader The best project
* @footer My project created by some team under the MIT license.
*/

For events:

/**
* Description...
*
* @event someEvent
*/

example:

/**
*
* Loads everything needed for this project when mIRC starts.
*
* @event start
*
*/
on *:start: echo -s nothing is needed ;)

For Commands

/**
* Description...
*
* @command /myCommand
*
* @switch a some description...
* 
* @param <someParam> someParam description...
*
* @global
*/

example:

/**
*
* Changes my nick to something random
*
* @command /fun
*
* @param <N> the number of characters
*
*/
alias -l fun {
  var %nick = $char($rand(65,90)),%i = 1
  whie (%i < $1) {
    %nick = $+(%nick,$char($rand(65,90)))
    inc %i
  }
  nick %nick
}

For Identifiers

/**
* Description...
*
* @identifier $myIdentifier
* 
* @param <someParam> someParam description...
*
* @prop someProp someProp description...
*
* @global
*/

example:

/**
*
* Returns my projects current version.
*
* @identifier $SIMPLE_VERSION
*
* @global
*
*/
alias SIMPLE_VERSION return 0.0.1

Note:

Contributing & Development Process

If you would like to contribute to the project I ask that you use variable_names with all lower case and all aliases with camelCase. All new aliases and/or modifications must be documented.

Limitations

You must follow the specified pattern for commands and identifiers. That means that you cannot put the @param(s) before @switch(es) in the command or @prop(s) before @param(s) in the identifier.

License

This project is made available under the MIT License.