Software presented here
inheritanCe is a tool for browsing the class inheritance tree in OO programming languages
comfigure, a comfortable wrapper for running configure scripts
MaDiCal the Map Distance Calculator
cfbot, a bot for the multi-user online game crossfire
gtut, a GNOME application for managing student's exercises scores
comfigure, a comfortable wrapper for running configure scripts
MaDiCal the Map Distance Calculator
cfbot, a bot for the multi-user online game crossfire
gtut, a GNOME application for managing student's exercises scores
All software offered on this page is distributed under the GNU General Public License.
inheritanCe
Description
inheritanCe uses the tags file written by exuberant ctags to build an inheritance tree for a project's classes. Since all source code parsing is done by ctags, the same languages are supported. inheritanCe is written in Perl.
Operation
inheritanCe is interactive, providing a simple shell interface. Thus it's sufficient to read the (possibly large) tags file only once at startup. Original help output:
inheritanCe saved me plenty of time finding my way through hundreds of mozilla's classes. Sample output:
Command line options:
-h show this help
-v show version
-f override default tags file name
-V parameter for the 'goto' editor call, substituted for <vimserver>
Available commands are:
parents [<levels>=1] <class name>+
children [<levels>=1] <class name>+
In the output, a '=' in the tree means the relation is one-to-one.
A '?' means that no tag entry could be found for this class.
find <class> children [<child class pattern>=.]
find <class> parents [<parent class pattern>=.]
grep <class pattern>
show all classes matching /pattern/
suppress <class name>+
Suppressed classes will not be shown in the trees produced by
'parents' and 'children' commands
unsuppress <class pattern>+
all suppressed classes matching this pattern will not be suppressed
any more. The pattern '.' matches everything.
suppress
without a parameter, this will show the classes currently suppressed
goto <class name>
sends your editor to the class tag
help
version
quit
Note: For the class inheritance information to be stored in the tags file, ctags must be started with the '--fields=+i' option.inheritanCe saved me plenty of time finding my way through hundreds of mozilla's classes. Sample output:
> children 9 nsIDOMDocument
+=>+ nsIDOMDocument
| +=>+ nsIDOMXMLDocument
| | +->+ nsDocument
| | | +=>- MyDocument
| | | +=>+ nsMarkupDocument
| | | | +->+ nsHTMLDocument
| | | | | +=>- nsImageDocument
| | | | +->+ nsXMLDocument
| | | | | +->- nsSVGDocument
| | | +=>- BasicTest
| +=>+ nsIDOMXULDocument
| | +->- nsXULDocument
| +=>+ nsIDOMHTMLDocument
| | +->+ nsHTMLDocument
| | | +=>- nsImageDocument
> find nsIDocument children XMLDoc
-> nsDocument -> nsMarkupDocument -> nsXMLDocument
>
Installation
Since inheritanCe is a small Perl script, there is no installation necessary if Perl is present. It's recommended to install the Term::ReadLine::Gnu module which provides a command history and nice command line editing features. inheritance works fine without it though. No changes to inheritanCe are necessary one way or the other.
If the perl binary is not located in '/usr/bin/' you have to adjust its path in the first line of inheritanCe.
If the perl binary is not located in '/usr/bin/' you have to adjust its path in the first line of inheritanCe.
Download
- 2002-04-27, Release 1.2: inheritanCe (7 kB)
- Changelog
comfigure
Description
comfigure makes the task of configuring many packages comfortable. It remembers the 'configure' options for each package and uses them automatically if called without options.
comfigure recognizes the package name and version automatically from the directory from which it was called. If the stored version is not equal to the current one, an MD5 digest sum is calculated over the output of './configure --help' to determine if the available options have changed. Eventually the user will be asked what shall be done.
Operation
'comfigure help' shows the available commands:
- new
- force new entry, even if no options are given
- interactive
- ask each time before using stored options (this is the default if the version has changed)
- add
- add more options to the stored options
- use_old
- use old options without asking even if the stored version is older and there are new configure options (only applies if no configure options are given)
- show
- show configuration for the current directory or for all named programs and exit
- showall
- show all known programs with version and date of configuration and exit
- forget
- forget configuration for the current directory or for all named programs and exit
- exec
- take the following argument as executable instead of './configure'
- help
- display this help and exit
- --help
- invokes './configure --help' and exits
Installation
comfigure is a Perl script. For using it you need:
Happy comfiguring!
- a running Perl installation
- the Digest::MD5 Perl module installed
Happy comfiguring!
Download
MaDiCal
Description
I wrote MaDiCal because I couldn't find a free tool to measure the tracks I'm running or cycling.
This Map Distance Calculator is a Perl/Tk script that reads a map as a GIF image and calculates the distance of the tracks you draw on it. MaDiCal can save and load tracks and shows a menu of all tracks defined on a map together with their length.
You get maps from several online sources, or scan paper maps and save the image as GIF.
This Map Distance Calculator is a Perl/Tk script that reads a map as a GIF image and calculates the distance of the tracks you draw on it. MaDiCal can save and load tracks and shows a menu of all tracks defined on a map together with their length.
You get maps from several online sources, or scan paper maps and save the image as GIF.
Requirements
MaDiCal runs on any operating system with
- a running Perl installation,
- the Tk perl module.
Installation
This is not an issue. Simply unpack the archive, change into the new
madical directory, then type "make" and "make install" and be happy.
The user guide is included in the distribution.
The user guide is included in the distribution.
Screenshots
Download
- madical-1.2.tar.gz (15 kB)
- Changelog
cfbot
Description
cfbot is a perl script that logs into a crossfire
game server and logs kills and other statistical information that the other
players can query.
The cfbot understands a simple scripting language (described here) for walking around, talking, picking up and dropping items.
The cfbot understands a simple scripting language (described here) for walking around, talking, picking up and dropping items.
Download
2004-03-11, Release 0.9.8: cfbot
(See the changelog at the top of the script.)
The cfbot scripting language.
(See the changelog at the top of the script.)
The cfbot scripting language.
gtut
Description
When I worked as a tutor at university, I wrote gtut to keep
track of the students' scores in the exercises. gtut is written in C++ and
uses GNOME libraries, but can be run from any desktop. The data can be
exported to PostScript (using LaTeX) for printing.
The program is in German only, though a translation to English should not be difficult, and there are not that many relevant strings.
gtut is finished and working.
The program is in German only, though a translation to English should not be difficult, and there are not that many relevant strings.
gtut is finished and working.
Screenshot
Download
- Source (C++): gtut-1.2.tar.gz (92kB)
- Changelog
(That binary package contains just one file; no need to build an RPM for that.)

