Gherkin is an open source, community-driven project. If you'd like to contribute, feel free to do this, but remember to follow this few simple rules:
master
branch as base for your changes (all new development happens in master
),tests/
folder for some examples). This is important so we don't break it in a future version unintentionally,CHANGES.md
,master
branch as target (done by default), otherwise it will be closed.Make sure that you don't break anything with your changes by running:
$> phpunit
Gherkin supports →40 different languages and you could add more! You might notice
i18n.php
file in the root of the library. This file is downloaded and autogenerated
from original cucumber/gherkin translations.
So, in order to fix/update/add some translation, you should send Pull Request to the
cucumber/gherkin
repository. Behat\Gherkin
will redownload/regenerate translations
from there before each release.
It might sounds difficult, but this way of dictionary sharing gives you ability to
migrate your *.feature
files from language to language and library to library without
the need to rewrite/modify them - same dictionary (Gherkin) used everywhere.