FreeDict HOWTO – Project Structure, VCS, Bugs And More - freedict/fd-dictionaries GitHub Wiki

This page explains the project structure, where to find our source, how to contribute and where/how to report bugs.

Version Control

Brief History

We moved from CVS to SVN in January 2010, ten years after the project was born. In 2016, we moved to Git.

If you find a SVN repository with FreeDict data, please treat it as outdated.

Obtaining The Source With Git

The FreeDict Git repository can be viewed at GitHub and cloned using

git clone https://github.com/freedict/fd-dictionaries.git

Explaining git is beyond the scope of this document, but the internet is full of good and less good tutorials.

Project Structure

Special modules are "shared", "tools" and the unmaintained "freedict-editor". The "shared" directory contains the DTD and Relaxng schemes and "tools" all the scripts and stylesheets for the various transformations, as well as the make files.

For naming the dictionary modules and their TEI files, we use the format la1-la2.tei, where la1 and la2 are ISO 639-3 3-letter language codes from Ethnologue and the Linguist List.

Importing new dictionary modules

We prefer contributers to ask for write access to our repository, instead of creating pull requests, but if you prefer pull requests, you are still free to do so.

In any case, if you want to add a dictionary, please create a directory with the naming convention explained above and create the typical skeleton for a dictionary. You can find an example under shared/lg1-lg2.

If you do not have Git write access, ask a developer to import your TEI file (or eventual code to create the TEI file from a different format) into the repository or submit a pull request.

Note: If for some reason you are not able to generate the .dict dictionary, do not let that prevent you from uploading the TEI source. The dict is secondary and may be generated by someone else, if need be.

Reporting Bugs

Bugs, also known as "issues" on GitHub, are really anything you would like to see altered in the dictionary. This can be a mispelled translation, a wrong dictionary entry, missing entries or simply a freely available dictionary, which we could easily include in FreeDict.

Issues should be reported at our FreeDict issues page, and it is even better if you announce your issue on the FreeDict mailing list; that makes sure that your voice is heard.

Please do not issues like "please add a Language1-Language2 dictionary, I really need it", unless you have a free source from which we or you could create it. We appreciate your help, every report takes us one step closer :).

⚠️ **GitHub.com Fallback** ⚠️