[[!meta title="Documentation/Modular Coding Style"]] [[!meta author="James Bursa"]] [[!meta date="2011-11-26T22:20:15Z"]] [[!toc]] Modules ------- NetSurf's source is organised in modules. A module usually consists of a .c and .h file. For example the html module is in html.c and html.h. All functions (including static functions) in a module should start \_, for example html\_create(), html\_process\_data(), etc. This makes functions easy to find and names unique through the source, which isĀ helpful for backtraces, documentation, etc. Global variables in a module (including static) should also start \_. Static functions should all be declared at the top. Put functions in a logical order, for example any init function first, then functions it calls, then the next externally available function, functions it calls, etc. Coding Style ------------ We use K&R (2nd edition ANSI C) style, tabs for indent, 80 characters wide, lower\_case\_with\_underscores. See the [Style Guide](http://www.netsurf-browser.org/developers/StyleGuide.pdf) for further information and examples. [[!inline raw=yes pages="Documentation"]]