NAME
msc - message sequence chart generator
SYNOPSIS
msc [options] [files...]
DESCRIPTION
msc generates message sequence charts for display is a text based
terminal.
In other words, it is a tool that can parse textual descriptions to
create diagrams. These diagrams are created as text, which can be
printed anywhere, and even piped through enscript to create some nice
PostScript output.
The description files are very simple, and you can create them using
your favorite text editor. The reason for using text as input for msc
and for diagram output is simple: you can use diff to track differences
between two designs, and even use patch to merge them (you know how
this is important if you have ever worked in a real-life project, with
code re-use).
OPTIONS
-c integer --commentwidth=integer
Sets the width of comment column in chart.
-h --help
Show summary of options.
-m integer --messagewidth=integer
Sets the width of message column in chart.
-p --pagebreak
Add a pagebreak after chart.
-s --swapstyles
Instead of using -s to draw messages and =s to draw function calls,
use -s for functions and = for messages.
-t integer --taskwidth=integer
Sets the width of task column in chart.
--version
Show version of program.
DESCRIPTION FILES
Description files contain the apropriate information needed to create a
message sequence chart. Lines starting with a # will be ignored and
will not be echoed to the terminal. The description file must contain
only one Title and only one Tasks keywords. Lines beginning with * will
be treated as comments in the diagram, and will be printed breaking the
vertical chart lines (see Example).
The general structure of a description file is:
Title:<put your title here>
Tasks:<comma separated list of tasks(no spaces!)>
<message_name>:<from task>:<to task>:<Comment>
.
.
.
EXAMPLE
Here is an example of a description file:
# This does not get printed
Title:MSC Example Diagram
Tasks:Home,Work,Play
Message1:Home:Play:This is a comment
Message2:Play:Play:Sent to itself
:::Only a comment
func():Play:Work:function call
*This can be used as a separator...
Message4:Work:Home:
And doing msc example.msc generates:
MSC Example Diagram - example.msc
Home Work Play
| | |
Message1 |-------+------>| This is a comment
Message2 | | |< Sent to itself
| | | Only a comment
func() | |<======| function call
This can be used as a separator...
Message4 |<------| |
| | |
SEE ALSO
patch(1), diff(1), enscript(1).
AUTHORS
Tarball, W. Martin Borgert.
COPYRIGHT
Copyright © 2001 Rubens Ramos Fernandes Junior
Copyright © 2005 W. Martin Borgert
2005-03-30