redet(1) regular expression development and execution tool


redet <options> [<input file>]


redet allows the user to construct regular expressions and test them against input data by executing any of a variety of search programs, editors, and programming languages that make use of regular expressions. When a suitable regular expression has been constructed it may be saved to a file.

Redet currently supports over fifty different programs and regular expression libraries. These include multiple versions of grep, several editors (Ed, Emacs, Sed, Vim), all the popular scripting languages (Awk, Perl, Python, Ruby, Tcl) and some less popular ones (Lua, Pike, Rebol), most shells (Bash, Ksh, Tcsh, Zsh) and various other languages, including Guile, Icon and Java.

For each program, a palette showing the available regular expression syntax is provided. Selections from the palette may be copied to the regular expression window with a mouse click. Users may add their own definitions to the palette via their initialization file. Redet also keeps a list of the regular expressions executed, from which entries may be copied back into the regular expression under construction. The history list is saved to a file and restored on startup, so it persists across sessions.

Redet provides both regular expression matching and substitution so long as the underlying program does.

Although Redet is primarily an interface for other programs, it adds some features of its own. It is possible to define named character classes within Redet , and to intersect them. This allows provides a means of searching on feature matrices.

So long as the underlying program supports Unicode, redet allows UTF-8 Unicode in both test data and regular expressions. Several tools provide additional support for Unicode use. These include popup lists of Unicode ranges and general character properties, a widget for entering characters by their numerical code, and widgets for entering International Phonetic Alphabet characters, widgets for entering letters with a variety of accents and other diacritics. Although internal operations are entirely in Unicode, test data, comparison data, and results may be read and written in any encoding supported by Tcl/Tk. Redet is fully internationalized. If a suitable message catalogue is provided, the interface may be made available in any language and writing system supported by Unicode for which the necessary fonts are available.

For usage information, execute redet with the command line flag -h.

Full information about redet is available from the reference manual, which consists of a set of web pages. The master copy is located at: The entry Illustrated Web Manual on the Help menu will take you to the master manual page. The manual pages are packaged with every copy of Redet.


-c <file name>
read character class definitions from the named file
set the debug flag. This causes additional information to be printed during program execution. It is mostly useful for developers.
-F <filename>
read a feature list from <filename>
act as a filter. This means that input is read from the standard input and output written to the standard output.
do not read the history file
print this help information
-I <file>
read <file> as the initialization file
do not read the initialization file
do not execute feature tests on startup
list the programs supported and indicate which are available
-p <program>
use the named program
start up in substitution mode
show the results of feature tests
print the program name and version, then exit


Bill Poser ([email protected])


GNU General Public License (, version 2.