1Hacking on EasyTAG
2==================
3
4Contributing
5------------
6
7If you have a suggestion or found a bug, please either file a bug:
8
9https://bugzilla.gnome.org/enter_bug.cgi?product=easytag
10
11or bring it up on the mailing list:
12
13easytag-list@gnome.org
14
15Patches are best filed on Bugzilla, but a pull request is also fine. For
16patches, please:
17
18* keep the first line of the commit messages at 50 characters or less
19* do not add a prefix to the commit message, for example "build:"
20* provide patches created with "git format-patch"
21* add a link to the bug report or mailing list archives where the patch was
22  discussed, for example "bug 987654" for GNOME Bugzilla or a URL for other
23  services
24
25Coding Style
26------------
27
28The original EasyTAG coding style was close to K&R style, with four-space
29indents. This has been changed slightly to the following guidelines:
30
31* BSD/Allman brace style
32* C89 comments
33* one space before opening bracket, none after opening or closing
34* four space indent
35* try to keep to 80 character lines
36* space after ',', spaces around logical operators
37* function return values on a line separate from the function name
38
39New code should follow this style.
40
41GtkBuilder UI descriptions
42--------------------------
43
44GtkBuilder files are used for describing the EasyTAG UI. The UI files are in
45the data directory, and named *.ui. The files are not created with Glade, and
46Glade should not be used to edit them, as it will unnecessarily rearrange
47content within the file, leading to commit diffs which are difficult to read.
48The files are not installed, but instead compiled into a resource bundle and
49built into the application binary.
50