blob: 6e0ad09df12759993be077c109fa217c62639846 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001Wollt ihr Code in der allgemeinen, oeffentlichen Mudlib anschliessen, bitte
2beachtet die folgenden Hinweise zum Codestyle (nicht erschoepfend):
3
4* Einrueckungen per Leerzeichen, nicht Tabs
5* Einrueckung von 2 Leerzeichen pro Ebene
6* praegnante und viele Kommentare
Zesstra396e9c12018-02-18 23:22:22 +01007* Kommentare sollen nicht (nur) beschreiben, was der Code tut, sondern
8 vor allem, was er tun soll und warum.
MG Mud User88f12472016-06-24 23:31:02 +02009* keine lambdas
10* Bei inline-closures die function-Syntax statt der (: :)-Syntax verwenden.
11* else, else if in eine eigene Zeile
12* { am Beginn von Bloecken soll in eine eigene Zeile.
13* Nach ifs, Loops & Co: umfasst der davon kontrollierte Code mehr als eine
14 physische Zeile Code, einen Block mit { } formulieren.
15* keine return fun(), 0;
16* (type) Casts sollten vermieden werden (Ausnahme: (type)call_other).
17 (type) konvertieren nur, wenn die Typen zur Compilezeit bekannt und
18 unterschiedlich sind. Daher bei gewuenschten Konversionen to_type() nehmen.
19* Pfade, die absolut sind, sollen auch mit / beginnen, z.B.
20 inherit "/std/thing", nicht inherit "std/thing"
21
Zesstra396e9c12018-02-18 23:22:22 +010022Commits und Patches
23* Bei Patches bitte keine inhaltlichen Aenderungen mit jeder Menge
24 Whitespace-Aenderungen vermischen.
25* Pro Patch bitte nur eine inhaltliche Aenderungen einschliessen
26* Jeder Commit muss eine aussagekraeftige Commitmeldung haben und
27 folgendem Style entsprechen:
28 * Die erste Zeile ist der Betreff
29 Dieser beschreibt in 50-60 Zeichen, worum es geht
30 * Eine leere Zeile
31 * Beliebig viele Zeilen mit Beschreibung von max. 70 Zeichen Laenge
32 Dieser Text sollte erklaeren, Warum und Wieso der Aenderung.
33* Commits sollten sich sauber auf die aktuelle Spitze vom master-Zweig
34 anwenden lassen. (Bzw. zumindest nicht schon Wochen alt sein.)
35
MG Mud User88f12472016-06-24 23:31:02 +020036Benennung von Properties:
37* der interne Name von Properties in der Basis-Mudlib beginnt immer mit
38 "p_lib_". Niemand sonst sollte Properties mit diesem Praefix erstellen.
39
40Sonstiges:
41* In der Mudlib wird keine neue Funktion(alitaet) angeschlossen, bevor die
42 Dokumentation dafuer fertig ist.
43 Am liebsten ist mir, bei der Konzeptentwicklung zuerst die fertige
44 Dokumentation (Manpage) fuer Nutzer/Spieler zu entwickeln, bevor ein Magier
45 ueberhaupt eine Zeile Code schreibt.
46* Patches muessen eine Zusammenfassung haben, welche kurz erlaeutert,
47 was dieser Patch fixen/aendern/verbessern soll und auf welche Weise
48 diese umgesetzt wird. (Anders gesagt: eine Commit-Message)
Zesstra6049baf2018-02-18 23:03:17 +010049* Bei Aenderungen von Manpages bitte nur bei inhaltlichen Aenderungen den
50 Abschnitt "Letzte (inhaltliche) Aenderung" aktualisieren.
MG Mud User88f12472016-06-24 23:31:02 +020051
Zesstra6049baf2018-02-18 23:03:17 +010052LETZTE INHALTLICHE AeNDERUNG:
53 18.2.2018, Zesstra
MG Mud User88f12472016-06-24 23:31:02 +020054