With glib-compile-resources, longer static texts for Kickshaw are (optionally) 
compressed and written as binary data into a .c file. This .c file, 
.gresource.c, is compiled with the rest of the program. Besides the compression, 
another advantage is that the original texts are stored as plain text files,
which can be edited more easily and with less mandatory escaping than if they 
were part of a .c source file.

Since there are two versions of one of the hints texts, one for GTK >= 3.20 
and one for GTK < 3.20, glib-compile-resources has to be run twice. Check the 
.gresource.xml for these hint texts. The hint text for GTK < 3.20 is commented
by default.

glib-compile-resources has to be run as

glib-compile-resources --generate-source .gresource.xml --c-name resources

The first execution of the command will create a .c file for GTK > 3.20. This 
file replaces the .gresource.c inside the source folder (use the existing 
.gresource.c as a backup or blueprint, if you wish so). You will see an array 
inside the generated file. Place 
#if GTK_CHECK_VERSION (3,20,0)
above it and 
#else
#endif
below it.

Now is the time for the second run for GTK < 3.20. First, inside .gresource.xml, 
the lines with "hints2" instead of "hints2_pre_gtk3_20_xx" have to be commented.
Also, <file compressed="true">txts/list_of_shortcuts</file> should be commented
inside .gresource.xml as well, because the shortcut window is only available 
from 3.20, otherwise you waste space. Now run glib-compile-resources as 
stated above.

This time, copy the array from the generated .c file between the #else and 
#endif compiler directive that you have placed in the .gresource.c file. 
The last step is placing #include <gtk/gtk.h> at the top of the .gresource.c, 
otherwise the compiler can't use the GTK version macros.

Do not forget to revert the changes done in .gresource.xml after finishing 
.gresource.c, so the same procedure can be repeated if necessary.

NOTE FOR OLDER GLIB VERSIONS:

If you use glib-compile-resources with an older GLib version, you might 
obtain two different arrays. In this case, copy them both and place 
the abovementioned preprocessor directives around both of them. You will
have four arrays in the end in the .gresource.file, grouped into two 
sections with a GTK >=3.20 version and a GTK <3.20 for each of them.
