:Author: Laborejo Software Suite
:Version: 2.0.2
:iconfont-remote!:
:!webfonts:


////
This documentation is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.
To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a
letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
A copy of the license has been provided in the file documentation/LICENSE.
////

////
https://powerman.name/doc/asciidoc
https://asciidoctor.org/docs/user-manual/
////

:sectnums:

:toc: left
:toc-title: Table of Contents
:toclevels: 3

= Laborejo

// Don't write in the empty line above line. It will be interpreted as author html tag
For program version 2.0.2

== Introduction


Laborejo (Esperanto: Workshop) is a MIDI sequencer based on classical music notation.
Its main purpose is to compose and produce "traditional" music, such as instrumental pieces,
soundtracks and other music normally played back by samplers.


Unlike other notation editors Laborejo is not meant primarily to print out sheets of notation but
to create music for your computer: You get all the tools you know from other midi sequencers for
maximum fine control to get exactly the music you want!


Working in Laborejo is very fast and efficient by using a combination of midi input and typing.

== Usage
* Nothing
* To
* See 
* Here


== Installation and Start

Laborejo is exclusive for Linux. The best way to install is to use your package manager. 
If it is not there, or only in an outdated version, please ask your Linux distribution to provide a recent version.

If available in the package repository, please continue reading directly at "Start laborejo from Agordejo / New Session Manager".
If not, you can build Laborejo yourself.

.Build and Install
* Please check the supplied README.md for dependencies.
* You can download a release or clone the git version
  ** Download the latest version from https://www.laborejo.org/downloads and extract it.  
  ** git clone https://git.laborejo.org/lss/laborejo.git
* Change into the new directory and use these commands:
* `./configure --prefix=/usr`
  ** The default prefix is /usr/local
* `make`
* `sudo make install`

.Start laborejo from Agordejo (New Session Manager, NSM)
* Run `agordejo`
* Press the `New` button, and enter a name for your piece of music.
* Use the launcher to add `laborejo` to the session.
* Add any compatible programs, e.g. synthesizers.

Please read README.md for other ways of starting laborejo, which are impractical for actual use but can
be helpful for testing and development.

== Help and Development
You can help Laborejo in several ways: Testing and reporting errors, translating, marketing, support, programming and more.

=== Testing and Reporting Errors
If you find a bug in the program (or it runs too slow) please contact us in a way that suits you best.
We are thankful for any help.

.How to contact us
* Report bugs and issues: https://www.laborejo.org/bugs
* Website: https://www.laborejo.org
* E-Mail: info@laborejo.org
* If you see the opportunity and know that a developer will read it also forums, social media etc..

=== Programming
If you want to do some programming and don't know where to start please get in contact with us directly.
The short version is: clone the git, change the code, create a git patch or point me to your public git.

=== Translations
Laborejo is very easy to translate with the help of the Qt-Toolchain, without any need for programming.
The easiest way is to contact the developers and they will setup the new language.

However, here are the complete instructions for doing a translation completely on your own and integrating it into the program.
The program is split in two parts. A shared "template" between the Laborejo Software Suite and the actual program.

The process is the same for both parts, but needs to be done in different directories:
`template/qtgui` and plain `/qtgui`, relative to the root directory, where the laborejo executable is.

Everytime you see "template/qtgui" below you can substitute that with just "qtgui" to translate the other part of Laborejo.

You can add a new language like this: 

* Open a terminal and navigate to template/qtgui/resources/translations
* Edit the file `config.pro` with a text editor
  ** Append the name of your language in the last line, in the form `XY.ts`, where XY is the language code.
  ** Make sure to leave a space between the individual languages entries.
* Run `sh update.sh` in the same directory
  ** The program has now generated a new `.ts` file in the same directory.
* Start Qt Linguist with `linguist-qt5` (may be named differently) and open your newly generated file
* Select your "Target Language" and use the program to create a translation
* Send us the `.ts` file, such as by e-mail to info@laborejo.org

You can also incorporate the translation into Laborejo for testing purposes. This requires rudimentary Python knowledge.

* Run the "Release" option in QtLinguists "File" menu. It creates a `.qm` file in the same directory as your `.ts` file.
* Edit `template/qtgui/resources/resources.qrc` and duplicate the line `<file>translations/de.qm</file>` but change it to your new .qm file.
* run `sh buildresources.sh`
* Edit `engine/config.py`: add your language to the line that begins with "supportedLanguages" like this: `{"German": "de.qm", "Esperanto: "eo.qm"}`
  ** To find out your language string (German, Esperanto etc.) open the `python3` interpreter in a terminal and run the following command:
  ** `from PyQt5 import QtCore;QtCore.QLocale().languageToString(QtCore.QLocale().language())`

To test the new translation you can either run the program normally, if your system is set to that language. Alternatively start laborejo via the terminal:

* `LANGUAGE=de_DE.UTF-8 ./laborejo -V --save /dev/null`
