contributing.html (1608B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 <link rel="stylesheet" href="/style.css"> 7 <title>contributing</title> 8 </head> 9 <body> 10 <div class="container"> 11 <h2 id="user-content-coding-standards">coding standards</h2> 12 <ul> 13 <li>indentation: 2 spaces (no tabs)</li> 14 <li>line length: max 80 characters</li> 15 <li>whitespace: no trailing whitespace allowed</li> 16 <li>brackets: K&R style (opening bracket on the same line)</li> 17 <li>pointers: char* func(...) for types, const char *str for variables</li> 18 <li>config macros: CONFIG_UPPER_CASE in config.h with prefix CONFIG_</li> 19 <li>write in English, lowercase, no trailing dot</li> 20 <li>use standard C-style comments (/* ... */)</li> 21 <li>use include guards in uppercase for header files (DIR_FILENAME_H)</li> 22 <li>use comment with name of define for include guards (#endif /* DIR_FILENAME_H */)</li> 23 <li>keep header files minimal: max 4 headers (fns.h, dat.h, project header, config.h)</li> 24 <li>languages: C, GASM, NASM</li> 25 <li>allowed defaults: gcc, make, X11, libc, mk</li> 26 <li>dependencies: max 1-2 external dependencies; write custom code if non-essential</li> 27 <li>README and LICENSE in plain text format</li> 28 </ul> 29 <h2 id="user-content-submitting-patches">submitting patches</h2> 30 <ul> 31 <li>committing changes: git commit -m "feature: add lexer"</li> 32 <li>generate patch: git format-patch --subject-prefix="REPO-NAME PATCH" -1 HEAD</li> 33 <li>send email: git send-email --to="evenfri@4plt.ch" 0001-feature-add-lexer.patch</li> 34 </ul> 35 </div> 36 </body> 37 </html> 38