Guidelines for LaTeXila ======================= LaTeXila source code is maintained using the Git version control system and is available at the following location: git://git.gnome.org/latexila A Web Interface is available at: http://git.gnome.org/browse/latexila You can download the source code from the Git repository by doing: $ git clone git://git.gnome.org/latexila Later, to take the new commits you just have to do: $ git pull If you want to contribute to LaTeXila, contact the main developer (see the file AUTHORS). To create a patch, make first one or several commits (in another branch) and then use the 'git format-patch' command. You can submit your patch to the GNOME bugzilla. Alternatively, if you have a GitHub account, you can make a pull request. A GitHub repository is available, so you can fork it easily: https://github.com/swilmet/latexila There are some rules to follow when coding: - indentation: 4 spaces - lines: 90 characters maximum (in some cases it can be a little more) - no trailing spaces - /* ... */ comments for delimiting code sections - // ... comments otherwise (e.g. for explaining just one line) - some spaces almost everywhere: - function (blah); // not function(blah); - int num = 5; // not int num=5; - if (! foo) // not if (!foo) - for (int i = 0 ; i < max ; i++) // not for(int i=0;i<max;i++) - etc... - do not use 'var' for declaring variables, unless the type is very long - same coding style everywhere How to generate the C code from Vala files? See the file "INSTALL". How to debug LaTeXila with gdb? If you are using the master branch, the debug stuff is enabled by default. Here is how you can get the backtrace after a crash: $ gdb ./latexila > run [segmentation fault] > bt The debug stuff is disabled in the releases-* branches. Translations ============ How to generate latexila.pot? $ ./update_pot.sh How to update the *.po files with latexila.pot file? $ cd build/ ; cmake ../ $ make translations How to create a new *.po for a new language? A lot of sentences are the same as in Gedit, so you can avoid re-translating them: - download Gedit 2.30 sources: http://ftp.acc.umu.se/pub/GNOME/sources/gedit/2.30/ - take the Gedit *.po of your language and copy it in the po/ directory - update the *.po files with latexila.pot (see above) - at the end of the *.po file, you'll see a lot of lines commented (i.e. beginning with #). That's all the sentences from Gedit that are not present in LaTeXila. You can remove these lines. Anyway, if you want to create a completely new *.po, you can do: $ cd po/ ; msginit -l xx -o xx.po -i latexila.pot How to translate LaTeXila? When someone begins translating LaTeXila, an announcement is made on the Mailing List. So to avoid duplicated work, make sure nobody else is already translating LaTeXila in your language. If it's not the case, then you can make the announcement. You can find the link to the Mailing List there: http://projects.gnome.org/latexila/#contact The first thing to do is to take the *.po file from Gedit (see above). When it's done, you can use Poedit for example to complete the translation. Here are some strange items to translate: - translator-credits: Your name <your@email> (so your name will appear in the about dialog) Templates: - article-en.tex: article-xx.tex ("en" stands for English) - beamer-en.tex: beamer-xx.tex - book-en.tex: book-xx.tex - letter-en.tex: letter-xx.tex - report-en.tex: report-xx.tex Build Tools: - build_tools-en.xml: build_tools-xx.xml You will see a lot of items with an underscore. It's used for shortcuts (Alt + Letter underlined). If possible it is better to avoid having several times the same letter in the same menu. There is also the templates to translate in data/templates/ and the build tools in data/build_tools/. For the templates, add support for your language (in most cases add the babel package). Finally, there are two little sentences in data/latexila.desktop. Thanks!