diff --git a/README.md b/README.md index 26bea75a..774557cb 100644 --- a/README.md +++ b/README.md @@ -1,31 +1,10 @@ # eSpeak NG Text-to-Speech - [Features](#features) -- [Windows](#windows) - - [Binaries](#binaries) - - [Building](#building) -- [Linux, Mac, BSD](#linux-mac-bsd) - - [Dependencies](#dependencies) - - [Building](#building-1) - - [Cross Compilation](#cross-compilation) - - [Sanitizer Flag Configuration](#sanitizer-flag-configuration) - - [LLVM Fuzzer Support](#llvm-fuzzer-support) - - [eSpeak NG Feature Configuration](#espeak-ng-feature-configuration) - - [Extended Dictionary Configuration](#extended-dictionary-configuration) - - [Testing](#testing) - - [Installing](#installing) -- [Android](#android) - - [Dependencies](#dependencies-1) - - [Building with Gradle](#building-with-gradle) - - [Signing the APK](#signing-the-apk) - - [Opening project in Android Studio](#opening-project-in-android-studio) - - [Installing](#installing-1) - [Documentation](#documentation) - [eSpeak Compatibility](#espeak-compatibility) - [History](#history) -- [Feedback](#feedback) - [License Information](#license-information) - ---------- The eSpeak NG is a compact open source software text-to-speech synthesizer for @@ -82,9 +61,9 @@ The following platforms are supported: ## Documentation -1. [User guide](src/espeak-ng.1.ronn) provides reference and examples for command-line options. -2. [Language guide](docs/add_language.md) provides step-by-step instructions, how to add/improve support for language. -3. [Index](docs/index.md) provides entries to more detailed information for contributors and developers. +1. [User guide](src/espeak-ng.1.ronn) provides reference and examples for command-line options. +2. Look at [contribution guide](docs/contributing.md) to start your contribution. +3. [Index](docs/index.md) provides full list of more detailed information for contributors and developers. ## eSpeak Compatibility @@ -124,7 +103,6 @@ departure from the eSpeak project, with the intention of cleaning up the existing codebase, adding new features, and adding to and improving the supported languages. - The *historical* branch contains the available older releases of the original eSpeak that are not contained in the subversion repository. @@ -144,16 +122,6 @@ do not appear in the source repository until later releases, so have been excluded from the historical commits to align them better with the 1.24.02 source commit. -## Feedback - -Test latest development version at [eSpeakNG online](https://odo.lv/Espeak). - -Report bugs to the [espeak-ng issues](https://github.com/espeak-ng/espeak-ng/issues) -page on GitHub. - -Look at and subscribe to [eSpeakNG mailing list](https://groups.io/g/espeak-ng) -to view and discuss other related topics. - ## License Information eSpeak NG Text-to-Speech is released under the [GPL version 3](COPYING) or diff --git a/docs/contributing.md b/docs/contributing.md new file mode 100644 index 00000000..627aabd8 --- /dev/null +++ b/docs/contributing.md @@ -0,0 +1,54 @@ +# Contribution Guide + +- [Simple steps for your feedback](#simple-steps-for-your-feedback) +- [Steps for your contribution](#steps-for-your-contribution) + +## Simple steps for your feedback + +1. As eSpeak NG is open source software, you can get it working from many different sources, some of which may provide quite +old version. Before registering new issue, test that issue can be reproduced with latest development version at +[eSpeak NG online](https://odo.lv/Espeak) site. + +2. Review known [eSpeak NG issues](https://github.com/espeak-ng/espeak-ng/issues), particularly about +[languages](https://github.com/espeak-ng/espeak-ng/labels/languages%2Fpronunciation) and add your comments +on existing issues. If necessary add new issue as described [here](https://help.github.com/en/articles/creating-an-issue). + +3. Look at and subscribe to [eSpeakNG mailing list](https://groups.io/g/espeak-ng) +to view and discuss other related topics. + +## Steps for your contribution +1. Get familiar with [additive speech synthesis](https://en.wikipedia.org/wiki/Additive_synthesis). + +2. Create fork of [espeak-ng](https://github.com/espeak-ng/espeak-ng) repository as it is described [here](https://help.github.com/en/articles/fork-a-repo). + +3. [Clone](https://help.github.com/en/articles/cloning-a-repository) and set up your development environment [on your computer](building.md) , or clone it [online](https://odo.lv/EspeakGuide). + +4. Get familiar with [text to phoneme translation](dictionary.md) and how to [add or improve language](add_language.md). + +5. Get familiar with [voice files](voices.md) and [phoneme tables](phontab.md) configuration files. + +6. Make your improvements (i.e. additions or modifications) and check your project with `make check` command. Fix issues if necessary. + +7. If you contribute to an existing language, find language maintainer in language configuration file located in `espeak-ng-data/lang` folder[1](#1) and ask him to review your changes. If you can't find language maintainer, you can review list of all contributors[2](#2) and contact them. You can also volunteer to become language maintainer just by updating language configuration file. + +8. [Push your changes to GitHub](https://help.github.com/en/articles/pushing-commits-to-a-remote-repository) and create [pull request](https://help.github.com/en/articles/creating-a-pull-request). You can also send changed files by email to [eSpeakNG mailing list](https://groups.io/g/espeak-ng) (but then inlusion of them may take more time). + +9. Wait for feedback of current espeak-ng maintainers[3](#3). + +10. If you feel ready to take responsibility, ask existing maintainers to become promoted as a maintainer of the project. + +---- + +1. You can get list of all language maintainers with following commands in your `espeak-ng` folder: + +``` +cd espeak-ng-data;grep -ri -A2 -B2 maintainer * +``` + +2. You can get list of all contributors with following commands in your `espeak-ng` folder: + +``` +git log --pretty="%an %ae%n%cn %ce" | sort|uniq -c|sort -nr +``` +3. Currently eSpeak NG is maintained only by volunteers in their free time, therefore expected reaction time is one, two weeks. + diff --git a/docs/index.md b/docs/index.md index ec1a9aed..6c4533fa 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,12 +1,14 @@ -# eSpeak NG: Speech Synthesizer +# eSpeak NG online documentation - User Guide - [espeak-ng Command Line](../src/espeak-ng.1.ronn) - [speak-ng Command Line](../src/speak-ng.1.ronn) - [Supported Languages](languages.md) - [SSML and HTML Support](markup.md) +- [Contributor Guide](contributing.md) + - [Building eSpeak NG](building.md) - Creating and Editing Languages and Voices - - [Adding or Improving a Language](add_language.md) + - [Adding or Improving a Language](add_language.md) - [Text to Phoneme Translation](dictionary.md) - [Numbers](numbers.md) - [Voice Files](voices.md) @@ -15,10 +17,10 @@ - [Intonation](intonation.md) - Phonemes - [Phoneme Features and the International Phonetic Alphabet](phonemes.md) + - [Phoneme Model](phoneme_model.md) - [Kirshenbaum (ASCII-IPA) Transcription Scheme](phonemes/kirshenbaum.md) - [X-SAMPA Transcription Scheme](phonemes/xsampa.md) - [Conlang X-SAMPA Transcription Scheme](phonemes/cxs.md) - - [Phoneme Model](phoneme_model.md) - Pronunciation Guides - [English](languages/gmw/en.md) - [License](../COPYING)