Diff of /docs/help-system.html [000000] .. [409b67] Maximize Restore

  Switch to unified view

a b/docs/help-system.html
1
<html>
2
  <head>
3
      <title> JOE 2.9.7pre3 -> Help system </title>
4
  </head>
5
  <body bgcolor="#83CCF4">
6
      <center><h2> JOE:: Help system </h2></center>
7
      <table>
8
          <tr>
9
              <td> Name: </td>
10
              <td> Help system </td>
11
          </tr>
12
          <tr>
13
              <td> Files: </td>
14
              <td> help.c, help.h </td>
15
          </tr>
16
          <tr>
17
              <td> Since: </td>
18
              <td> 2.9.7pre1 </td>
19
          </tr>
20
          <tr>
21
              <td> Main authors: </td>
22
              <td> Joseph Allen <br> Marek 'marx' Grac <a href="mailto:xgrac@fi.muni.cz">&lt;xgrac@fi.muni.cz&gt;</a> </td>
23
          </tr>
24
      </table>
25
      <p>
26
          Differences between this and previous version should be hidden
27
          to users. Main changes were done in design of source code. I
28
          will try to explain <i>what it is</i> and <i>why it is done this
29
          way</i>? Main goal was to clean and minimalize source code,
30
          remove several global variables, move everything concerned with
31
          help to these files.
32
      </p>
33
      <p>
34
          The help system is based on bi-directional list of help screens. 
35
          Each help screen has defined two variables, help text (<i>char
36
          *hlptxt</i>) and number of lines of help text (<i>int
37
          hlplns</i>).  Since this version the help file can/should be
38
          separated from *rc files. Advantage of this model is that you
39
          can set help to other languages. Usage of standard method
40
          (gettext) will be very difficult here, because help has constant
41
          width which can't be overcrossed. This method has also no
42
          problem with having several help files in each language (for
43
          joe, jmacs, ...). Problematics of setting proper help file will
44
          be solved in <i>main.c</i> not here.
45
      </p>
46
      <h3> How to create a help file </h3>
47
      <p>
48
          Help file consist of prologue, body and epilogue for each of the
49
          screens. Each help screen must begin with <i>{%name</i> where
50
          <i>%name</i> is only symbolic name of this screen and is not
51
          used in program. The body of help screen contains text which
52
          will be showed on the user screen and tags which takes care of
53
          special information (bold, flash, ...). There is list of the
54
          tags with theirs functions:
55
          <ul>
56
              <li> <b>\i</b> to turn on/off inverse video </li>
57
              <li> <b>\u</b> to turn on/off underline </li>
58
              <li> <b>\b</b> to turn on/off bold </li>
59
              <li> <b>\d</b> to turn on/off dim </li>
60
              <li> <b>\f</b> to turn on/off flash </li>
61
          </ul>
62
          These tags are inserted into help screen text, but they are not
63
          visible in the help screen (visible are only their effects, but this
64
          is their purpose <b>:)</b>)
65
      </p>
66
      <p>
67
          Some hints how to write a new help screen. Standard help screens have
68
          80 characters per line (including borders) so they are visible on text
69
          console. Sequences of keys are usually written as <i>^KD</i> where
70
          <i>^</i> means CTRL + next character <i>K</i> and then key named <i>D</i>
71
          should be pressed.
72
      </p>
73
      <hr>
74
      <p>
75
          Any comments, ideas, questions send to me at <a href="mailto:xgrac@fi.muni.cz">xgrac@fi.muni.cz</a>
76
      </p>
77
  </body>
78
</html>