aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/pages/ug03.ht
blob: 542041e6bdfebef61b98d3481abe244b0aa4faf1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
% Copyright The Numerical Algorithms Group Limited 1992-94. All rights reserved.
% !! DO NOT MODIFY THIS FILE BY HAND !! Created by ht.awk.
\texht{\setcounter{chapter}{2}}{} % Chapter 3

%
\newcommand{\ugHyperTitle}{Using \HyperName{}}
\newcommand{\ugHyperNumber}{3.}
%
% =====================================================================
\begin{page}{ugHyperPage}{3. Using \HyperName{}}
% =====================================================================
\beginscroll


\HyperName{} is the gateway to \Language{}.
%-% \HDindex{HyperDoc @{\protect\HyperName{}}}{ugHyperPage}{3.}{Using \HyperName{}}
It's both an on-line tutorial and an on-line reference manual.
It also enables you to use \Language{} simply by using the mouse and
filling in templates.
\HyperName{} is available to you if you are running \Language{} under the
X Window System.

Pages usually have active areas, marked in
\texht{{\bf this font} (bold face).}{\downlink{this font.}{YouTriedIt}}
As you move the mouse pointer to an active area, the pointer changes from
a filled dot to an open circle.
The active areas are usually linked to other pages.
When you click on an active area, you move to the linked page.
\texht{}{Try clicking \downlink{here}{YouTriedIt} now.}

We suggest that you learn more about other features of
\HyperName{} by clicking on an active area in the menu below.

\beginmenu
    \menudownlink{{3.1. Headings}}{ugHyperHeadingsPage}
    \menudownlink{{3.2. Key Definitions}}{ugHyperKeysPage}
    \menudownlink{{3.3. Scroll Bars}}{ugHyperScrollPage}
    \menudownlink{{3.4. Input Areas}}{ugHyperInputPage}
    \menudownlink{{3.5. Radio Buttons and Toggles}}{ugHyperButtonsPage}
    \menudownlink{{3.6. Search Strings}}{ugHyperSearchPage}
    \menudownlink{{3.7. Example Pages}}{ugHyperExamplePage}
    \menudownlink{{3.8. X Window Resources for \HyperName{}}}{ugHyperResourcesPage}
\endmenu
\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperHeadingsTitle}{Headings}
\newcommand{\ugHyperHeadingsNumber}{3.1.}
%
% =====================================================================
\begin{page}{ugHyperHeadingsPage}{3.1. Headings}
% =====================================================================
\beginscroll
%
Most pages have a standard set of buttons at the top of the page.
This is what they mean:

\indent{0}
\beginitems
\item[\StdHelpButton{}] Click on this to get help.
The button only appears if there is specific help for the page you are
viewing.
You can get {\it general} help for \HyperName{} by clicking the help
button on the home page.

\item[\UpButton{}] Click here to go back one page.
By clicking on this button repeatedly, you can go back several pages and
then take off in a new direction.

\item[\ReturnButton{}] Go back to the home page, that is,
the page on which you started.
Use \HyperName{} to explore, to make forays into new topics.
Don't worry about how to get back.
\HyperName{} remembers where you came from.
Just click on this button to return.

\item[\StdExitButton{}] From the root window (the one that is displayed when
you start the system) this button leaves the \HyperName{} program, and it
must be restarted if you want to use it again.
From any other \HyperName{} window, it just makes that one window go away.
You {\it must} use this button to get rid of a window.
If you use the window manager ``Close'' button, then all of \HyperName{}
goes away.
\enditems
\indent{0}
%
The buttons are not displayed if they are not applicable to the page
you are viewing.
For example, there is no \ReturnButton{} button on the top-level menu.

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperKeysTitle}{Key Definitions}
\newcommand{\ugHyperKeysNumber}{3.2.}
%
% =====================================================================
\begin{page}{ugHyperKeysPage}{3.2. Key Definitions}
% =====================================================================
\beginscroll

The following keyboard definitions are in effect throughout
\HyperName{}.
See \downlink{``\ugHyperScrollTitle''}{ugHyperScrollPage} in Section \ugHyperScrollNumber\ignore{ugHyperScroll} and
\downlink{``\ugHyperInputTitle''}{ugHyperInputPage} in Section \ugHyperInputNumber\ignore{ugHyperInput}
for some contextual key definitions.
%
\indent{0}
\beginitems
\item[F1] Display the main help page.
\item[F3] Same as \StdExitButton{}, makes the window go away if you are not at the top-level window or quits the \HyperName{} facility if you are at the top-level.
\item[F5] Rereads the \HyperName{} database, if necessary (for system developers).
\item[F9] Displays this information about key definitions.
\item[F12] Same as {\bf F3}.
\item[Up Arrow] Scroll up one line.
\item[Down Arrow] Scroll down one line.
\item[Page Up] Scroll up one page.
\item[Page Down] Scroll down one page.
\enditems
\indent{0}

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperScrollTitle}{Scroll Bars}
\newcommand{\ugHyperScrollNumber}{3.3.}
%
% =====================================================================
\begin{page}{ugHyperScrollPage}{3.3. Scroll Bars}
% =====================================================================
\beginscroll
%

Whenever there is too much text to fit on a page, a {\it scroll
%-% \HDindex{scroll bar}{ugHyperScrollPage}{3.3.}{Scroll Bars}
bar} automatically appears along the right side.

With a scroll bar, your page becomes an aperture, that is, a
window into a larger amount of text than can be displayed at one
time.
The scroll bar lets you move up and down in the text to see
different parts.
It also shows where the aperture is relative to the whole text.
The aperture is indicated by a strip on the scroll bar.

Move the cursor with the mouse to the ``down-arrow'' at the bottom
of the scroll bar and click.
See that the aperture moves down one line.
Do it several times.
Each time you click, the aperture moves down one line.
Move the mouse to the ``up-arrow'' at the top of the scroll bar and
click.
The aperture moves up one line each time you click.

Next move the mouse to any position along the middle of the scroll bar and
click.
\HyperName{} attempts to move the top of the aperture to this point in
the text.

You cannot make the aperture go off the bottom edge.
When the aperture is about half the size of text, the lowest you can move
the aperture is halfway down.

To move up or down one screen at a time, use the
\texht{\fbox{\bf PageUp}}{{\bf PageUp}} and \texht{\fbox{\bf PageDown}}{{\bf
PageDown}} keys on your keyboard.
They move the visible part of the region up and down one page each time you
press them.

If the \HyperName{} page does not contain an input area
(see \downlink{``\ugHyperInputTitle''}{ugHyperInputPage} in Section \ugHyperInputNumber\ignore{ugHyperInput}), you can also use the
\texht{\fbox{\bf Home}}{{\bf Home}} and
\texht{\fbox{$\uparrow$}}{up} and
\texht{\fbox{$\downarrow$}}{down} arrow keys to navigate.
When you press the \texht{\fbox{\bf Home}}{{\bf Home}} key,
the screen is positioned at the very top of the page.
Use the \texht{\fbox{$\uparrow$}}{up} and
\texht{\fbox{$\downarrow$}}{down} arrow keys to move the screen up
and down one line at a time, respectively.

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperInputTitle}{Input Areas}
\newcommand{\ugHyperInputNumber}{3.4.}
%
% =====================================================================
\begin{page}{ugHyperInputPage}{3.4. Input Areas}
% =====================================================================
\beginscroll
%
Input areas are boxes where you can put data.
Here is one:
\centerline{\inputstring{one}{40}{some text}}
\newline As you can see, the input area has some initial text {\it some text}
followed by an underscore cursor (the character {\it _}).

To enter characters, first
move your mouse cursor to somewhere within the \HyperName{} page.
Characters that you type are inserted in front of the underscore.
This means that when you type characters at your keyboard, they
go into this first input area.

The input area grows to accommodate as many characters as you type.
Use the \texht{\fbox{\bf Backspace}}{{\bf Backspace}}
key to erase characters to the left.
To modify what you type, use the right-arrow \texht{\fbox{$\rightarrow$}}{}
and left-arrow keys \texht{\fbox{$\leftarrow$}}{} and the
keys \texht{\fbox{\bf Insert}}{{\bf Insert}},
\texht{\fbox{\bf Delete}}{{\bf Delete}},
\texht{\fbox{\bf Home}}{{\bf Home}} and
\texht{\fbox{\bf End}}{{\bf End}}.
These keys are found immediately on the right of the standard IBM keyboard.

If you press the
\texht{\fbox{\bf Home}}{{\bf Home}}
key, the cursor moves to the beginning of the line and if you press the
\texht{\fbox{\bf End}}{{\bf End}}
key, the cursor moves to the end of the line.
Pressing
\texht{\fbox{\bf Ctrl}--\fbox{\bf End}}{{\bf Ctrl-End}}
deletes all the text from the cursor to the end of the line.

A page may have more than one input area.
Only one input area has an underscore cursor.
When you first see apage, the top-most input area contains the
cursor.
To type information into another input area,
use the \texht{\fbox{\bf Enter}}{{\bf Enter}} or
\texht{\fbox{\bf Tab}}{{\bf Tab}} key to move
from one input area to another.
To move in the reverse order, use
\texht{\fbox{\bf Shift}--\fbox{\bf Tab}}{{\bf Shift-Tab}}.

You can also move from one input area to another using your mouse.
Notice that each input area is active. Click on one of the areas.
As you can see, the underscore cursor moves to that window.

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperButtonsTitle}{Radio Buttons and Toggles}
\newcommand{\ugHyperButtonsNumber}{3.5.}
%
% =====================================================================
\begin{page}{ugHyperButtonsPage}{3.5. Radio Buttons and Toggles}
% =====================================================================
\beginscroll
%
Some pages have {\it radio buttons} and {\it toggles}.
Radio buttons are a group of buttons like those on car radios: you can
select only one at a time.
\radioboxes{sample}{\htbmfile{pick}}{\htbmfile{unpick}}
Here are three radio buttons:
\centerline{
{\em\radiobox[1]{rone}{sample}\space{}\ First one}\space{3}
{\em\radiobox[0]{rtwo}{sample}\space{}\ Second one}\space{3}
{\em\radiobox[0]{rthree}{sample}\space{}\ Third one}
}
\newline
Once you have selected a button, it appears to be inverted and
contains a checkmark.
To change the selection, move the cursor with the mouse to a different radio
button and click.
\texht{}{Try it now.}

A toggle is an independent button that displays some on/off
state.
When ``on'', the button appears to be inverted and
contains a checkmark.
When ``off'', the button is raised.
%
Unlike radio buttons, you can set a group of them any way you like.
Here are three:
\centerline{
{\em\inputbox[1]{one}{\htbmfile{pick}}{\htbmfile{unpick}}\space{}\ First one}
\space{3}
{\em\inputbox[0]{two}{\htbmfile{pick}}{\htbmfile{unpick}}\space{}\ Second one}
\space{3}
{\em\inputbox[1]{three}{\htbmfile{pick}}{\htbmfile{unpick}}\space{}\ Third one}
}
\newline
To change toggle the selection, move the cursor with the mouse
to the button and click.

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperSearchTitle}{Search Strings}
\newcommand{\ugHyperSearchNumber}{3.6.}
%
% =====================================================================
\begin{page}{ugHyperSearchPage}{3.6. Search Strings}
% =====================================================================
\beginscroll
%
A {\it search string} is used for searching some database.
To learn about search strings, we suggest that
you bring up the \HyperName{} glossary.
To do this from the top-level page of \HyperName{}:
\indent{4}
\beginitems
\item[1. ] Click on \windowlink{Reference}{TopReferencePage},
bringing up the \Language{} Reference page.
\item[2. ] Click on \windowlink{Glossary}{GlossaryPage}, bringing up the glossary.
\texht{}{(You can also just click on the word ``Glossary'' in the
last sentence.)}
\enditems
\indent{0}
Once you get the window containing the glossary, move it so that
it and this window are both visible.

The glossary has an input area at its bottom.
We review the various kinds of search strings
you can enter to search the glossary.

The simplest search string is a word, for example, {\tt operation}.
A word only matches an entry having exactly that spelling.
Enter the word {\tt operation} into the input area above then click on
{\bf Search}.
As you can see, {\tt operation} matches only one entry, namely with {\tt
operation} itself.

Normally matching is insensitive to whether the alphabetic characters of your
search string are in uppercase or lowercase.
Thus {\tt operation} and {\tt OperAtion} both have the same effect.
%If you prefer that matching be case-sensitive, issue the command
%\spadsys{set HHyperName mixedCase} command to the interpreter.

You will very often want to use the wildcard \spadSyntax{*} in your search
string so as to match multiple entries in the list.
The search key \spadSyntax{*}  matches every entry in the list.
You can also use \spadSyntax{*} anywhere within a search string to match an
arbitrary substring.
Try {\tt cat*} for example:
enter {\tt cat*} into the input area and click on {\bf Search}.
This matches several entries.

You use any number of wildcards in a search string as long as they are
not adjacent.
Try search strings such as {\tt *dom*}.
As you see, this search string  matches {\tt domain}, {\tt domain
constructor}, {\tt subdomain}, and so on.

\beginmenu
    \menudownlink{{3.6.1. Logical Searches}}{ugLogicalSearchesPage}
\endmenu
\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugLogicalSearchesTitle}{Logical Searches}
\newcommand{\ugLogicalSearchesNumber}{3.6.1.}
%
% =====================================================================
\begin{page}{ugLogicalSearchesPage}{3.6.1. Logical Searches}
% =====================================================================
\beginscroll

For more complicated searches, you can use
\spadSyntax{and}, \spadSyntax{or}, and \spadSyntax{not}
with basic search strings;
write logical expressions using these three operators just as
in the \Language{} language.
For example, {\tt domain or package}  matches the two
entries {\tt domain} and {\tt package}.
Similarly, {\tt dom* and *con*} matches {\tt domain constructor}
and others.
Also {\tt not *a*} matches every entry that does not contain
the letter {\tt a} somewhere.

Use parentheses for grouping.
For example, {\tt dom* and (not *con*)}
matches {\tt domain} but not {\tt domain constructor}.

There is no limit to how complex your logical expression can be.
For example,
\centerline{{{\tt a* or b* or c* or d* or e* and (not *a*)}}}
is a valid expression.

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperExampleTitle}{Example Pages}
\newcommand{\ugHyperExampleNumber}{3.7.}
%
% =====================================================================
\begin{page}{ugHyperExamplePage}{3.7. Example Pages}
% =====================================================================
\beginscroll
%
Many pages have \Language{} example commands.
%
Here are two:
\spadpaste{a:= x**2 + 1 \bound{a}} 
\spadpaste{(a - 2)**2 \free{a}} 
%
Each command has an active ``button'' along the left margin.
When you click on this button, the output for the command is
``pasted-in.''
Click again on the button and you see that the pasted-in output
disappears.

Maybe you would like to run an example?
To do so, just click on any part of its text!
When you do, the example line is copied into a new interactive
\Language{} buffer for this \HyperName{} page.

Sometimes one example line cannot be run before you run an earlier one.
Don't worry---\HyperName{} automatically runs all the necessary
lines in the right order!
For instance, the second example line above refers to \spad{a} which is
assigned in the first example line.
What happens if you first click on the second example line?
\Language{} first issues the first line (to assign \spad{a}), then the
second (to do the computation using \spad{a}).

The new interactive \Language{} buffer disappears when you leave
\HyperName{}.
If you want to get rid of it beforehand,
use the {\bf Cancel} button of the X Window manager
or issue the \Language{} system command \spadsys{)close.}
%-% \HDsyscmdindex{close}{ugHyperExamplePage}{3.7.}{Example Pages}

\endscroll
\autobuttons
\end{page}
%
%
\newcommand{\ugHyperResourcesTitle}{X Window Resources for \HyperName{}}
\newcommand{\ugHyperResourcesNumber}{3.8.}
%
% =====================================================================
\begin{page}{ugHyperResourcesPage}{3.8. X Window Resources for \HyperName{}}
% =====================================================================
\beginscroll
%
You can control the appearance of \HyperName{} while running under Version 11
%-% \HDindex{HyperDoc @{\protect\HyperName{}}!X Window System defaults}{ugHyperResourcesPage}{3.8.}{X Window Resources for \HyperName{}}
of the X Window System by placing the following resources
%-% \HDindex{X Window System}{ugHyperResourcesPage}{3.8.}{X Window Resources for \HyperName{}}
in the file {\bf .Xdefaults} in your home directory.
%-% \HDindex{file!.Xdefaults @{\bf .Xdefaults}}{ugHyperResourcesPage}{3.8.}{X Window Resources for \HyperName{}}
In what follows, {\it font} is any valid X11 font name
%-% \HDindex{font}{ugHyperResourcesPage}{3.8.}{X Window Resources for \HyperName{}}
(for example, {\tt Rom14}) and {\it color} is any valid X11 color
%-% \HDindex{color}{ugHyperResourcesPage}{3.8.}{X Window Resources for \HyperName{}}
specification (for example, {\tt NavyBlue}).
For more information about fonts and colors, refer to the
X Window documentation for your system.
\indent{0}
\beginitems
\item[{\tt Axiom.hyperdoc.RmFont:} {\it font}] \ \newline
This is the standard text font.  \xdefault{Rom14}
\item[{\tt Axiom.hyperdoc.RmColor:} {\it color}] \ \newline
This is the standard text color.  \xdefault{black}
\item[{\tt Axiom.hyperdoc.ActiveFont:} {\it font}] \ \newline
This is the font used for \HyperName{} link buttons.  \xdefault{Bld14}
\item[{\tt Axiom.hyperdoc.ActiveColor:} {\it color}] \ \newline
This is the color used for \HyperName{} link buttons.  \xdefault{black}
\item[{\tt Axiom.hyperdoc.AxiomFont:} {\it font}] \ \newline
This is the font used for active \Language{} commands.\footnote{
This was called {\tt Axiom.hyperdoc.SpadFont} in early versions
of \Language{}.}
\xdefault{Bld14}
\item[{\tt Axiom.hyperdoc.AxiomColor:} {\it color}] \ \newline
This is the color used for active \Language{} commands.\footnote{
This was called {\tt Axiom.hyperdoc.SpadColor} in early versions
of \Language{}.}
\xdefault{black}
\item[{\tt Axiom.hyperdoc.BoldFont:} {\it font}] \ \newline
This is the font used for bold face.  \xdefault{Bld14}
\item[{\tt Axiom.hyperdoc.BoldColor:} {\it color}] \ \newline
This is the color used for bold face.  \xdefault{black}
\item[{\tt Axiom.hyperdoc.TtFont:} {\it font}] \ \newline
This is the font used for \Language{} output in \HyperName{}.
This font must be fixed-width.  \xdefault{Rom14}
\item[{\tt Axiom.hyperdoc.TtColor:} {\it color}] \ \newline
This is the color used for \Language{} output in \HyperName{}.
\xdefault{black}
\item[{\tt Axiom.hyperdoc.EmphasizeFont:} {\it font}] \ \newline
This is the font used for italics.  \xdefault{Itl14}
\item[{\tt Axiom.hyperdoc.EmphasizeColor:} {\it color}] \ \newline
This is the color used for italics.  \xdefault{black}
\item[{\tt Axiom.hyperdoc.InputBackground:} {\it color}] \ \newline
This is the color used as the background for input areas.
\xdefault{black}
\item[{\tt Axiom.hyperdoc.InputForeground:} {\it color}] \ \newline
This is the color used as the foreground for input areas.
\xdefault{white}
\item[{\tt Axiom.hyperdoc.BorderColor:} {\it color}] \ \newline
This is the color used for drawing border lines.
\xdefault{black}
\item[{\tt Axiom.hyperdoc.Background:} {\it color}] \ \newline
This is the color used for the background of all windows.
\xdefault{white}
\enditems
\indent{0}
\endscroll
\autobuttons
\end{page}
%