With this commit I should be able to return to the other entries though as Landon pointed out I might never finish this and this is a reason it might not have been as thorough as I could have been (another part is it's long). Nevertheless the formatting should now be okay along the lines of what was requested for all the winning entry markdown files.
111 lines
4.3 KiB
Groff
111 lines
4.3 KiB
Groff
.TH recode 1 "16 April 2023" "recode" "IOCCC 2020"
|
|
.SH NAME
|
|
recode \- A configuration tool for the IOCCC 2020 Enigma simulator w/various additional features for enhanced usage
|
|
.SH SYNOPSIS
|
|
\fBrecode\fP [\fB\-v\fP] [\fB\-r\fP] [\fB\-f\fI<input_file>\fP\fP] [\fB\-R\fI<string|file>\fP\fP] [\fB\-l\fI<output_file>\fP\fP]
|
|
.SH DESCRIPTION
|
|
\fBrecode\fP can randomise settings, save settings to a file (for future use of enciphering/deciphering), read an input file (to e.g. pass to the Enigma program) and it also can prompt the user for the settings, validating input, etc.
|
|
It allows for a much easier way to use the Enigma simulator and I recommend it for general use if you wish to change the settings of the Enigma simulator.
|
|
.SH OPTIONS
|
|
.TP
|
|
\fB\-h\fP
|
|
Show the options and exit.
|
|
.TQ
|
|
\fB\-v\fP
|
|
Display the selected settings in detail.
|
|
.TQ
|
|
\fB\-r\fP
|
|
Pseudo-randomly select the settings.
|
|
.TQ
|
|
\fB\-f\<input file\>\fP
|
|
Read input file as data file (e.g. to pipe to Enigma program).
|
|
Notice that there is no space between the \fB\-f\fP and file name.
|
|
.TQ
|
|
\fB\-i\<input file\>\fP
|
|
Alias for \fI\-f\fP option.
|
|
.TQ
|
|
\fB\-R\<string|file\>\fP
|
|
Parse settings string (or file with the same format). This is far from perfect and there's no error detection (other than keeping the variables in the valid ranges where applicable)!
|
|
Notice that there is no space after the \fB\-R\fP.
|
|
.TQ
|
|
\fB\-o\<output file\>\fP
|
|
Save the settings (not the data read in) to the output file for reuse.
|
|
Notice that there is no space between the \fB\-o\fP and file name.
|
|
.PP
|
|
.SH FILES
|
|
\fIrecode.c\fP
|
|
.RS
|
|
Source file to the recode program.
|
|
.RE
|
|
\fIrecode.md\fP
|
|
.RS
|
|
Markdown file with examples on how to use the recode program (along with the Enigma program).
|
|
.RE
|
|
\fIREADME.md\fP
|
|
.RS
|
|
More information on the Enigma simulator IOCCC entry.
|
|
.RE
|
|
\fIchocolate\-cake.md\fP
|
|
.RS
|
|
A file with a recipe of a double-layered chocolate fudge cake that has been enciphered with one of 16 Enigma settings given in \fIrecode.md\fP which should give enough information on how to make use of the two programs in order to unlock this recipe (well worth it!).
|
|
.RE
|
|
\fIrecode.1\fP
|
|
.RS
|
|
I don't think you need help here! :)
|
|
.RE
|
|
.SH BUGS
|
|
.PP
|
|
The \fB\-R\fP option doesn't detect errors.
|
|
.PP
|
|
Doesn't handle input from other programs very well (e.g. \fBecho ...|./recode\fP).
|
|
Yes it's ironic that although the parser is better in some ways than the Enigma simulator itself it cannot handle being piped input whereas the simulator can (and vice versa)!
|
|
.PP
|
|
It was written by a human being.
|
|
.PP
|
|
The source code is ugly. This is only clearly intentional.
|
|
.PP
|
|
A feature that some would like to call a bug, maybe: deciphering how this program works won't help you figure out how the Enigma program works.
|
|
.PP
|
|
Options don't allow a space between the option char and the argument.
|
|
This in turn means that for options expecting a file name shell expansion won't occur which means using e.g. ~ will not correctly translate in the file name.
|
|
.RE
|
|
.SH EXAMPLES
|
|
.PP
|
|
Print out the actual Enigma settings of the config file in a human form:
|
|
.nf
|
|
.RS
|
|
\fB
|
|
echo | ./recode -Rconfig -v\fP
|
|
.fi
|
|
.RE
|
|
.PP
|
|
Does something special (what?):
|
|
.nf
|
|
.RS
|
|
\fB
|
|
echo | ./recode
|
|
echo | ./recode -v\fP
|
|
.fi
|
|
.RE
|
|
.PP
|
|
Please see the \fIrecode.md\fP and \fIREADME.md\fP files for more examples and other information.
|
|
.SH AUTHOR
|
|
Written by Cody Boone Ferguson for IOCCC 2020 (the 27th IOCCC).
|
|
.SH SEE ALSO
|
|
.PP
|
|
\fBenigma(1)\fP
|
|
.PP
|
|
\fB\<https://ioccc.xexyl.net/2020/enigma\>\fP The 27th IOCCC 'Most enigmatic'.
|
|
.PP
|
|
\fB\<https://web.archive.org/web/20200710094321/http://users.telenet.be/d.rijmenants/en/enigmaproc.htm\>\fP Enigma Message Procedures for the Heer (Army), Luftwaffe (Air Force) and Kriegsmarine (Navy).
|
|
.PP
|
|
\fB\<http://enigmaco.de/enigma/enigma.html\>\fP Online interactive Enigma simulator.
|
|
.PP
|
|
\fB\<https://web.archive.org/web/20200621180323/http://www.codesandciphers.co.uk/enigma/index.htm\>\fP Tony Sale's (original curator of the Bletchley Park Museum) pages on The Enigma cipher machine.
|
|
.PP
|
|
\fB\<https://web.archive.org/web/20200710094303/http://users.telenet.be/d.rijmenants/en/enigmatech.htm\>\fP Technical Details of the Enigma Machine.
|
|
.PP
|
|
\fB\<https://web.archive.org/web/20200710094243/http://users.telenet.be/d.rijmenants/en/enigma.htm\>\fP The German Enigma Cipher Machine.
|
|
.PP
|
|
\fB\<http://www.ellsbury.com/enigma3.htm\>\fP How the Enigma was Set Up and Operated.
|