Software
All programs listed here are released under the GPL (if not noted otherwise). Improvements and bug reports are welcome, send them to .
Some of the software I've written is useful only for Haskell programmers. You can find this software on a separate page.
The simple address book (short: sab) is a text-based
addressbook. It offers a lightweight way of storing, manipulating, and
querying addresses of all kinds. The addresses are stored in a plain
text file, using a human-readable format, and manipulated with an
ordinary text editor. The simple address book can be used as a query
command for the mutt
email client. Moreover, it exports birthday dates as commands for the
remind program
and in .ical format.
Available via darcs:
darcs get --set-scripts-executable http://www.informatik.uni-freiburg.de/~wehr/darcs/sab/
Send patches using darcs send to
The tool adjust adjusts source locations in error messages. It is common practice to preprocess input files before sending them to the program that does the real job. As a result of this practice, error messages are often expressed in terms of the file generated by the preprocessor. However, it is desirable that error messages point to the original source file.
The adjust tool solves this problem by rewriting source locations in error messages, provided the files generated by the preprocessor contain file directives. Such file directives specify where lines in the preprocessor output come from originally. Many preprocessors (e.g. cpp) generate file directives.
The format of line directives and error messages is customizable, so
that adjust works with many preprocessors and for error
messages
produced by many programs. Special support is available for lhs2TeX
(http://www.cs.uu.nl/~andres/lhs2tex/):
adjust recognizes code
sections and handles them properly. You need to invoke lhs2TeX with
the option --file-directives to enable file directives
in lhs2TeX's output.
To use adjust you need to pipe the error messages generated by some program through adjust. For example, here is how you would use adjust in combination with lhs2TeX:
# preprocess the .lhs file
lhs2TeX foo.lhs > foo.tex
# invoke LaTeX on the generated .tex file
latex -file-line-error-style foo.tex | adjust
Available via darcs:
darcs get --set-scripts-executable http://www.informatik.uni-freiburg.de/~wehr/darcs/adjust/
Send patches using darcs send to
sref is a tool for including source code from external files into a
LaTeX document. The files containing the source code are scanned, and
specially marked regions are extracted and written to separate
files. You can then use LaTeX's \input or
\VerbatimInput command to
include these files into your document. It is possible to postprocess
the extracted source code. Furthermore, sref can emit dependency
information suitable for the make tool.
sref is a good choice when literate programming is not suitable, but you still want to be able to run the code in your paper.
Available via darcs:
darcs get --set-scripts-executable http://www.informatik.uni-freiburg.de/~wehr/darcs/sref/
Send patches using darcs send to
voc is a commandline-based vocable trainer written in OCaml.
Requirements: OCaml 3.07 or above
Download
CvsShell is a console-based cvs-client written in python.
Some (hopefully) useful plugins for eclipse. I am one of the authors of the editor enhancements plugin. This plugin adds some enhancements to the builtin editor. Its features are influenced by Emacs.
table is a python module for constructing tables and exporting them into LaTeX, HTML or CSV format.
Requirements: Python 2.2 or above
Documentation,
Download
HtmlImage is a jEdit plugin. It creates for a given image HTML the <img/> tag with the correct width and height attributes.
Requirements: jEdit 4.1 or
above
Download Jar-File,
Download Source