# Contributing If you are a new contributor wanting to make a larger contribution, please first discuss the change you wish to make via an issue, reddit or discord before making a pull request. ## Python contributions Python code is formatted using [black](https://github.com/psf/black) with the settings `-l 120`. This is not enforced, and contributions with incorrect formatting will be accepted, but formatting this way is appreciated. ## Translations ### Contributing to an existing translation * Go [here](https://github.com/sanderland/katrain/blob/master/katrain/i18n/locales/) and locate the `.po` file for your language. * Alternatively, find the same file in the branch for the next version. * Correct the relevant `msgstr` entries. ### Adding a translation Adding a translation requires making a new `.po` file with entries for that languages. * Copy the [English .po file](https://github.com/sanderland/katrain/blob/master/katrain/i18n/locales/en/LC_MESSAGES/katrain.po) * Change all the `msgstr` entries to your target language. * Note that anything between `{}` should be left as-is. * The information at the top of the file should also not be translated. You can send me the resulting `.po` file, and I will integrate it into the program. # Contributors ## Primary author and project maintainer: [Sander Land](https://github.com/sanderland/) ## Contributors Many thanks to these additional authors: * Matthew Allred ("Kameone") for design of the v1.1 UI, macOS installation instructions, and working on promotion and YouTube videos. * "bale-go" for development and continued work on the 'calibrated rank' AI and rank estimation algorithm. * "Dontbtme" for detailed feedback and early testing of v1.0+. * "nowoowoo" for a fix to the parser for SGF files with extra line breaks. * "nimets123" for the timer sound effects and board/stone graphics. * Jordan Seaward for the stone sound effects. * "fohristiwhirl" for the Gibo and NGF formats parsing code. * "kaorahi" for bug fixes, SGF parser improvements, and tsumego frame code. * "ajkenny84" for the red-green colourblind theme. * Lukasz Wierzbowski for the ability to paste urls for sgfs and helping fix alt-gr issues. * Carton He for contributions to sgf parsing and handling. * "blamarche" for adding the board coordinates toggle. * "pdeblanc" for adding the ancient chinese scoring option, fixing a bug in query termination, and high precision score display. * "LiamHz" for adding the 'back to main branch' keyboard shortcut. * "xiaoyifang" for adding the reset analysis option, feature to save options on the loading screen, and scrolling through variations. * "electricRGB" for help with adding configurable keyboard shortcuts. * "milescrawford" for work on restyling the territory estimate. * "Funkenschlag1" for capturing stones sound and implementation, and board rotation. * "waltheri" for one of the wooden board textures. * Jacob Minsky ("jacobm-tech") for various contributions including analysis move range and improvements to territory display. ## Translators Many thanks to the following contributors for translations. * French: "Dontbtme" with contributions from "wonderingabout" * Korean: "isty2e" * German: "nimets123", "trohde", "Harleqin" and "Sovereign" * Spanish: Sergio Villegas ("serpiente") with contributions from the Spanish OGS community * Russian: Dmitry Ivankov and Alexander Kiselev * Simplified Chinese: Qing Mu with contributions from "Medwin" and Viktor Lin * Japanese: "kaorahi" * Traditional Chinese: "Tony-Liou" with contributions from Ching-yu Lin ## Additional thanks to * David Wu ("lightvector") for creating KataGo and providing assistance with making the most of KataGo's amazing capabilities. * "세븐틴" for including KaTrain in the Baduk Megapack and making explanatory YouTube videos in Korean.