<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to ISDM</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>Recent changes to ISDM</description><atom:link href="https://sourceforge.net/p/isdocman/wiki/ISDM/feed" rel="self"/><language>en</language><lastBuildDate>Thu, 17 Nov 2011 15:10:52 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/isdocman/wiki/ISDM/feed" rel="self" type="application/rss+xml"/><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>&lt;pre&gt;--- v5 
+++ v6 
@@ -91,6 +91,4 @@
 
 As you can see, the syntax is straightforward.
 
-
--------------------
-**This section will be updated as soon as possible**
+Please refer to the [Descriptors] page to find which descriptors are available.
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Thu, 17 Nov 2011 15:10:52 -0000</pubDate><guid>https://sourceforge.net258c8faa468fd361ed4ee463c6edd4bd2567092f</guid></item><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>&lt;pre&gt;--- v4 
+++ v5 
@@ -16,7 +16,7 @@
 
 ~~~~~
 [(spaces/tabs/newlines)]{COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} [ARGUMENTS]
-[(spaces/tabs/newlines)]{ISDM-PROPERTY-SPECIFIER}: [TYPE] [ATTRIBUTES/OPERATORS]
+[(spaces/tabs/newlines)]{ISDM-DESCRIPTOR}:
 [(spaces/tabs/newlines)]{PROPERTY-CONTENT}
 [...]
 [(spaces/tabs/newlines)]{COMMENT-END}
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Thu, 17 Nov 2011 15:05:48 -0000</pubDate><guid>https://sourceforge.nete33808db410962feb291f3855c5d3dfe6d3ed250</guid></item><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>&lt;pre&gt;--- v3 
+++ v4 
@@ -15,11 +15,11 @@
 The ISDM syntax is strict and must be used as follow:
 
 ~~~~~
-{COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} [ARGUMENTS]
-[(spaces/tabs/newlines)] {ISDM-PROPERTY-SPECIFIER}: [TYPE] [ATTRIBUTES/OPERATORS]
-[(spaces/tabs/newlines)] {PROPERTY-CONTENT}
+[(spaces/tabs/newlines)]{COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} [ARGUMENTS]
+[(spaces/tabs/newlines)]{ISDM-PROPERTY-SPECIFIER}: [TYPE] [ATTRIBUTES/OPERATORS]
+[(spaces/tabs/newlines)]{PROPERTY-CONTENT}
 [...]
-{COMMENT-END}
+[(spaces/tabs/newlines)]{COMMENT-END}
 ~~~~~
 *Block-form syntax*
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Thu, 17 Nov 2011 14:42:26 -0000</pubDate><guid>https://sourceforge.netfdba9e86ff9de850e4056ec65a5e56109ac2ec6f</guid></item><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>&lt;pre&gt;--- v2 
+++ v3 
@@ -21,60 +21,66 @@
 [...]
 {COMMENT-END}
 ~~~~~
-
+*Block-form syntax*
+
+
 Where {} means 'compulsory', and \[\] means 'optional'.
 
 ISDM syntax also allows a quicker form:
 
 ~~~~~
 {COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} {DESCRIPTION} {COMMENT-END}
 ~~~~~
+*Quick-form syntax*
 
 
 Here is a C++ example:
 
 ~~~~~
 /** 2
     iSDocMan: ice Source-code Documentation Manager
     Copyright (C) 2011 Alfredo 'IceCoder' Mungo
 
     This program is free software: you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation, either version 3 of the License, or
     (at your option) any later version.
 
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     GNU General Public License for more details.
 
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.
 */
 
 /*! Dummy function */
 void dummy();
 
 /*!
 	DESCRIPTION:
 		The Main function.
 	ARGUMENTS:
 		argc: integer
 			The number of command-line arguments.
 		argv: char**
 			The command-line arguments.
 	RETURNS: int
 		The value to be returned to the OS.
 	NOTES:
 		1) This function does absolutely nothing.
 		2) These are test notes.
 		3) Ok.
 */
 int main(int argc, char **argv)
 {
     return 0;
 }
 ~~~~~
+
+*Example code*
+
 
 In the following example, we mark the license (with an asterisk), and two functions (with an exclamation mark): dummy() and main().
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Tue, 15 Nov 2011 15:20:05 -0000</pubDate><guid>https://sourceforge.net91326a5eb9f6e4d5f79f5192638292ad3a5cefbb</guid></item><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>&lt;pre&gt;--- v1 
+++ v2 
@@ -22,7 +22,7 @@
 {COMMENT-END}
 ~~~~~
 
-Where {} means 'compulsory', and [] means 'optional'.
+Where {} means 'compulsory', and \[\] means 'optional'.
 
 ISDM syntax also allows a quicker form:
 
&lt;/pre&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Tue, 15 Nov 2011 15:17:12 -0000</pubDate><guid>https://sourceforge.netf9aa49770a25e7054e2e6510c2d5e64dfcdf2107</guid></item><item><title>WikiPage ISDM modified by IceCoder</title><link>https://sourceforge.net/p/isdocman/wiki/ISDM/</link><description>ISDM - The iSDocMarkup language
=============


## Introduction ##

The ISDM syntax has been designed to help ease programmers documenting their applications and is essentially a list of symbols whose elements must be inserted at the beginning of a comment to mark the comment as documentation-related and a list of rules which must be applied when writing in-source documentation.

The syntax itself is pretty easy to use and remember, as it relies on a small group of symbols used as markup tokens.

In addition to the syntax, the specification includes a set of attributes and operators (such as the 'default' operator) which can be included into the documentation to empathize some aspects of the code that is being documented.

## Syntax ##

The ISDM syntax is strict and must be used as follow:

~~~~~
{COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} [ARGUMENTS]
[(spaces/tabs/newlines)] {ISDM-PROPERTY-SPECIFIER}: [TYPE] [ATTRIBUTES/OPERATORS]
[(spaces/tabs/newlines)] {PROPERTY-CONTENT}
[...]
{COMMENT-END}
~~~~~

Where {} means 'compulsory', and [] means 'optional'.

ISDM syntax also allows a quicker form:

~~~~~
{COMMENT-BEGIN}{ISDM-TYPE-SPECIFIER} {DESCRIPTION} {COMMENT-END}
~~~~~


Here is a C++ example:

~~~~~
/** 2
    iSDocMan: ice Source-code Documentation Manager
    Copyright (C) 2011 Alfredo 'IceCoder' Mungo

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.
*/

/*! Dummy function */
void dummy();

/*!
	DESCRIPTION:
		The Main function.
	ARGUMENTS:
		argc: integer
			The number of command-line arguments.
		argv: char**
			The command-line arguments.
	RETURNS: int
		The value to be returned to the OS.
	NOTES:
		1) This function does absolutely nothing.
		2) These are test notes.
		3) Ok.
*/
int main(int argc, char **argv)
{
    return 0;
}
~~~~~

In the following example, we mark the license (with an asterisk), and two functions (with an exclamation mark): dummy() and main().

The dummy() function uses the quick form, while the main() function uses a block form.

Inside the main() documentation you can note the ARGUMENTS and RETURNS statements, which include a type definition.


As you can see, the syntax is straightforward.


-------------------
**This section will be updated as soon as possible**</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">IceCoder</dc:creator><pubDate>Tue, 15 Nov 2011 15:16:27 -0000</pubDate><guid>https://sourceforge.netc58f72eb6f0aac39b620820226c9706e925bbb64</guid></item></channel></rss>