mytool - manipulate map files for yudit, uniconv and uniprint
mytool [ -info ] [ -test ] [ -showkeys
] [ -decode ] [ -encode ] [ -strip ] [
-benchmark ] [ -name new-name ] [ -comment
new-comment ] [ -type new-type ] [ -write
output-file ] [ -my input-file ] [ -mys
input-file ] [ -rmys input-file ] [ -kmap
input-file ] [ -rkmap input-file ] [ -uni:l,u
input-file [ -8 ] [ -high ] [ -low ] [
-runi:l,u input-file [ -8 ] [ -high ] [
-low ] ] [ -convert out-file-format ]
mytool is a my map file manipulation program in the
yudit distribution. It can generates so-called binary nbit ( my ) map
file that can map any sequences of bytes into any sequences of bytes. These
sequences of bytes can be grouped into 1,2,4 and 8 bytes long words. The
input sequence length may be different from the matched sequence length. 'i
/ 'n -> 'b specifies that the word 'in' produces 'b' but only the 'i is
consumed from the input buffer.
It can also generate a so-called binary umap file, that
maps 8 or 16 bit single words into 16 bit single words and it contains the
reverse map too.
It can also disassemble the input map and produce a mys
source file.
The input can be a binary umap file, a my file, mys
file a uni and a kmap file for yudit. It is recommended that all kmap
files use the new mys format because it gives more freedom to define
the mapping.
The yudit distribution has a simple document
yudit/doc/my.doc on the binary map formats, and a source file example
file yudit/mytool/my/example.mys please refer to this for more
details.
- -info
- prints out a small information on the current map.
- -test
- lets you test the map interactively.
- -showkeys
- show all the keys in the map file.
- -encode
- builds a state machine in the encoding part of the map file. The resulting
map file can be written to disk with the -write option The
resulting my files can contain state machines to speed-up
conversion. A state machine based my file can manifest 10%-70%
performance improvement, so it may be desirable for encoding
fontmaps. For fontmaps the bumap format might be
better suited where only one character and not a sequence of characters
need to be mapped.
- -decode
- builds a state machine in the decoding part of the map file.
- -strip
- strips off the state machines from the map files. The -write option
can be used to save the new map file.
- -benchmark
- option performs a simple benchmark test on the map file, to compare speed
of simple, state machine based and binary map based map files.
- option strips all comments from an input source file of format mys kmap
uni. It does not strip comments from a binary file.
- -name
new-name
- assigns a name to the map file.
- assigns a comment to the map file.
- -type
new-type
- assigns a map file a distinctive type, that can be kmap or
fontmap but it is only informative. Keymaps can be used as fontmaps
and vice versa.
- -write
output-file
- writes the data into an output file. mytool never modifies the
original file. All modifications should be explicitly saved with the this
option. Never specify the same file for input and output.
- -my
input-file
- load a binary map file. Only one of this option can be specified.
- -mys
input-source-file
- load a source file.
- -rmys
input-source-file
- load a source file and reverse it - make encoding from decoding and vice
versa.
- -kmap
input-source-file
- load a source file in kmap format.
- -rkmap
input-source-file
- load a source file and reverse it - make encoding from decoding and vice
versa.
- -uni:l,u
input-source-file
- load a source file in Unicode Consortium format. This format has the local
code in column l, and unicode in column u. The numbering of columns start
from 0.
- -runi:l,u
input-source-file
- load a source file in Unicode Consortium format and reverses it. Make
encoding from decoding and vice versa.
- -8
- option can be used with the -uni or -runi options. It
specifies that the input is 8 bit and not 16 bit.
- -high
- option can be used with the -uni or -runi options. It
specifies that the key should be or'ed with 0x8080.
- -low
- option can be used with the -uni or -runi options. It
specifies that the key should be and'ed with 0x7f7f.
- -convert
output-file-format
- converts the map file to a format. It is useful only when combined with
-write option. The possible formats are my -binary,
mys -source, myc -my-c-source, umap
-umap-c-source, bumap -binary-umap formats. For maps
where only a single 8 or 16 bit local code should be converted into 16 bit
unicode and vice versa, the umap file formats are recommended. The
c-source files are provided so that you can inlucde a full map into the c
program.
mytool prints out an error message and exits with a
non-zero status on error. If there is no error the exit status is zero.
This program was written by gsinai@iname.com (Gaspar Sinai).
Tokyo, 03 January, 2000.