textfiles/programming/AMIGA/adocengl.txt

576 lines
25 KiB
Plaintext
Raw Normal View History

2021-04-15 11:31:59 -07:00
ADoc - User's Manual
AboutThisDoc
This manual describes release 4.00 of the utility ADoc. This program
is (c)1990-1994 by Denis GOUNELLE, any commercial usage or selling without
author's written authorization is strictly forbidden. You can copy and
spread this program under the following conditions:
- all the files are provided
- the files are not modified in any way
- you don't charge more than $6 for copy fee
In spite of several tests, no warranty is made that there are no
errors in ADoc. YOU USE THIS PROGRAM AT YOUR OWN RISK. In no event will I be
liable for any damage, direct or indirect, resulting of the use of ADoc.
AREXX is (c)1987 by William Hawes.
PowerPacker 2.3b is (c)1989 by PowerPeak and Nico FRANCOIS
PowerPacker Pro 3.0b is (c)1990 by PowerPeak and UGA Software
The "powerpacker.library" library is (c)1990 by Nico FRANCOIS
The "reqtools.library" library is (c)1990 by Nico FRANCOIS
>>> CLOSE THIS WINDOW TO CONTINUE <<<
Foreword
ADoc2 is a new release of ADoc, fully rewritten in order to remove
some limitations and add several improvements. Note some incompatibilities
arose particularly at argument level. This program works equally under 1.3
and 2.0 system releases.
ADoc is an utility that allows you to manage all kinds of
documentations on any subject. It is able to automatically start searching
for a word selected by a mouse click, and to work on several documentation
files at the same time. ADoc can also use straight the AutoDocs and
AmigaGuide files, as well as "PowerPacker" compressed files.
Criticisms and suggestions will always be welcomed. Write to:
M. GOUNELLE Denis
27, rue Jules GUESDE
45400 FLEURY-LES-AUBRAIS
FRANCE
You can also send a message to the following Internet address :
"gounelle@alphanet.ch". Note that this mailbox is not mine, so please send
only short messages. As I don't have direct access to the messages, don't
expect an answer before a dozen of days.
Thanks to Jean-Yves PROUX and Helmut J. ESENWEIN for their numerous
suggestions, to Reza ELGHAZI for his help concerning AmigaGuide files, and
to Simon HEWINSON who translated in English the "amiga.doc" file. Special
thanks to Jean-Philippe RAPP for his ideas and his help concerning AutoDocs
files.
Installation
ADoc needs "reqtools.library" (version 2.0c or higher) to run. You
must copy this file in your "LIBS:" directory, if not yet done.
ADoc is now localized, so it can adapt itself to your favorite
language. All you have to do is to copy the good catalog file into the
directory corresponding to your language. For exemple, if your default
language is french, copy the "fran<61>ais.catalog" into the
"SYS:Locale/Catalogs/Fran<61>ais" directory, under the name "ADoc.catalog."
The german catalog was translated by Stefan SALEWSKI.
HowDoesItWork
ADoc works on documentation files, combined with a keyword (this one
is named "term" in this doc). Every doc file has an index file that allows
to access the wanted terms nearly immediately. (Note : as a result, each
time you change a doc file, you'll have to rebuild its index file.) When
ADoc is running, only is loaded in memory the index file. The name of this
index file will be the doc file name plus an ".index" suffix.
You can create your doc files with your favourite text editor; these
files consist of a series of definitions and each definition has a syntax as
follows :
term
text line 1
text line 2
etc...
text line n
At first, consider that the first two lines of a doc file have to be
empty (or in extreme circumstancies begin with a space or a tab character).
The first character of each term must be at column 1 and the text lines must
begin with a space or a tab character. Empty lines are allowed.
One term can't be more than 32 character long and can't contain any
blanks or tabs : valid characters are upper or lower letters, digits,
underline, and accented letters (ASCII codes between 217 and 246). However,
if needed, you can extend this character set (see below AdvancedConcepts).
The term amount for each file as well as the text line amount for
each term are unlimited (or rather, this limit is so large that you'll be
short in memory long before).
A text line can't be more than 256 characters. In order to bring out
some parts of your text, you can use the following ANSI sequences :
ESC[1m boldface on
ESC[3m italics on
ESC[4m underline on
ESC[22m boldface off
ESC[23m italics off
ESC[24m underline off
ESC[0m normal character set
RunningADocfromCLI
ADoc can be run from Workbench or from the CLI. By default, the doc file is
"Amiga.doc", but, of course, in both cases, you can specify another
filename. From the CLI, you can specify the following arguments :
WBENCH
Asks ADoc to use the Workbench screen. When this argument is missed out,
ADoc will open its own screen sized as the Workbench screen. On error,
when opening screen, ADoc will go automatically to the Workbench screen.
LACE
Asks ADoc to use an interlaced screen. If you asked to use the Workbench
screen, and this one is not in interlaced mode, this argument will be
ignored.
DEPTH n
Asks ADoc to use a n-planes screen (allowing 2^n colors). If you asked
to use the Workbench screen, this argument will be ignored.
FONT name
Asks ADoc to use a given font rather than the default one. Name must
take the form <FontName><SizeY>, for ex. "topaz8". ADoc is able to use
any non proportional font so long as its size is 8 at least.
If ADoc can't open the requested font, it will attempt to use the
default one. If this font doesn't suit or ADoc can't open it, it will
try to access the topaz8 font. If it fails, ADoc will end immediately.
MAKEIDX
Tells ADoc the only operation to do is to create the index files.
QUICK
Asks ADoc not to display a text combined to the "AboutThisDoc" term,
when starting. Usually, each time ADoc opens a file, it looks for the
"AboutThisDoc" term in this file, and then, if this one exists, displays
the corresponding text and waits for user to close the window before
continuing.
AREXX
Asks ADoc to go in AREXX mode. More information on how to use ADoc with
AREXX in TheAREXXMode section below.
ONEWINDOW
Asks ADoc to open only one window at a time.
NOCASE
Asks ADoc not to differentiate lower and upper characters when
processing files. This only will concern files whose name is given after
this option.
NOSORT
Asks ADoc not to sort the indexes of files whose name is specified after
this option.
TABSIZE n
Tells the tab size for the files whose name is specified after this
option. Default size is 8.
Any other argument will be considered as a doc file name to be used. You can
specify several files, by separating their names by spaces or commas (for
ex. "ADoc file1 file2" or "ADoc file1,file2"). You can mix file names and
options but let us remember that NOCASE, NOSORT, and TABSIZE options only
concern files you specified after these options. ADoc will open these files
in this given order. Unless you indicate one full path, firstly files will
be looked for in the current directory, then in the "ADOC:" one. If you
specify a directory name instead of file name, ADoc will open all the files
in this directory (apart from ".info" and ".index" files).
RunningADocFromWorkbench
From Workbench, you can inwoke ADoc in several ways :
- by double-clicking on its icon (then ADoc will use the default
documentation file)
- by double-clicking on one file icon having ADoc as default tool (field
"DEFAULT TOOL")
- by clicking on icons of several files, holding down the SHIFT key, and
double-clicking on the ADoc icon.
In all these cases, ADoc starts by looking into "TOOL TYPES" field of the
program icon; this one may contain :
FONT=name
DEPTH=n
OPTIONS=[WBENCH][LACE][MAKEIDX][QUICK][AREXX][ONEWINDOW]
For more information on these options, see the RunningADocfromCLI section.
Note option names must be separated by a "|" sign. After that, ADoc will
open the doc files you specified; it will open them as it does from CLI
except it examines the "TOOL TYPES" field of each icon. This field may
contain :
TABSIZE=n
OPTIONS=[NOCASE][NOSORT]
For more information about these options, see the RunningADocfromCLI
section. Note these three options only will concern the file corresponding
to the icon.
StartingADoc
As I explained above, ADoc starts by opening some specified file(s).
At this time, ADoc attempts as well to open the index file corresponding to
each doc file. If you didn't specified any file to open, ADoc will look if
the "ADocFile" variable is defined : if so, it's value is used as a file
name. Otherwise, the default file name is "Amiga.doc". You can specify
several file names is the "ADocFile" variable, just as from command line
(for example: setenv ADocFile "exec.doc dos.doc").
If ADoc can't find the index file, it will offer to create it. If
you refuse, this doc file will not be usable but, in spite of it, ADoc will
attempt opening other files.
If ADoc detects a doc file was changed after an index was created,
it will offer to update the index file. If you refuse, in spite of it, the
doc file will be opened but later ADoc will be able to detect errors if the
file contents was changed. Note the date of index file creation is stored in
the index file itself.
Once all files are opened, ADoc will display a requester; this one
indicates the term list of first open file. We'll describe how to use this
requester in the TheTermRequester section.
TheTermRequester
A term can be pointed out by a mouse click on it. Now this term is
displayed in a different colour. If you click a second time on it, the
requester is switched off and ADoc displays in a window the text
corresponding to that term. I'll describe how to use these windows in
HowToManageWindows section.
To choose a term, you can use the keyboard too. If you press any
key, the key letter will be added to the current "prefix" (displayed in a
rectangle below the term list), and ADoc will display the list starting from
the first term that begins with this prefix. ADoc will complete this prefix
as far as possible. If you press the <BACKSPACE> key (above the <RETURN>
key), the last prefix character will be deleted and the list will be updated
too. If you press the <RETURN> key, ADoc will display the text corresponding
to the first term that begins with this prefix. Note ADoc will not
differentiate upper and lower letters when the current file is indicated
after a NOCASE option.
You can close the requester without selecting a term both by
pressing the <ESC> key and by clicking in the close gadget either. If no
window is open at this time, the program will abort.
In fact, a term requester can allow you to select from among three
lists : the term list of the current file, the list of the opened files (if
you have several opened files) and the list of terms that ADoc found during
the previous search operation (provided a search was made before, see the
Search section below).
At the bottom, on the right corner of term requester, you have a
letter showing what a list is displayed : term list (T), file list (F), list
of found terms (S).
To pass from a list to another, click the right mouse button holding
down one of the <SHIFT> keys, or press the <TAB> key. When the file list is
displayed and you select a file in this list, ADoc returns automatically to
the term list and displays the list of terms in that file.
When no window is open, the term requester has a menu with the
following options :
Open window see TheSpecialMenu below
Search see the Search section below
Iconify see the TheProjectMenu below
Quit this one allows to quit ADoc.
HowToManageWindows
When you select a term, ADoc opens a window to display the
corresponding text. When a term is defined several times either in a single
file or in several different files, all text lines will be joined in a queue
and displayed in one window. The window height is dependent on the amount of
lines ADoc must display. If there are too many lines, only the first page
will be displayed and ADoc will add two arrow gadgets (on the right top
corner) for scrolling this text.
Of course, you can have several windows opened at the same time. In
this case, the window which was activated when opening a new window is
called the "parent window" of the new one.
By default, these windows have standard close, dragging, back and
front, and sizing gadgets. If you change the size of a window, ADoc, if
needed, will add or remove automatically the arrow gadgets. Each window has
three menus too : there are "Project", "Tools" and "Special" menus (I'll
describe these ones in TheProjectMenu, TheToolsMenu and TheSpecialMenu
sections, below). Finally, note ADoc recognize the following keys :
HELP list keys and their meaning
ESC close the current window
UP previous page
DOWN next page
BACKSPACE open parent window
Shift-UP previous term
Shift-DOWN next term
When you click on a word, this one will be displayed in a different
colour. If you click again on the same word, ADoc will automatically start
searching for the corresponding term in all open files. If this fails,
screen flashes, otherwise a new window will be brought up.
TheProjectMenu
Other term
Bring up the term requester (see above TheTermRequester).
Print
Print the text contained in the active window. Note : the possible ANSI
sequences will be correctly interpreted by the printer.
Iconify
Leave ADoc sleeping : if ADoc opened its own screen, this one will be
closed, all the windows will be switched off and then ADoc will open a
small window on the left top corner in the Workbench's screen. If you
click on the close gadget of this window, ADoc will ask you to confirm
it before you abort. For "awaking" ADoc, activate this window and click
the right mouse button.
Normally, ADoc keeps in memory all the text lines to be able switching
on quickly all the windows when it would be awaken. The one drawback is
that all possible memory will not be freed, so, when you ask ADoc to
iconify itself, ADoc will ask you if you want to close all windows. If
you say yes, the memory will be completely freed and when ADoc will be
awaken, it will bring up the term requester.
Help...
Displays some useful keys and their meaning (same as pressing the HELP
key)
About...
Display some infos about ADoc. Click inside this window or press a key
to continue.
Quit
Allow to quit ADoc (asks you to confirm it).
TheToolsMenu
Front Screen
Allow to use ADoc in a already open screen (for ex. that one of your
text editor). Only you need to move the screen -where you want switch on
ADoc- in front of any screen, drag it down to unfold the screen where
ADoc is. Now, select this item : ADoc will close all the open windows
and reopen these ones in the foreground screen.
CAUTION:
Of course, you'll have a "Guru" if the screen where you
placed ADoc is closed before you quitted ADoc (or placed
this one on another screen). 
Note this command will not work if you did not specify a font (see above
the RunningADocfromCLI section) and the font of your front screen
doesn't suit.
Close all
Allow to close all the windows at the same time. After it asked you to
confirm, ADoc will close every window and display the term requester.
Find
Allow to start searching (see the Search section below).
Information
Display the account of avalaible files and terms, just as the account of
opened windows and displayed lines. To continue click on the "Ok"
gadget.
TheSpecialMenu
Open file
Allow to open an additional doc file. A file requester is brought up so
that you can specify what a file must be opened.
Close file
Allow to close the current file (i.e. the file where is defined the term
displayed in the active window). After it asked you to confirm, ADoc
will close all the windows relied to this file and will close it. Note
this command will work only if at least two files are opened.
One window
If this option is selected, ADoc will open only one window at a time.
Search
In the text lines, ADoc has the capability to search up to four
strings simultaneously and display then the list of the relied terms. When
you select the "Search" item in the "Tools" menu, a window is switched on
with four string gadgets. You have also an "CANCEL" gadget, to abort this
operation, a "OK" gadget, to start your search, and an "Options" menu :
low = UPP
Ask ADoc not to differentiate upper and lower letters when searching.
All strings
Normally, ADoc is looking for all terms containing one of the strings
you introduced. On the contrary, this item allows you to search for
terms contaning ALL strings you specified.
All files
Ask ADoc to search in all open files, not only in the current file.
When you start your search, a requester appears. The "Stop" gadget
allows you to break this search. As soon as the search finished, screen will
flash if no term was found. Otherwise, the term requester will be switched
on and will display a list of found terms. That list is sorted, and kept in
memory until you stard a new search.
AdvancedConcepts
Since v4.00, you can associate an IFF picture to a term. This
picture will be loaded at the same time as the text, and will be displayed
in the same window. In order to use this fonctionnality, you just have to
add a special line in the term's text :
. adoc@<position> <picture's name>
where <position> is "top", "bottom", "left" or "right". The picture will be
displayed in the given border. For example, if you enter :
. adoc@right doc:exec/schema1.pic
the picture "doc:exec/shema1.pic" will be displayed next to the right border
of the window.
ADoc is able to load pictures in a different screenmode and/or
colors numbers than the current screen. The screen's palette will be
modified with the picture's palette.
The release 1.40 of ADoc introduced the concept of aliases, that is
a manner to associate a same text to several terms, without having to repeat
the text several times. An alias definition follow the syntax:
name1 alias name2
The first character of "name2" must, as for any term definition, be at
column one. There must be at least one space or tabulation between the three
words. The word "alias" must be in lower case characters. The effect of such
a definition is that when the user will ask to get the "name1" term, ADoc
will automatically display the "name2" term instead. Aliases appear in the
term requester, and in the search function. You must be aware that there is
*NO* recursivity check between aliases !
An application of aliases could be the documentation of a function
library : often you will define several functions together. With the
aliases, you can allow access to the definition by the name of each
function, but the text is defined only once.
ADoc can combine automatically several doc files. For that, it's
enough to specify the name of file(s) to be combined, in the first line of
file which you want associate them with. If this line is empty or begins
with a space or tab, its contents will be ignored. File names have to be
separated by spaces or commas. You can indicate a directory name; in this
case all the files of that directory will be opened (except ".info" and
".index" files).
To extend the character set you can use in a term, it's enough to
specify additional characters in the second line of your doc file. If this
line is empty or begins with a space or tab, its contents will be ignored.
Otherwise, all characters of that line (up to first space, tab, slash or
form feed) will be added to the default character set. Note this character
set extension only will concern that file.
ADoc has the possibility to load directly any compressed
"PowerPacker" file, providing you have set up "powerpacker.library" in your
LIBS: directory. It's not necessary (but recommended) to create the index
file before you compress a doc file. ADoc will refuse to load an encrypted
file.
After ADoc has decompressed a file, this will be copied in a
temporary file in the "T:" directory. So, using compressed files can arise
some memory problems, especially if you put T: directory in your RAM: disk.
This temporary file will be deleted when you close it.
TheAREXXMode
ADoc always opens a compatible AREXX port, named "ADoc_rexx".
Messages on this port are waited for at the same time as Intuition messages
on text windows, and can take the following forms :
QUIT quit ADoc
REQUEST bring up the term requester
FSCREEN ADoc moves all it's windows to the front screen
TOFRONT put ADoc screen in front of all screens
TOBACK put ADoc screen in back of all screens
FIND term start searching for a given term, and display the
corresponding text if it is found
OPEN file allows to open a other file while running ADoc
The return code (RC variable) will be set to zero, except in the
following cases: bad request (return code 20), "OPEN term" request with
"term" not found (return code 5), "request" request and no term choosen
(return code 5). Here is an example asking for help for the term "alias" :
/* Ask for help for "alias" */
ADDRESS "ADoc_rexx"
"FIND alias"
IF RC = 5 THEN SAY "not found !"
Note quotes surrounding commands !
If you launch ADoc with the option AREXX, the program operation will
be quite different : once ADoc opened the doc file(s), it will not switch on
the term requester but will display a message "Waiting for an AREXX message"
and will wait for messages on the AREXX port (or for CTRL-C to abort it).
Moreover, when the last window will be closed, the program will not end
itself but go back waiting for AREXX messages.
AutoDoc_files_support
ADoc can recognize and use the AutoDocs files from Commodore. In
most cases, no change are needed, but it is recommended to verify their
format: you must have at least two empty lines at the beginning, followed by
the table of contents and every term must start at column 1.
In some cases, you won't find empty lines at the beginning, and
terms will begin at column 2 and will be preceded by a "form feed" character
(i.e. CTRL-L). The program "AutoConvert", distributed with ADoc, will allow
you to convert those files into a correct format (Note : this program can
only be used from CLI). In all other cases, you'll have to convert these
files by yourself.
AmigaGuide_files_support
ADoc can now recognize AmigaGuide files, build their index files,
and display their contents. The different syntaxes of the "@node" directive
are handled :
@node name
@node "title"
@node name "title"
In the latter case, an "name" alias is automatically defined for the "title"
term. The "@title" directive is also handled.
As ADoc doesn't handle spaces in term names, they are replaced by
underscore characters. Links within text are displayed in boldface. As names
are truncated to 32 characters, some links may fail. Note that ADoc handles
inter-files links, like:
@{"foo" link help:general/bar}
To allow such links, delimiters are automatically set to ":/." for
AmigaGuide files.
TheADocMessages
When an error occurs, ADoc displays in a small window a name
(usually, a filename) and an error code. This one is either an AmigaDOS
error code or an internal code. In the first case, see your AmigaDOS Manual
(or use the command "Fault") to have more information on this error code.
There are the internal error codes :
-1 empty file
-2 read error
-3 file is wrong (bad format, etc...)
-4 file is compressed and there is no "powerpacker.library"
-5 a problem occured while decrunching
-6 bad picture specification
-7 error while loading picture