source: git/doc/STYLEGUIDE @ e331a7a

spielwiese
Last change on this file since e331a7a was e331a7a, checked in by Jens Schmidt <schmidt@…>, 25 years ago
* STYLEGUIDE: some new guide-lines added git-svn-id: file:///usr/local/Singular/svn/trunk@1817 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 7.2 KB
Line 
1* texinfo *
2===========
3
4+ nach einer @table muss eine Leerzeile kommen, sonst steht im info-File
5  die nachfolgende Zeile in der letzten Tabellenzeile mit drin.
6
7+ Das Argument von @cindex, @chapter, @section und @subsection darf
8  nicht in geschweiften Klammern stehen, auch wenn es Leerzeichen
9  enthaelt. (Das Argument geht bis zum Ende der Zeile.)
10    @cindex Procedures
11    @section Getting started
12
13+ Taucht ein Punkt innerhalb eines Satzes auf (z.B. als Ende einer
14  Abkuerzung), so sollte darauf ein @: folgen. Sonst erscheint im
15  Ausdruch ein zu grosser Abstand zum nachfolgenden Wort:
16    compute w.r.t.@: a wellordering
17    a Groebner resp.@: standard basis
18
19+ Fuer Aestheten: anstatt der Quotes "..." die TeX Quotes verwenden
20  ``...''.
21
22+ Die Zeichen @ und { und } muessen in texinfo mit @ "gequoted"
23  werden (nicht mit Backslash!).
24  Der Backslash muss nicht gequoted werden:
25    @  muss als  @@  geschrieben werden
26    {  muss als  @{  geschrieben werden
27    }  muss als  @}  geschrieben werden
28    \  wird als  \   geschrieben
29  ACHTUNG: Dies gilt natuerlich nicht in Beispielen, die von doc2tex
30  gelesen und in Singular verarbeitet werden! Dort duerfen die Zeichen
31  nicht gequoted werden, das macht doc2tex alleine. Dies gilt insbesondere
32  auch fuer Dateien, die ueber @c include eingelesen werden.
33
34+ Bei Aenderung von @node-Namen daran denken, dass der entsprechende Name
35  auch im vorherigen und naechsten @node geaendert werden muss.
36  Bei Aenderung von (Sub)sections daran denken, die Menues auf den neuen
37  Stand zu bringen.
38  Fehlerhafte @node- und @menu-Strukturen sieht man, wenn man singular.hlp
39  erzeugt.
40
41+ bislang wurde von texinfo nach einem @tex Kommando zu viel space
42  eingesetzt. Der Fehler ist im texinfo behoben. Man kann nun also auch
43  mitten in einem Satz auf @tex umschalten, ohne etwas wie \noindent
44  einsetzen zu muessen.
45
46+ fuer Ellipsen (...) das Kommando @dots{} verwenden.  Eine Ellipse am Ende
47  eines Satzes mit @enddots{} schreiben.
48
49+ Email Adressen in @email{...} notieren, URL's in @url{...}
50
51* Notationen *
52==============
53
54+ Schreibweise von Singular:
55    im Text: @sc{Singular}
56    in Singular-Kommentaren von Singular-Beispielen: SINGULAR
57    in Ueberschriften: SINGULAR
58
59+ Alle Singular-Befehle und -Variablen werden im Style @code
60  geschrieben:
61    @code{std}, @code{TRACE}
62
63+ Singular-Typen werden NICHT im Style @code geschrieben:
64    int, intmat
65
66+ Tasten, die man druecken muss, werden im Style @code geschrieben.
67  Die Control-Taste wird als CTRL abgekuerzt:
68    @code{CTRL-A}
69
70+ Gross/Kleinschreibung von Ueberschriften: Das erste Wort wird gross
71  geschrieben, alle anderen klein. Ausnahme: Wenn das erste Wort ein
72  reserviertes Wort von Singular ist, wird es so geschrieben, wie man
73  es in Singular schreibt:
74    Functions and system variables
75    int related functions
76    TRACE
77
78+ Die Funktionsweise von Funktionen (vor allem im Kapitel "Functions")
79  wird in der dritten Person beschrieben. Statt "will be" wird "is"
80  verwendet:
81    vdim: returns the vector space dimension ....
82    the result is a standard basis (statt will be a standard basis)
83
84* Schreibweisen *
85=================
86
87+ "standard basis" statt "standardbasis"
88
89+ "basering" statt "base ring"
90
91+ "Groebner" (ohne Umlaut)
92
93+ "I/O" statt "i/o"
94 
95+ Meistens verwenden wir den Begriff "monomial ordering".
96
97+ "Computer Algebra" statt "computer algebra"
98
99+ Konstrukte wie "the ideal/module is..." vermeiden. Stattdessen etwa
100  "the ideal resp.@: module is..." schreiben.
101
102+ Zum Englischen (Dank an Olaf und Christian):
103  "i.e.", "e.g.", "for example", "that is" usw. werden immer in Kommas
104  eingebettet:
105    @sc{Singular}, for example, has the ...
106  Nach einem Doppelpunkt schreiben wir klein weiter:
107    Purpose: computes the dimension.
108
109+ Die pers"onliche Anrede des Lesers vermeiden.  Insbesondere die Worte
110  `you', `your', etc. vermeiden.
111
112* Singular Beispiele und libraries *
113====================================
114
115+ Die Kommandozeilen in einem Beispiel beginnen mit zwei Leerzeichen:
116@example
117  ring r;
118  ideal i=x,y;
119@end example
120
121+ Ist der Kommentar zu einem Kommando in einem Beispiel, das von Singular
122  gerechnet werden soll, laenger als eine Zeile, muss das Kommando in der
123  untersten Zeile des Kommentars stehen (sonst wird in spaeter die
124  Singular-Ausgabe zwischen den Kommentar und das Kommando geschoben):
125  @example
126  @c example
127    ring r;
128                   // the following option leads to some usefule output     
129    option(prot);  // during the Groebner basis computation.
130  @c example
131  @end example
132
133+ Bei Beispielen, die nicht wirklich von doc2tex gerechnet, muss nach dem
134  @expansion ein Leerzeichen kommen:
135  @example
136    int i=3; i;
137    @expansion{} 3
138  @end example
139
140+ Beim Schreiben von Singular-Beispielen (insbesondere von
141  Kommentaren) bitte darauf achten, dass die Zeilen nicht zu breit
142  werden. (Sonst bekommt man "overfull hbox"-Meldungen um die Ohren
143  geschmissen.)
144
145+ Kommando-Beschreibungen (Purpose:) fangen mit einem Kleinbuchstaben an,
146  sind in der dritten Person Singular gehalten und schliessen mit einem
147  Punkt.  Vollstaendige Saetze formulieren.  Beispiel:
148
149  Purpose:  returns the number of ring parameters.
150
151+ Hilfe-Texte in Libraries: keine TAB's verwenden
152
153* Cross-Referenzen *
154====================
155
156+ es gibt drei Type von Cross-Referenzen (erste Zeile - Beispiel,
157  zweite Zeile - Resultat in Info, dritte Zeile - Resultat in TeX):
158
159
160  @xref      fuer den Anfang eines Satzes
161
162             @xref{Tropical Storms}, for more info.
163             *Note Tropical Storms::, for more info.
164             See Section 3.1 [Tropical Storms], page 24, for more info.
165
166  @ref       fuer den Ende eines Satzes
167
168             For more information, see @ref{Hurricanes}.
169             For more information, see *Note Hurricanes::.
170             For more information, see Section 8.2 [Hurricanes], page 123.
171
172  @pxref     fuer geklammerte Referenzen
173
174             ... storms cause flooding (@pxref{Hurricanes}) ...
175             ... storms cause flooding (*Note Hurricanes::) ...
176             ... storms cause flooding (see Section 6.7 [Hurricanes], page 72) ...
177
178+ @xref und @ref *muessen* immer von einem Komma oder einem Punkt
179  oder einem Semikolon abgeschlossen werden.  Wie oben aufgefuehrt, sollte
180  @xref immer am Satzanfang stehen, @ref dagegen immer am Satzende.
181  Ausnahmen sind Listen von @ref's, wie unten beschrieben.
182
183+ @pxref darf nur innerhalb einer Klammer auftauchen.  Und zwar nur ein
184  einzelnes, keine Liste von @pxref's.
185
186+ mit der neuen Version von doc2tex kann (soll) man Listen von
187  Cross-Referenzen wie folgt schreiben:
188    @c ref
189    See
190    @ref{std};
191    @ref{stdfac};
192    @ref{stdhilbert}.
193    @c ref
194  Daraus wird dann automatisch ein Menue fuer die info-Files erzeugt.
195  (Man kann sich also das "@menu * std:: ...  @end menu" sparen.)
196  Bitte pro Zeile nur *eine* Referenz notieren und das `See'
197  in eine eigene Zeile packen.  Das macht die Sache
198  uebersichtlicher.  Ausserdem kann man die Referenzen dann
199  leichter im Editor handhaben (loeschen, alphabetisch
200  sortieren).
201  Die Referenzen bitte alphabetisch sortieren und mit einem Semikolon
202  trennen.
203
204------------------------------------------------------------
205$Id: STYLEGUIDE,v 1.5 1998-05-18 13:36:31 schmidt Exp $
206------------------------------------------------------------
Note: See TracBrowser for help on using the repository browser.