1. What can Dizni do for you
If you are an indexer, the program Dizni can do several things for you.
The most important things are:
- Check your input file(s)
- Generate internal (ISV) files
- Generate textual output files
In the following chapters, we'll explain in more detail what and how.
But first, a chapter about what we assume you already know, and a chapter about how to get the Dizni program.
2. What do you need to know before reading the rest
First of all, we assume you have read the previous "How to Index" pages on this website. So you know about "input", "internal", and "output" files.
Secondly, you need to know something about command lines, batch files, and directory structures.
For instance a DOS-box in MS-Windows.
In the rest we'll just assume you are an MS-Windows user.
Users of other operating systems (like Linux) are usually smart enough to read the text anyway. 8-)
It's very handy when you know how to use SVN, but you can also do lots of things without.
3. Getting Dizni itself
The file DIZNI.EXE is not directly available.
You can try to compile the C++ source code of Dizni. The source code is available through SVN.
The "make" instruction is very simple: compile *.cpp, and link all object files together.
(There is a gnu-Makefile available that does just that.)
There are also some example batch files (on SVN: inducks/programs/dizni/batchfiles/ ).
These mainly illustrate what we're writing here.
In the examples below, we're showing the contents of these batchfiles. The directories we use there are just an example.
4. Getting the input files
The input files are all available on SVN. You can put the locally, for instance on a directory called c:\fluks\inducks.
You need to create (mkdir) a directory like c:\fluks\i\data\ . Dizni will put its internal and output files, as well as some scratch files here.
You will need at least 350 megabytes of disc space for running Dizni the standard way (as described in the next chapter).
5. Generating the internal files
5.0. Running Dizni the standard way
If all input files are on their places, you can run:
dizni -xx -C c:\fluks\i\inducks\ -D c:\fluks\i\data\ -s
to generate the internal files in the directory c:\fluks\i\data\ (always end the directory name with a \).
This generation can take a long time (though on HF's machine it takes less than 2 minutes).
After the generation, you'll have a bunch of new files:
- *.log1, *.log2, *.log3, and *.log4 - these files are informational (they contain log messages). If the directory
c:\fluks\i\data\log\ exists, these files are written there.
- *.isv - If the directory
c:\fluks\i\data\isv\ exists, these files are written there.
- *.txt - If the directory
c:\fluks\i\data\issues\ exists, these files are written there.
To the command to run dizni -xx , you can add several options. The most interesting is -q , which tells Dizni to keep quiet (no messages on the screen).
If the option -s is not given, the textual output files (*.txt) are not written.
5.1. Running Dizni with fewer files
If you don't want to download all the input files, it's OK to leave most of them out.
You can run Dizni anyway, but the results will be less, of course.
There are only a few files that must exist when running Dizni.
These are the DBX files on the SVN directory auxil (like legendfiles.dbx, countries.dbx, languages.dbx, storyfiles.dbx ), except equivs.dbx and oldcodes.dbx .
Besides this, at least one DBI file and at least one DBS file must exist.
6. Dizni utilities
If you want to find out all options of Dizni, try DIZNI -? on a command line.
The output will give a list of main options.
For every main option (for instance "x"), you can try DIZNI -xx -? .
This will give you a list of all switches that you can use with that main option.
In the following paragraphs, we describe the most used utilities.
Other DIZNI options are mainly meant for HF only.
6.1 Checkequiv
The call is:
dizni -xuq -C c:\fluks\i\inducks\ -D c:\fluks\i\data\ -s -g
This option needs the DBX files, and all applicable DBI files. It writes a report to c:\fluks\i\data\equiv.log .
This report can be used to spot errors. For instance:
Reporting equivalents of:
#de1 = de/LTB 301
#nl2 = nl/PO3 88
Not listed in all 2 issues:
D 98172/49 is(+) or is not(-) in: #de1- #nl2+
D 98172/50 is(+) or is not(-) in: #de1+ #nl2-
In this example, apparently the "nl" entry has a wrong page count (unless the issues are not fully equivalent, of course).
6.2 Language file check
The call is:
dizni -xut -c nl -C c:\fluks\i\inducks\ -D c:\fluks\i\data\
This option reads the file heroes-nl.dbi and produces a file heroes-nl.cpy .
This cpy file contains a checked version of all characters. Missing characters are added (with empty translation), while wrong character names are noted.
6.3 Check (and copy) DBI file
The call is:
dizni -xuc -f nl.dbi -C c:\fluks\i\inducks\ -D c:\fluks\i\data\ -c -h
This option reads nl.dbi and makes an "improved" copy of it (c:\fluks\i\data\nl.cpy ).
In this CPY file, the most obvious errors are automatically corrected (if the -c option is given).
These corrections are also marked in the CPY file (if the -h option is given), for instance like this: [/`hero changed, was: D+M]
It uses the DBL input files from the SVN tree, as well as the usual DBX files and oldcodes.dbx .
The file nl.dbi should be on c:\fluks\i\data\ , Dizni does not look in the SVN tree for it (because it cannot guess in which subdir the file is).
Error messages are written to dizni.log .
|