Code Style
Table of Contents
1. Enforcing
It's OK to leave code style of old code as is. New code should conform to the code style, unless there is a good reason not to.
2. Capitalization
- classes and structs:
CapitalizedWords- example:
EventHandler,Array - exceptions:
string,vector2,vector3,name
- example:
- classes with prefix:
prefix_CapitalizedWords - functions:
camelCase - constants:
ALL_CAPS- exceptions:
CapitalizedWordsif they contain no underscores - exceptions: enumeration-like:
PREFIX_CapitalizedWords
- exceptions:
- class members:
mCapitalizedWords- exceptions:
camelCaseif a class is plain data
- exceptions:
- struct members:
camelCase - local variables and parameters:
camelCase - states:
CapitalizedWords - properties:
CapitalizedWords - console variables and aliases:
snake_case - project names:
CapitalizedWords.- exceptions: external projects imported into DoomToolbox, like
libeye - exceptions: Typist.pk3, 10.5x
- exceptions: external projects imported into DoomToolbox, like
- file names:
CapitalizedWords- exceptions: tangled ZScript files:
snake_case
- exceptions: tangled ZScript files:
3. Formatting
See ../.clang-format, ../.editorconfig, ../.pre-commit-config.yaml, and ../pyproject.toml for formatting settings.
4. Abbreviations
Minimize the use of abbreviations. Capitalize abbreviations as single words (Http,
Cvar).
5. Language
See ../.dir-locals.el for spellcheck settings.
6. Encoding
ASCII or UTF-8.