Browse Source

Manual in German and English, manpage, readme

master
Nils 4 years ago
parent
commit
566b0ee6d8
  1. 2
      README.md
  2. 2
      documentation/argodejo.1
  3. 373
      documentation/english.adoc
  4. 399
      documentation/english.part.adoc
  5. 407
      documentation/german.adoc
  6. 380
      documentation/german.part.adoc
  7. 615
      documentation/out/english.html
  8. 651
      documentation/out/german.html

2
README.md

@ -1,5 +1,5 @@
[//]: # (Generated 2020-05-03T21:56:12.393129. Changes belong into template/documentation/readme.template)
[//]: # (Generated 2020-05-16T15:36:57.164907. Changes belong into template/documentation/readme.template)
#Argodejo
Program version 0.1

2
documentation/argodejo.1

@ -1,4 +1,4 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.13.
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.15.
.TH ARGODEJO "1" "May 2020" "Argodejo 0.1" "User Commands"
.SH NAME
Argodejo - Music and audio production session manager based on NSM.

373
documentation/english.adoc

@ -53,15 +53,362 @@ That said, for single-computer sessions with just one daemon and one GUI at the
should provide a good user experience.
<manual>
== Preamble
Session Management leads to simplification of workflows, overview and control over
programs and data and a good portion of convenience :)
No program exists on its own, because no program can do everything that is necessary for today's
music production.
This is obvious in a JACK environment, which is fundamentally modular: Different
programs fulfill different functions and "talk" to each other by sending data to each other.
A sequencer sends MIDI to a sampler or synthesizer, which is connected to a plug-in host for effects etc.
Even the most monolithic all-in-one DAWs have to, or want to, eventually connect to the outside
world. For example, to connect to a screen recorder or streaming program, include a word processor
for recording order or lyrics, or to use a function that is simply not available in the DAW.
Much of the work is already done by the JACK subsystem. All programs can share their music in
real time, have synchronized timelines and play in the same tempo.
What remains is the tedious work of always starting all programs, loading project files, connecting
audio channels etc. Session management in general (e.g. specifically written starter script files)
and Argodejo in particular do this work for you, or at the very least, greatly simplify it.
In contrast to the self-written script mentioned above, you don't have to decide in advance on a
setup, but everything is saved automatically as long as you manage everything through Argodejo.
=== Example
* Start Argodejo (Start menu, terminal etc.)
* You are now in the "Quick View" to start a session
* Press the big button "Start New Session"
* Now you get a choice of programs:
* A single click with the mouse starts a program
* Another click hides (or subsequently shows) its graphical interface
* If the program crashes you get a warning and can restart it.
* Audio and midi ports can now be connected together in a patchbay. The connections are stored in Argodejo.
* To get more programs and advanced features you can switch to the tab "Full View
* The name of the session so far is simply a date. By clicking on it you can enter a real name. Like "My song"
* If you are finished you can return to the session selection by pressing the button "Save and Close"
* Now Argodejo could be closed itself.
* All stored data is in a single directory on the hard disk (`~/NSM Sessions/My Song`)
* The session can be resumed: After clicking on the name, all programs start automatically and connect their JACK ports to among themselves.
"Quick View" is a good start. However, usually one would like to get into the full view, even if it
is only to start a program twice or to save manually.
== Quick View
The quick view is an environment reduced to the minimum. You, as a user, should have to make as few
decisions as possible and start an old session or create a new one as quickly as possible (with the
at least clicks).
For stability reasons, only programs are shown that are known to
work correctly with Argodejos session management.
The Quick View is only a view. There is no technical difference to the full view and you can switch
back and forth at any time.
=== Selecting a Session
There are only two options here: Click on "Start New Session" to do so, or
select one of the existing sessions to resume it (if available).
=== In a Session
The name can be changed. We recommend a date in the form YYYY-MM-DD followed by a informative name.
Please note that the name change will only take effect (e.g. renaming the session directory on
disk) when you close the session.
Next, a larger text field is available for notes. Write what you want. TODO lists, lyrics, credits
and sources of external samples etc.
Programs are symbolized by icons. A mouse click starts the program (which can take a while, we have
no influence on that). The status of the program is indicated by a symbol: The "Play" symbol for
the running program, the eye means "program window hidden", the "Power On/Off" symbol means that
the program has been terminated (or crashed).
If the program supports it, a running program window can be hidden. Synthesizers, once set up, do
not have to be permanently visible. Just click on the program icon again. Either nothing happens
(the program does not support it) or the window will hide. Another click on a hidden window shows
it again. Every program itself is responsible for whether it saves its window state. Also, some
programs already start hidden.
There is *no* way to end or remove a program in this view. To do this, switch to the full view or
use the close function of the program itself.
There is also *no* possibility to start a program multiple times, e.g. one synthesizer per
track. If you want to start multiple program instances through the full view times you can still
use the quick view to manage the general session, but it is not defined which program instance a
click on the icon (e.g. to hide) affects. Multiple instances are a clear indicator that you are
ready for the full view.
As you'll eventually discover, not *all* available programs are in the list, and there there is
also no possibility to start programs that would work well in a session (e.g. a tuner), but are not
explicitly written for it, e.g. do not report their status. It is better to manage these programs
in full view.
If, unfortunately, a program has crashed, you can only restart it and hope its automatic saving
worked. Good luck.
== Full View
Some concepts have already been explained in the chapter "Quick View". It is expected that you have
read this.
=== Selecting a Session
Sessions are displayed as a table, which you sort by clicking on a column header. Here is shown how
the session is called and when it was saved the last time, probably the two most important pieces
of information. Also shown is how many programs/clients are in the session and whether it contains
symbolic links. The latter is probably set to "Yes" if use a sampler, or similar, that contains
large audio files. These are initially only linked into the session, and not copied, to save disk
space. The displayed disk space usage is not the actual one, but includes the sizes of
symlink-targets. Only when you archive the session or replace the links with real files the number
becomes correct.
Finally, the directory in which the files are actually stored is also given.
Sessions represent the directory tree. A session is always a "leaf" and cannot include subsessions.
When creating or renaming sessions, you can also arrange them in the tree by using the usual slash
notation: `song123` -> `New album/song 123` or `Test/asdf` -> `Romantic pop ballads/My heart will
keep beating`. How to organize your sessions and how many subdirectories you create is up to you.
It is, however, not allowed to start the name with `/` or use the special characters `..`. The
tree view can be deactivated by a checkbox on the left side, e.g. to be able to sort them. This is
just a view, your data remains untouched.
Each session has a context menu (e.g. right mouse button) with further options: You can choose to
rename a session, delete it (including all associated files on the hard disk!) and more. These
functions are equivalent to your file manager. If you like, you can also use your file manager to
rename, move, or delete the session directories themselves (unless they are is currently open). You
don't need to restart Argodejo to do this, it will respond to the changes while running.
There is also the possibility to remove a so-called "lock" file. This is a file which is created
when the session starts and deleted when it ends. This tells Argodejo which session is currently
running. If a lock file exists, the session cannot be opened! This should not happen during normal
operation. But if a power failure or similar occurs in the middle of a session, the lock file may
remain, although obviously no session is opened. In this case, unlock the session manually by
deleting the lock file.
Click on "New session" to create one. In contrast to the quick view, you must enter the name
directly . As mentioned above, you can use the directory tree. In addition, there are several
(almost obligatory) programs suggested to start with. Normally one should accept all suggestions.
There is always the option to remove them later.
A double click on an existing session (or the "Load Selected" button) does just that.
=== In a Session
The full view is divided into three areas: Program starter, programs in the current session
and the session notes. There is also a dynamic menu.
On the left side you see the program starter. A double-click starts a program instance in this
session. You can also start a program more than once. For available programs please refer to the
chapter "Program Database".
==== Running Programs
Started programs are located on the right side. A double-click switches the visibility
to hide its window if the program supports it. If not, nothing happens.
The following information is available per program:
* The name (possibly with icon)
* A "label" that programs can use freely (e.g. Fluajho shows the loaded .sf2 here)
* The program status
* Stopped , not running
* Ready, running
* Launch, If the status halts here but the programs works, it is one that does not specifically support session mode. Argodejo cannot know if it is already running or not. Everything is fine! :)
* Other states are only transitions and usually only visible for a very short time, e.g. Open / Loading
* Visibility (A cross for visible, blank for invisible)
* Changes - Are there currently unsaved changes?
* ID - A unique identifier that can be used to distinguish between multiple instances of the same program
All other functions are accessible via the menu or context menu. One click on a program selects it,
and the client menu in the menu bar will now apply to the client. Alternatively, you can
right-click on an entry for a context menu, which is identical to the menu.
In addition to self-explanatory functions there are also:
* Rename gives the program a self-chosen name, mostly to make its purpose clear and to distinguish it better from others. This feature is only available when 'nsm-data' is running in the session.
* Save only tells this program to save
* Remove takes the program out of the session. However, no files are deleted in the process. At the moment you have to "clean up" in your file manager by hand.
If the client "nsm-data" is in the session (this is the default setting) the lower area provides a
large text field for notes. It is the same as in the quick view. Write what you want: TODO lists,
lyrics, credits and sources from external Samples etc.
==== The Session Menu
In contrast to the quick view, full mode offers menus, which can also be accessed via the usual keyboard shortcuts (Ctrl+S for saving etc.).
* Save instructs all programs to save, the session continues to run
* Save and Close ends the session, after all programs saved
* Abort ends the session without saving the programs
* Save As saves the session under a different name and closes the current session without saving. From now on you work under the new name.
* Add Client offers the option to add any program, whether it is in the program database or not.
* Any installed programs are suggested. Argodejo doesn't check them for usefulness for a music session, or even for runnability. You will find `ls` here as well as `argodejo` itself.
== Program-Database
Argodejos launcher is based on a program database, which is partly self-generated, partly
maintained by hand. As in a start menu Argodejo will offer you only programs that are actually
installed on your system.
The database is created at the first start. Depending on your system, this can take some moments to
a few minutes.
If you are reinstalling or uninstalling audio programs, you will need to update the database via
the command in the control menu. Program installations and system changes are even possible while
Argodejo is running (even in a session). After a DB update you can immediately access all new
programs.
If you do not see an installed program in our launcher, but you are sure that it supports session
management please report it to info@laborejo.org or under https://laborejo.org/bugs .
In addition, you can add (in full view) programs that are not in the database.
=== For advanced users
The strict rule is that only programs in the $PATH are included in the database. Absolutel paths
are not allowed, even if you enter the program name yourself through the menu. However sometimes
you just want to try out software, or you are a developer yourself and want to test without
system-wide installation.
In the control menu / settings is a tab "Program-PATH", where you can define and add your own
search paths. One absolute directory path per line, no wildcards, trailing slash don't matter.
For example: `/home/myuser/sources/newsequencer/bin/`
These search paths are not stored in the session, but locally in your `~/.config` directory.
== Tray
Argodejo has a tray icon, if your window manager supports it. A click on the trayicon shows or
hides Argodejo.
If you close Argodejo using the normal window manager function, such as a click on the [X], the
program and the session is not terminated, but minimized to the tray.
If the Argodejo window is hidden and closed via the tray menu (see below), Argodejo will be
minimized to the next start also started as tray icon. So it is possible to continue working
without having to deal with the program window.
A right click on the icon gives you access to common functions:
You can directly start the most recently used sessions.
If a session is already running you can save, cancel etc.
Argodejo can also be completely exited here.
== Network Sessions
The functionality to distribute sessions over the local network is planned for a later program
version.
== Program parameters
As an advanced user, you can start Argodejo in the terminal and add some parameters.. For a
complete list please use the --help parameter.
For example:
* `--session-root /home/user/production2030` sets the root directory. Only sessions in this directory are displayed, everything is stored here.
* `--session newAlbum/mySong` starts the given session.
* `--url osc.udp://myhost.localdomain:14294/` connects to this server, if available, or starts the internal session server at this address. This is a very technical option and probably not needed.
== Miscellaneous / Explanations / FAQ
*Session Save and Exit responds slowly*: Argodejo is not a standalone program like an word
processor. The participating programs in the session are not plugins either. When you end the
session a signal is sent to all participating client to save. This may take a few moments where
you are able to see "live" how individual programs terminate and disappear from the session.
Everything is fine.
*I have added a program but it does not save with the session*: Does the program support session
management? If not, Argodejo cannot do much. But you can ask the program developers to contact us
(info@laborejo.org) and we can work together on support.
*The programs hang on exit*: Sorry about that. Actually, the programs themselves are to blame, but
we are also interested in improving the situation by offering at least an emergency solution in the
future.
*Argodejo won't start! I start the program but I can't see anything*: Most likely Argodejo is
running, but invisible, because you exited it from the tray last time. Is it in the tray? A
message should have popped up, maybe you missed it. If there is no tray in your window manager, the
program should always be visible. With all these special window managers in Linux it may be that
the tray detection did not work properly. Contingency plan is to delete
`~/.config/LaborejoSoftwareSuite/argodejo`. This will NOT remove any sessions, but only local
settings such as the visibility of the program window. At next start Argodejo will behave like the
very first start.
*JACK crashed. A lot of programs hang. What can I do to prevent data loss?* Probably already many
programs in the session are not running properly and are not reacting anymore. The best thing to do
is to use the 'Abort Session' function and restart everything. If the data has actually been
unsaved for a long time, you can also dare to save/exit. It may be necessary to re-draw some jack,
or all, jack connections by hand at the next start. If you want to be on the safe side, you can
manually make a copy of the session directory in your file manager before ending the session (with
inevitable crashes).
*A program update broke my session because it can no longer load its files.* Unfortunately, this is
a problem that even Argodejo can't solve. It also happens with LV2 plugins and with all other
software, such as office programs. If you fear that a program becomes incompatible in the future,
write down its version number in the session notes, so that you can at least, in an emergency,
reinstall the old program version (even if this is very is cumbersome).
*What's better? Monolithic DAW or session management?* Why not both? There is no conflict. Session
management is worthwhile with two or more participating programs, which one needs almost always.
You should not feel compelled to suddenly make everything modular with individual programs, only
because you use a session manager. Argodejo is designed to make your music production easier. If it
is faster and more comfortable to manage all plugins and effects e.g. in a single "Carla" instance
then you should do exactly that. If you basically want to do everything in Ardour, do that, but
start Ardour anyway in session management, because no program can do everything alone and the time
will come where you add a second one.
Session management is another level of hierarchy. Sequencers or DAWs are not plug-ins themselves.
Patroneo does not belong "in" Ardour and Ardour does not belong "in" Laborejo. Already in this
example each of the programs fulfils a different role because the others follow a different design
philosophy and cannot ever offer the same workflow. And more:
Some programs can't host plugins, some can't export audio files. They are not bad programs, but
programs that concentrate on one task. Furthermore, there is a lot of software that does not
directly do music production, but still is connected in the grander scheme: Open Broadcast Studio
(OBS), music player, word processors and graphic programs etc.
*Argodejo contains functionality which is not within its scope*: Music production is very complex
and complexity is inevitable. It's like a waterbed: if you press down on one side, something
bounces up in another place. When you create a "clean and lean" program, which therefore implements
only a part of the complete workflow, then the missing part pops up somewhere else. A minimalistic
session manager provokes plug-ins (not LV2), helper-scripts, workarounds and hacks.
E.g. not to include file management provokes user errors like deleting the wrong files. If the SM
knows what to do and it can do it, then let it do it. Or crashes: Technically, crashing programs
are not the "problem" of the session managers, but they are part of the software reality. Crashes
happen every day and need to be handled. Can Argodejo simplify the work and help to restore good
conditions again? Then that should be done. Session management is also an opportunity to simplify
even complex technical scenarios, e.g. distributing sessions over the network.
== Installation and Start
Argodejo 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 argodejo from Non Session Manager".
If not, you can build Argodejo yourself.
If not available in the package repository you can build Argodejo yourself.
.Build and Install
* Please check the supplied README.md for dependencies.
@ -74,18 +421,13 @@ If not, you can build Argodejo yourself.
* `make`
* `sudo make install`
.Start argodejo from Non Session Manager (NSM)
* Run `non-session-manager`
* Press the `New` button, and enter a name for your piece of music.
* Press the `Add Client to Session` button, enter `argodejo` here, in lower case.
* Add Client again, this time `jackpatch`.
* Add any compatible programs, e.g. synthesizers.
** See the list of NSM compatible programs: http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm
** And the NSM manual: http://non.tuxfamily.org/nsm/
Now the program is available to run via your menu/launcher or `argodejo` in a terminal.
Please read README.md for other ways of starting argodejo, which are impractical for actual use but can
be helpful for testing and development.
== Help and Development
You can help Argodejo in several ways: Testing and reporting errors, translating, marketing, support, programming and more.
@ -108,16 +450,11 @@ Argodejo is very easy to translate with the help of the Qt-Toolchain, without an
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 argodejo executable is.
Everytime you see "template/qtgui" below you can substitute that with just "qtgui" to translate the other part of Argodejo.
You can add a new language like this:
* Open a terminal and navigate to template/qtgui/resources/translations
* Open a terminal and navigate to 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.
@ -130,7 +467,7 @@ You can add a new language like this:
You can also incorporate the translation into Argodejo 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.
* Edit `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:

399
documentation/english.part.adoc

@ -1,209 +1,348 @@
=== Quick Start
To get to know the most important functions and workflows, this video has been created.
== Preamble
video::https://www.laborejo.org/documentation/patroneo/patroneo-quickstart-english.mp4[width=500]
Session Management leads to simplification of workflows, overview and control over
programs and data and a good portion of convenience :)
Or as Youtube Mirror
No program exists on its own, because no program can do everything that is necessary for today's
music production.
video::ygpwn0gzO8g[youtube, width=500]
This is obvious in a JACK environment, which is fundamentally modular: Different
programs fulfill different functions and "talk" to each other by sending data to each other.
A sequencer sends MIDI to a sampler or synthesizer, which is connected to a plug-in host for effects etc.
=== Basic Principles
Patroneo organizes its music in tracks that contain measures. All measures of a track play the same "pattern" that creates music through a sequence of "steps".
Even the most monolithic all-in-one DAWs have to, or want to, eventually connect to the outside
world. For example, to connect to a screen recorder or streaming program, include a word processor
for recording order or lyrics, or to use a function that is simply not available in the DAW.
The track is connected to an instrument through JACK, so Patroneo itself does not produce any sounds.
Much of the work is already done by the JACK subsystem. All programs can share their music in
real time, have synchronized timelines and play in the same tempo.
If you press Play, the track plays back from left to right. Whenever a measure is highlighted in the Form Editor, the pattern is played.
What remains is the tedious work of always starting all programs, loading project files, connecting
audio channels etc. Session management in general (e.g. specifically written starter script files)
and Argodejo in particular do this work for you, or at the very least, greatly simplify it.
If you want to hear different patterns from the same instrument, you create several tracks for the same JACK instrument.
In contrast to the self-written script mentioned above, you don't have to decide in advance on a
setup, but everything is saved automatically as long as you manage everything through Argodejo.
The selection of the tones per pattern is freely selectable. You can use normal musical scales or set any tones in any order. If you change the scale later, the pattern sounds different without having to switch tones on and off again.
=== Example
Saving and loading your project is done by the Non Session Manager. There you will find a "Save" button.
* Start Argodejo (Start menu, terminal etc.)
* You are now in the "Quick View" to start a session
* Press the big button "Start New Session"
* Now you get a choice of programs:
* A single click with the mouse starts a program
* Another click hides (or subsequently shows) its graphical interface
* If the program crashes you get a warning and can restart it.
* Audio and midi ports can now be connected together in a patchbay. The connections are stored in Argodejo.
* To get more programs and advanced features you can switch to the tab "Full View
* The name of the session so far is simply a date. By clicking on it you can enter a real name. Like "My song"
* If you are finished you can return to the session selection by pressing the button "Save and Close"
* Now Argodejo could be closed itself.
* All stored data is in a single directory on the hard disk (`~/NSM Sessions/My Song`)
* The session can be resumed: After clicking on the name, all programs start automatically and connect their JACK ports to among themselves.
=== Keyboard Controls
In principle, Patroneo can be operated with the mouse. The keyboard is needed for only a few functions, such as changing track names or setting half-tone transposition. However, the keyboard makes some workflows faster and more convenient.
"Quick View" is a good start. However, usually one would like to get into the full view, even if it
is only to start a program twice or to save manually.
.Shortcuts
* Space: Start and pause playback
* L: Play the current measure as a loop
* Home: Set playback to the beginning of the track.
== Quick View
== Description of the graphical user interface and its functions
Use your browser's search function to locate the individual letters like [B] and their explanation.
The quick view is an environment reduced to the minimum. You, as a user, should have to make as few
decisions as possible and start an old session or create a new one as quickly as possible (with the
at least clicks).
image::overview-english.png[Screenshot with Captions, link="overview-english.png"]
For stability reasons, only programs are shown that are known to
work correctly with Argodejos session management.
Patroneo consists of three parts: The Toolbar, the Form Editor, and the Pattern Editor. Between form- and pattern editor there is a *[L] Handle* which you can grab with the left mouse button and move it up or down to give more space to one or the other area.
The Quick View is only a view. There is no technical difference to the full view and you can switch
back and forth at any time.
=== Menu and Toolbar
=== Selecting a Session
The *[A] Toolbar* combines various commands with properties of the entire piece.
There are only two options here: Click on "Start New Session" to do so, or
select one of the existing sessions to resume it (if available).
*[D] Clone Selected Track* adds a new track based on the currently selected one. This is an important and often used command that is mainly used to enable variants. The cloned track is empty, but inherits the scale of the original, its average velocity or volume, color and name. If the name ends in a single letter like "A", "g" or a number, it is automatically incremented, as you can see in the screenshot. The new track automatically connects to the same JACK instrument.
=== In a Session
*[E] Add Track* adds an empty track. It is given a random name and is not connected in JACK. Scale, note-names etc. will be taken from the currently selected track.
The name can be changed. We recommend a date in the form YYYY-MM-DD followed by a informative name.
Please note that the name change will only take effect (e.g. renaming the session directory on
disk) when you close the session.
*[F] BPM / Tempo*: The tempo can be completely deactivated by unchecking the box. In this case, the "JACK Transport" system takes over, as indicated by the "JACK" logo in the deactivated input field. This allows programs running in parallel to create complex tempo sequences, which is not possible in Patroneo alone. +
If the checkbox is activated, the specified tempo is considered to be beats per minute. A "beat" is the selected note value of the list [H]. More on that later.
Next, a larger text field is available for notes. Write what you want. TODO lists, lyrics, credits
and sources of external samples etc.
*[G] Measures per Track* controls the total length of the piece, whereby the absolute number of seconds can change depending on how the tempo is selected and how long a measure should be. If the number of measures is reduced, no measures are actually deleted, but just ignored. If you later set the number of measures higher again, you will get your old configuration back. Patroneo nevers stops playback on its own. Especially in a JACK-transport environment it will continue playing even after its own end.
Programs are symbolized by icons. A mouse click starts the program (which can take a while, we have
no influence on that). The status of the program is indicated by a symbol: The "Play" symbol for
the running program, the eye means "program window hidden", the "Power On/Off" symbol means that
the program has been terminated (or crashed).
*[H] Steps per Pattern, in groups of ... so that each group produces a ...* note. Here you can set how long the patterns are and what grouping below the beat they have. This is the most complicated part in Patroneo and will be discussed later in this manual. For now it is recommended to ignore the "groups" field. Steps per Pattern is simply the number of tones that can be switched on and off. The drop down list selects how long each of these steps is.
If the program supports it, a running program window can be hidden. Synthesizers, once set up, do
not have to be permanently visible. Just click on the program icon again. Either nothing happens
(the program does not support it) or the window will hide. Another click on a hidden window shows
it again. Every program itself is responsible for whether it saves its window state. Also, some
programs already start hidden.
*[I] Playback Controls* are three buttons. From left to right:
There is *no* way to end or remove a program in this view. To do this, switch to the full view or
use the close function of the program itself.
* Play / Pause. Press to play or pause the music at the current location. You can also press the space bar.
* Loop on and off. The currently played measure (in all tracks) is continuously repeated. This function is suitable for working in a certain place by getting to hear your changes quickly. The loop is broken up by pressing the button again or jumping around in the timeline (see letter Z below).
* To the start: Jumps back to the beginning, whether the music is playing or not.
There is also *no* possibility to start a program multiple times, e.g. one synthesizer per
track. If you want to start multiple program instances through the full view times you can still
use the quick view to manage the general session, but it is not defined which program instance a
click on the icon (e.g. to hide) affects. Multiple instances are a clear indicator that you are
ready for the full view.
=== Form Editor
As you'll eventually discover, not *all* available programs are in the list, and there there is
also no possibility to start programs that would work well in a session (e.g. a tuner), but are not
explicitly written for it, e.g. do not report their status. It is better to manage these programs
in full view.
In the *[B] Form Editor* you create the structure of a piece. To do this, the measures in each track can be switched on and off as desired. One can imagine, for example, a drum set that plays three bars in a row and makes a "break" every fourth bar. For this common drum technique you need two tracks. In the screenshot this "3+1" pattern can be seen in the third section (bars 17 to 24) in the orange bass track. +
Whole parts (e.g. verse and chorus) are implemented by using different tracks. To make the creation of related tracks as comfortable as possible, the "clone" command exists (see letter D).
If, unfortunately, a program has crashed, you can only restart it and hope its automatic saving
worked. Good luck.
It is possible to zoom in on the measures. To do this, hold down the *CTRL* key and turn the mouse wheel up or down. Please make sure that the mouse cursor is actually over the measures and not over the track names or on the timeline.
== Full View
*[Z] Timeline*: a click with the left mouse button sets the playback position, even during playback. +
In addition, the measure groups (not to be confused with grouping in the pattern, see letter H) can be seen and set here. If you hover over the timeline with the mouse cursor, you can reduce or increase the size of the groups with the mouse wheel. The groups not only have an cosmetical function but are also used as units of measurement if you want to delete or add entire ranges (see letter K).
Some concepts have already been explained in the chapter "Quick View". It is expected that you have
read this.
*[J] Track Names*. Here you can move tracks, rename them, give them a different color and more:
=== Selecting a Session
* A single click with the left mouse button on a name selects a track without changing anything. This is the best way to just look at a track. (A click on the measure area changes a measure immediately!)
* The double arrow on the far left can be used to move tracks up and down to organize them. It has no effect on the sound or the JACK connections. To move, click on the arrow with the left mouse button, hold it down and move the mouse up and down.
* The colored square shows the current color. A left mouse click opens a dialog.
* Track names can be changed at any time by a double-clicking with the left mouse button. Press the Return key to finish renaming. The JACK connection is retained when renaming. +
It is a good habit to end tracks on a single letter or number. These are used in "cloning" to construct a variant of the name. See the screenshot above.
* A click with the right mouse button on a name opens the context menu of a track. Here you can
** Switch all measures on or off (only applies to the visible measures)
** Invert the activated measures: Off becomes On and vice versa.
** Clone this track (same function as in the toolbar)
** Delete the track permanently and irreversibly
** Copy the measure sequence of another track onto the selected one. Measures that have already been set are preserved. If you use this function from an empty track you will practically get "copy track".
Sessions are displayed as a table, which you sort by clicking on a column header. Here is shown how
the session is called and when it was saved the last time, probably the two most important pieces
of information. Also shown is how many programs/clients are in the session and whether it contains
symbolic links. The latter is probably set to "Yes" if use a sampler, or similar, that contains
large audio files. These are initially only linked into the session, and not copied, to save disk
space. The displayed disk space usage is not the actual one, but includes the sizes of
symlink-targets. Only when you archive the session or replace the links with real files the number
becomes correct.
Now finally the *[K] Track* itself. A left click on a measure switches it on or off again. You can switch several measures in a row on and off by holding down the left mouse button after clicking and moving the mouse left or right.
A right click on a specific measure opens a context menu: Insert new measures in all tracks(!) at this position or delete measures from all tracks. The number of measures results from the current measure group setting from the time line (see letter Z). +
These functions are especially understandable if you apply them to the first measure of a group (after the white line). This allows you to insert new "parts" or delete an entire part. +
A good method is also to change the group size for these functions briefly and then reset them immediately afterwards.
Finally, the directory in which the files are actually stored is also given.
*[X] Half Tone Transposition* is adjusted by holding down the SHIFT key and then turning the mouse wheel up or down over an activated measure. In the measure itself a small text appears, e.g. +5h. Five semitones upwards; C becomes F, MIDI note 60 becomes 65; the transposition is only valid for the respective measure and is not visible in the pattern itself (see below). If the measure is switched off (and on again), the transposition is deleted.
Sessions represent the directory tree. A session is always a "leaf" and cannot include subsessions.
When creating or renaming sessions, you can also arrange them in the tree by using the usual slash
notation: `song123` -> `New album/song 123` or `Test/asdf` -> `Romantic pop ballads/My heart will
keep beating`. How to organize your sessions and how many subdirectories you create is up to you.
It is, however, not allowed to start the name with `/` or use the special characters `..`. The
tree view can be deactivated by a checkbox on the left side, e.g. to be able to sort them. This is
just a view, your data remains untouched.
*[Y] In-Scale Transposition*. It is recommended to familiarize yourself with the pattern and its scale (see letters O to R) first. Are you back? All right, here we go: +
If you hold the mouse cursor over an activated measure, you can adjust the transposition, based on the scale, with the mouse wheel up or down. The label shows how many steps up or down (-6s to +6s) this measure is shifted. If the measure is switched off, the transposition also disappears. In the pattern itself (see below) you cannot see whether a measure is transposed or not.
Each session has a context menu (e.g. right mouse button) with further options: You can choose to
rename a session, delete it (including all associated files on the hard disk!) and more. These
functions are equivalent to your file manager. If you like, you can also use your file manager to
rename, move, or delete the session directories themselves (unless they are is currently open). You
don't need to restart Argodejo to do this, it will respond to the changes while running.
One can imagine that the steps in the pattern are shifted up or down in the rows behind the scenes. Whatever tone is set in this row gets played. With a normal scale, this is musically easy to understand: The tones are moved up or down in the scale. +
However, if the scale is chosen freely, there are non-intuitive outcomes; "up and down" with respect to pitches may lose their meaning. It is possible to use two interleaved scales in the pattern and to switch between them by scale transposition +1. Or even uses completely different tones, so that only the rhythm remains the same.
There is also the possibility to remove a so-called "lock" file. This is a file which is created
when the session starts and deleted when it ends. This tells Argodejo which session is currently
running. If a lock file exists, the session cannot be opened! This should not happen during normal
operation. But if a power failure or similar occurs in the middle of a session, the lock file may
remain, although obviously no session is opened. In this case, unlock the session manually by
deleting the lock file.
Scale and half-tone transposition can be combined. First the scale is changed, then the semitone. These combinations open up many creative possibilities!
Click on "New session" to create one. In contrast to the quick view, you must enter the name
directly . As mentioned above, you can use the directory tree. In addition, there are several
(almost obligatory) programs suggested to start with. Normally one should accept all suggestions.
There is always the option to remove them later.
=== Pattern Editor
A double click on an existing session (or the "Load Selected" button) does just that.
The *[C] Pattern Editor* is used for composing. The tones, also called "steps", are used to form a measure. The pattern is exactly as long as a measure and is played from left to right. There are several possibilities for tonal arrangement, which are now explained.
=== In a Session
The pattern is always as long as set in the toolbar (see letter H). Steps that have been set are never deleted by rezising! If you make the measures shorter, tones "too far to the right" are simply ignored. You can see them again as soon as you make the measures longer again.
The full view is divided into three areas: Program starter, programs in the current session
and the session notes. There is also a dynamic menu.
If the pattern is larger than the screen you can either use the scroll bars or zoom. To zoom hold down the *CTRL* key and turn the mouse wheel up or down.
On the left side you see the program starter. A double-click starts a program instance in this
session. You can also start a program more than once. For available programs please refer to the
chapter "Program Database".
At the top you can see a label for the *[M] Active Track*.
==== Running Programs
The pattern itself is arranged in rows and columns. The rows symbolise the (adjustable) pitches, the columns show their rhythmic sequence and position in time.
Started programs are located on the right side. A double-click switches the visibility
to hide its window if the program supports it. If not, nothing happens.
The following information is available per program:
==== Pattern Context Menu
* The name (possibly with icon)
* A "label" that programs can use freely (e.g. Fluajho shows the loaded .sf2 here)
* The program status
* Stopped , not running
* Ready, running
* Launch, If the status halts here but the programs works, it is one that does not specifically support session mode. Argodejo cannot know if it is already running or not. Everything is fine! :)
* Other states are only transitions and usually only visible for a very short time, e.g. Open / Loading
* Visibility (A cross for visible, blank for invisible)
* Changes - Are there currently unsaved changes?
* ID - A unique identifier that can be used to distinguish between multiple instances of the same program
A right click on a step opens a context menu that provides the following exclusive functions.
For all functions that reverse or invert ("On" becomes "Off" and vice versa), please note that all volume information (see below) is lost.
All other functions are accessible via the menu or context menu. One click on a program selects it,
and the client menu in the menu bar will now apply to the client. Alternatively, you can
right-click on an entry for a context menu, which is identical to the menu.
"Row" here refer to all steps of the same pitch. From left to right.
In addition to self-explanatory functions there are also:
* Invert row (an empty row is completely filled)
* Clear row
* Repeat to here to fill row (see below)
* Invert Steps (the whole pattern)
* All Steps On
* All Steps Off
* Rename gives the program a self-chosen name, mostly to make its purpose clear and to distinguish it better from others. This feature is only available when 'nsm-data' is running in the session.
* Save only tells this program to save
* Remove takes the program out of the session. However, no files are deleted in the process. At the moment you have to "clean up" in your file manager by hand.
The function "Repeat to here to fill row" opens up many creative possibilities: All steps from the beginning of the row to the selected one (incl.) are taken as a "sub-pattern" which is used to fill the rest of the row. All existing steps will be deleted with their volumes.
If the client "nsm-data" is in the session (this is the default setting) the lower area provides a
large text field for notes. It is the same as in the quick view. Write what you want: TODO lists,
lyrics, credits and sources from external Samples etc.
For example, if you want a note every fourth step, activate the first step of the row, leave three empty and click on the fourth step as context menu and select the fill function. The whole row will now be a recurring pattern of "X o o o X o o o...".
==== The Session Menu
==== Duration and Volume
In contrast to the quick view, full mode offers menus, which can also be accessed via the usual keyboard shortcuts (Ctrl+S for saving etc.).
A *[S] Step* is a grey or coloured box. Grey means pause, coloured means *[T] Sounding Tone*. A click with the left mouse button switches the steps on and off. +
A right click opens the context menu. Here you can switch all (currently visible) steps on, off or invert all: Off On becomes Off and vice versa. All volume information (see below) will be lost.
* Save instructs all programs to save, the session continues to run
* Save and Close ends the session, after all programs saved
* Abort ends the session without saving the programs
* Save As saves the session under a different name and closes the current session without saving. From now on you work under the new name.
* Add Client offers the option to add any program, whether it is in the program database or not.
* Any installed programs are suggested. Argodejo doesn't check them for usefulness for a music session, or even for runnability. You will find `ls` here as well as `argodejo` itself.
All steps are equal length. *[V] Other Durations* are also possible: If you hold down the left mouse button after activating a step, you can shorten or lengthen the tone by moving it to the left or right. It must be at least half the length. A tone is at most as long as the measure itself.
== Program-Database
You can activate as many steps in a row or simultaneously as you like. Thus *[W] Chords* can be built.
Argodejos launcher is based on a program database, which is partly self-generated, partly
maintained by hand. As in a start menu Argodejo will offer you only programs that are actually
installed on your system.
Steps can have different *[U] Volumes*. For this Patroneo uses so-called MIDI Velocity. If you hold the mouse cursor over an activated step, you can make its sound softer or louder by turning the mouse wheel. The volumes are displayed as numbers between 1 and 127. If you want to see all volumes at once you can click with the mouse wheel (middle mouse button) into the free area left or right of the pattern. In addition, a step looks more transparent the quieter it is. If the step is switched on and off, the volume is set back to the normal value, derived from the average volume of all tones of this pattern. +
The database is created at the first start. Depending on your system, this can take some moments to
a few minutes.
You can use the *[M] Velocity* buttons to make all tones of a pattern quieter or louder. If you click on it, the volume changes by 1 each, but if you hold the mouse cursor over a button and rotate your mouse wheel the velocity changes by 10 each. It doesn't matter which velocity button (plus or minus) you hover over.
If you are reinstalling or uninstalling audio programs, you will need to update the database via
the command in the control menu. Program installations and system changes are even possible while
Argodejo is running (even in a session). After a DB update you can immediately access all new
programs.
To make all tones of a row quieter or louder hold the Alt key (not AltGr) and use your mousewheel on a step of that row.
If you do not see an installed program in our launcher, but you are sure that it supports session
management please report it to info@laborejo.org or under https://laborejo.org/bugs .
==== Pitches and Scales
In addition, you can add (in full view) programs that are not in the database.
Click with the middle mouse button on a step to hear the sound it plays. This allows you to "pre-listen" before you decide to set a note. Tip: Hold down the middle mouse button and move the mouse up and down the steps.
=== For advanced users
Which actual pitch is played ("MIDI Key") is determined by the *[R] Scale*. Patroneo always works with eight-note scales. Normally, this is a common musical scale: seven different notes and the octave of the root note.
The strict rule is that only programs in the $PATH are included in the database. Absolutel paths
are not allowed, even if you enter the program name yourself through the menu. However sometimes
you just want to try out software, or you are a developer yourself and want to test without
system-wide installation.
Such common *[Q] Scales* can be selected directly. For example, major, minor, various so-called "church modes" but also the blues scale or chromatic (e.g. to GM drum mapping) +
If you select a scale from the list, it will be built upon the bottom row. As a rule of thumb this is also the lowest note. In the screenshot this is midi note 60 / C4, located bottom left. You must first select the root directly and then select a *[Q] Scale*.
In the control menu / settings is a tab "Program-PATH", where you can define and add your own
search paths. One absolute directory path per line, no wildcards, trailing slash don't matter.
There are four buttons to change the pitch of both the root note and the entire scale:
For example: `/home/myuser/sources/newsequencer/bin/`
* *[O] Half Tone* Plus or minus shifts the whole scale up or down by one semitone each. This should not be confused with the temporary transposition from the form editor (see letter X). This is called destructive change, since the values themselves are permanently changed.
* *[P] Octave* Plus or minus shifts directly by a whole octave. You could also press the half-tone button 12 times. Don't.
These search paths are not stored in the session, but locally in your `~/.config` directory.
As already described in the scale transposition (see letter Y), it is also possible to directly input any value between 0 and 127 in the *[R] Fields of the Scale*. The tones do not have to have musically meaningful intervals, nor do they have to be sorted in ascending or descending order.
== Tray
==== Shadows
Argodejo has a tray icon, if your window manager supports it. A click on the trayicon shows or
hides Argodejo.
Often you want to add more tones to an existing track in a different pattern. A second voice, question/answer technique etc.
To help you, it is possible to display other tracks as *[2] Shadows*. Just click with the middle mouse button on the track you want to see. This is only possible in the measure area, not on the track name or on the timeline.
If you close Argodejo using the normal window manager function, such as a click on the [X], the
program and the session is not terminated, but minimized to the tray.
You can display as many shadows as you want, until you lose track. All shadows disappear as soon as the active track changes.
If the Argodejo window is hidden and closed via the tray menu (see below), Argodejo will be
minimized to the next start also started as tray icon. So it is possible to continue working
without having to deal with the program window.
Shadows are just a guidance and not litereal pitches: If you choose a shadow-track with a different scale than your current one the shadow-pitches will be technically wrong. Shadows are very simple in principle. They just show which steps are marked, nothing more.
A right click on the icon gives you access to common functions:
=== Grouping in the Pattern
You can directly start the most recently used sessions.
Grouping is part of the time signature.
If a session is already running you can save, cancel etc.
As mentioned above *steps per pattern*, sets the length of the pattern. Patroneo starts with 8 steps per measure for a new project (see screenshot). On the far right is a drop down list, which is set to "Quarter" for a new project. You start with a traditional 8/4 time signature.
Argodejo can also be completely exited here.
The field *in groups of* allows you to group steps together, each group being as long as specified in the drop down list. This allows you to further subdivide your time signature. The "beat", i.e. the tempo, is based on the main beats, the first step of each group.
.Examples
* 4/4 time signature with eights notes as smallest rhythmical unit
** 8 steps per pattern / in groups of 2 / so that each group produces a quarter
* 4/4 time signature subdivided as triplet eights notes (swing)
** 9 steps per pattern / in groups of 3 / so that each group produces a quarter
* 12/8 time signature
** 12 steps per pattern / in groups of 1 / so that each group produces an eigth
* 8/4 time signature subdivided as sixteenth notes
** 32 steps per pattern / in groups of 4 / so that each group produces a quarter
== Network Sessions
Normally, the time signature is set relatively at the beginning of a new project. However, it happens every now and then that you need smaller rhythm values than you thought at the beginning. If you simply increase the value of the grouping, you get more subdivisions, but the number of steps remains the same. Likewise, the notes remain exactly in the "column" in which they were previously placed. In other words, the music will sound different. Overall, the measure is also getting shorter, since the same number of steps is now used for shorter steps.
The functionality to distribute sessions over the local network is planned for a later program
version.
Patroneo therefore offers the function *Convert Grouping* (in the Edit menu) to change the existing measure structure and to resize steps already set so that the music sounds the same.
If you click on the button in the toolbar, a small dialog box opens in which you can enter the desired grouping. It is also possible to set what should happen if the conversion would not work properly for musical reasons (see below).
== Program parameters
Conversion is often possible without any problems:
As an advanced user, you can start Argodejo in the terminal and add some parameters.. For a
complete list please use the --help parameter.
* If the grouping of `1` is set to a higher value, it always works
* If the grouping is set from `2` to `4` it always works
For example:
For all other transformations it depends on whether the existing tones lie between the new grid after the conversion or not. The former case is not possible and you have to decide:
* `--session-root /home/user/production2030` sets the root directory. Only sessions in this directory are displayed, everything is stored here.
* `--session newAlbum/mySong` starts the given session.
* `--url osc.udp://myhost.localdomain:14294/` connects to this server, if available, or starts the internal session server at this address. This is a very technical option and probably not needed.
.Error Handling
* Do nothing (default)
** The operation is aborted, everything remains as before.
* Delete wrong steps
** Anything that would appear between the grid will be deleted or discarded.
* Merge wrong steps
** Impossible positions are moved to the next possible position. In any case, this means that the music now sounds different. Usually several notes are pushed on top of each other and form chords.
== Miscellaneous / Explanations / FAQ
With a little experience you will be able to estimate what error handling you need.
*Session Save and Exit responds slowly*: Argodejo is not a standalone program like an word
processor. The participating programs in the session are not plugins either. When you end the
session a signal is sent to all participating client to save. This may take a few moments where
you are able to see "live" how individual programs terminate and disappear from the session.
Everything is fine.
*I have added a program but it does not save with the session*: Does the program support session
management? If not, Argodejo cannot do much. But you can ask the program developers to contact us
(info@laborejo.org) and we can work together on support.
*The programs hang on exit*: Sorry about that. Actually, the programs themselves are to blame, but
we are also interested in improving the situation by offering at least an emergency solution in the
future.
*Argodejo won't start! I start the program but I can't see anything*: Most likely Argodejo is
running, but invisible, because you exited it from the tray last time. Is it in the tray? A
message should have popped up, maybe you missed it. If there is no tray in your window manager, the
program should always be visible. With all these special window managers in Linux it may be that
the tray detection did not work properly. Contingency plan is to delete
`~/.config/LaborejoSoftwareSuite/argodejo`. This will NOT remove any sessions, but only local
settings such as the visibility of the program window. At next start Argodejo will behave like the
very first start.
*JACK crashed. A lot of programs hang. What can I do to prevent data loss?* Probably already many
programs in the session are not running properly and are not reacting anymore. The best thing to do
is to use the 'Abort Session' function and restart everything. If the data has actually been
unsaved for a long time, you can also dare to save/exit. It may be necessary to re-draw some jack,
or all, jack connections by hand at the next start. If you want to be on the safe side, you can
manually make a copy of the session directory in your file manager before ending the session (with
inevitable crashes).
*A program update broke my session because it can no longer load its files.* Unfortunately, this is
a problem that even Argodejo can't solve. It also happens with LV2 plugins and with all other
software, such as office programs. If you fear that a program becomes incompatible in the future,
write down its version number in the session notes, so that you can at least, in an emergency,
reinstall the old program version (even if this is very is cumbersome).
*What's better? Monolithic DAW or session management?* Why not both? There is no conflict. Session
management is worthwhile with two or more participating programs, which one needs almost always.
You should not feel compelled to suddenly make everything modular with individual programs, only
because you use a session manager. Argodejo is designed to make your music production easier. If it
is faster and more comfortable to manage all plugins and effects e.g. in a single "Carla" instance
then you should do exactly that. If you basically want to do everything in Ardour, do that, but
start Ardour anyway in session management, because no program can do everything alone and the time
will come where you add a second one.
Session management is another level of hierarchy. Sequencers or DAWs are not plug-ins themselves.
Patroneo does not belong "in" Ardour and Ardour does not belong "in" Laborejo. Already in this
example each of the programs fulfils a different role because the others follow a different design
philosophy and cannot ever offer the same workflow. And more:
Some programs can't host plugins, some can't export audio files. They are not bad programs, but
programs that concentrate on one task. Furthermore, there is a lot of software that does not
directly do music production, but still is connected in the grander scheme: Open Broadcast Studio
(OBS), music player, word processors and graphic programs etc.
*Argodejo contains functionality which is not within its scope*: Music production is very complex
and complexity is inevitable. It's like a waterbed: if you press down on one side, something
bounces up in another place. When you create a "clean and lean" program, which therefore implements
only a part of the complete workflow, then the missing part pops up somewhere else. A minimalistic
session manager provokes plug-ins (not LV2), helper-scripts, workarounds and hacks.
E.g. not to include file management provokes user errors like deleting the wrong files. If the SM
knows what to do and it can do it, then let it do it. Or crashes: Technically, crashing programs
are not the "problem" of the session managers, but they are part of the software reality. Crashes
happen every day and need to be handled. Can Argodejo simplify the work and help to restore good
conditions again? Then that should be done. Session management is also an opportunity to simplify
even complex technical scenarios, e.g. distributing sessions over the network.

407
documentation/german.adoc

@ -27,7 +27,384 @@ https://asciidoctor.org/docs/user-manual/
// Don't write in the empty line above line. It will be interpreted as author html tag
Für Programmversion 0.1
<manual>
== Präambel
Session Management führt zur Vereinfachung von Arbeitsabläufen, Übersicht und Kontrolle über
Programme und Daten und eine gehörige Portion positive Bequemlichkeit :)
Kein Programm existiert für sich alleine, denn kein Programm kann alles leisten, was für heutige
Musikproduktion nötig ist.
Direkt ersichtlich ist das in einer JACK Umgebung, die prinzipiell modular ist: Verschiedene
Programme erfüllen verschiedene Zwecke und "sprechen" miteinander, indem sie sich Daten schicken.
Ein Sequencer schickt Midi an einen Sampler oder Synthesizer, der mit einem Plugin-Host für Effekte
verbunden ist usw.
Selbst die monolithischsten All-In-One DAWs müssen, oder möchten, irgendwann mit der Außenwelt
kommunizieren. z.B. um sich mit einem Screenrecorder oder Streamingprogramm zu verbinden, einen
Wordprozessor mit Aufnahmereihenfolge oder Liedtexten zu starten, um Musik zu visualisieren oder (um
ehrlich zu bleiben) eine Funktion zu nutzen, die es in diesem Programm eben nicht gibt.
Einen Großteil der Arbeit erledigt bereits das JACK-Subsystem. Alle Programme können ihre Musik in
Echtzeit teilen, verfügen über synchronisierte Timelines und spielen im gleichen Tempo.
Was übrig bleibt ist die leidige Arbeit jedesmal alle Programme zu starten, die Projektdateien zu
laden, alle Audiokanäle zu verbinden usw. Session Management im allgemeinen (z.B. extra
geschriebene Starter-Scriptdateien) und Argodejo im speziellen nehmen Ihnen diese Arbeit ab, oder
vereinfachen sie zumindest stark.
Im Gegensatz zum erwähnten selbstgeschriebenen Script müssen Sie sich nicht im Vorraus für ein
Setup entscheiden, sondern alles wird automatisch verwaltet, solange Sie alles durch den Session
Manager Argodejo starten.
=== Anwendungsbeispiel
* Argodejo starten (Startmenü, Terminal etc.)
* Man befindet sich nun in der "Schnellen Ansicht" um eine Session zu starten
* Der große Knopf: "Starte Neue Session"
* Nun bekommt man eine Auswahl an Programmen:
* Ein einfacher Klick mit der Maus startet ein Programm
* Ein weiterer Klick versteckt (oder zeigt anschließend) dessen grafische Oberfläche
* Sollte das Programm abstürzen bekommt man das signalisiert und kann es neustarten.
* Audio- und Midiports können nun in einer Patchbay miteinander verbunden werden. Die Verbindungen werden in Argodejo gespeichert.
* Um andere Programme und erweiterte Funktionen zu bekommen kann man in den Tab "Volle Ansicht" wechseln
* Der Name der Session ist bisher einfach ein Datum. Durch Klick auf dieses kann man einen richtigen Namen eingeben. Etwa "Mein Lied"
* Ist man soweit fertig kommt man durch den Knopf "Speichern und Schließen" wieder in die Sessionauswahl zurück
* Nun könnte Argodejo geschlossen werden.
* Alle gespeicherten Daten liegen in einem einzigen Verzeichnis auf der Festplatte (`~/NSM Sessions/Mein Lied`)
* Die Session kann weitergeführt werden: Nach dem Klick auf den Namen starten alle Programme automatisch und verbinden ihre JACK-Ports untereinander.
Die "Schnelle Ansicht" ist ein guter Einstieg. Üblicherweise möchte man jedoch bald in die volle
Ansicht wechseln, und sei es nur um ein Programm zwei mal zu starten oder um zwischendurch manuell
zu speichern.
== Die Schnelle Ansicht
Die Schnelle Ansicht ist eine aufs Minimum reduzierte Umgebung. Sie, als Benutzer, sollen so wenig
Entscheidungen wie möglich zu treffen haben und so schnell wie möglich (mit den wenigstens Klicks)
eine alte Session starten oder eine neue erstellen können.
Aus Stabilitätsgründen werden nur Programme zum Starten angeboten, von denen bekannt ist, dass Sie
korrekt mit dem Session Management Argodejos zusammenarbeiten.
Die Schnelle Ansicht ist lediglich eine Ansicht. Es besteht kein technischer Unterschied zur vollen
Session und Sie können jederzeit hin- und herschalten.
=== Session Auswählen
Hier gibt es nur zwei Möglichkeiten: Klicken Sie auf "Starte Neue Session" um dies zu tun, oder
wählen Sie eine der bestehenden Sessions aus um diese fortzuführen (sofern vorhanden).
=== In einer Session
Der Name kann geändert werden. Wir empfehlen ein Datum in der Form YYYY-MM-DD gefolgt von einem
aussagekräftigen Namen. Bitte beachten Sie, dass die Namensänderung erst wirksam wird (z.B. in Form
des Sessionvereichnisses auf der Platte) wenn Sie die Session schließen.
Als nächstes steht ein größeres Textfeld für Notizen zur Verfügung. Schreiben Sie was Sie möchten.
TODO-Listen, Liedtexte, Credits und Quellen von externen Samples etc.
Programme werden durch Icons symbolisiert. Ein Mausklick startet das Programm (das kann einen
Moment dauern, darauf haben wir keinen Einfluss). Der Status des Programmes wird durch ein Symbol
dargestellt: Das "Play"-Symbol für das laufende Programm, ein Auge bedeutet "Programmfenster
versteckt", das "Power On/Off"-Symbol bedeutet, dass Programm wurde beendet (oder Absturz).
Falls das Programm es unterstützt kann ein laufendes Programmfenster versteckt werden. z.B. ein
Synthesizer, einmal eingerichtet, muss nicht permanent zu sehen sein. Klicken Sie einfach erneut
auf das Programmicon. Entweder passiert nichts (das Programm unterstützt es nicht) oder es wird
versteckt. Ein weiterer Klick auf ein versteckes Fenster zeigt es wieder. Jedes Programm ist selbst
dafür verantwortlich ob es seinen Fensterzustand speichert. Manche Programme starten bereits
versteckt.
Es gibt *keine* Möglichkeit ein Programm in dieser Ansicht zu beenden. Wechseln Sie hierzu in die
volle Ansicht oder benutzen Sie die Schließenfunktion des Programmes selbst.
Es gibt auch *keine* Möglichkeit ein Programm mehrfach zu starten, z.B. für einen Synthesizer pro
Spur. Wechseln sie hierzu in die volle Ansicht. Wenn Sie Programme durch die volle Ansicht mehrfach
gestartet haben können Sie weiterhin die schnelle Ansicht benutzen um die Session zu verwalten,
allerdings ist nicht definiert auf welche Programminstanz sich ein Klick auf das Programmicon (z.B.
zum Verstecken) auswirkt. Mehrere Instanzen sind ein klares Zeichen dafür, dass Sie bereit für die
volle Ansicht sind.
Wie Sie irgendwann feststellen werden sind nicht *alle* verfügbaren Programme in der Liste, und es
gibt auch keine Möglichkeit Programme zu starten die zwar gut in einer Session funktionieren (z.B.
ein Stimmgerät), aber nicht explizit dafür geschrieben sind, z.B. ihren Status nicht zurückmelden.
Diese Programme sollten Sie besser in der vollen Ansicht verwalten.
Ist ein Programm leider abgestürzt können Sie es nur neu starten und auf dessen automatische
Speicherung hoffen. Viel Glück.
== Die Volle Ansicht
Einige Konzepte wurde bereits im Kapitel "Die Schnelle Ansicht" erklärt. Es wird vorrausgesetzt,
dass Sie dieses gelesen haben.
=== Session Auswählen
Sessions stellen sich als Tabelle dar, die Sie durch den Klick auf eine Spaltenüberschrift ordnen
können. So wird hier gezeigt wie die Session heißt und wann das letzte mal gespeichert wurde, wohl
die beiden wichtigsten Informationen. Dann wird gezeigt wie viele Programme/Clients die Session
verwaltet und ob sie Symbolische Links enthält. Letzteres steht wahrscheinlich auf "Ja", wenn Sie
einen Sampler o.ä. benutzen, der große Audiodateien geladen hat. Diese werden zunächst nur in die
Session gelinkt, und nicht kopiert, um Speicherplatz zu sparen. Der angezeigte Speicherverbrauch
ist nicht der tatsächliche Verbrauch, sondern beinhaltet die Größen der Symlinks. Erst wenn Sie die
Session archivieren oder die Links durch reale Dateien ersetzen stimmt die angezeigte Zahl.
Schließlich wird auch das Verzeichnis angegeben, in dem die Dateien tatsächlich gespeichert sind.
Sessions stellen den Verzeichnisbaum dar. Eine Session ist immer ein "Blatt" und kann keine
Subsessions enthalten. Sie können beim Anlegen oder Umbenennen die Sessions auch im Baum anordnen
indem Sie die gewohnte Schrägstrichschreibweise benutzen: `song123` -> `Neues Album/Song 123` oder
`Versuche/asdf` -> `Romantische Pop-Balladen/Mein Herz wird weiter schlagen`. Wie Sie ihre Sessions
organisieren, und wie viele Unterverzeichnisse Sie anlegen, steht Ihnen frei. Es ist allerdings
nicht erlaubt den Namen mit `/` anfangen zu lassen oder die speziellen Zeichen `..` zu benutzen.
Die Baumansicht kann durch eine Checkbox an der linken Seite deaktiviert werden, um etwa besser
sortieren zu können. Das ist nur eine Ansicht, ihre Daten bleiben unangetastet.
Jede Session verfügt über ein Kontextmenü (z.B. rechte Maustaste) mit weiteren Optionen: Sie können
eine Session umbennen, löschen (inkl. aller dazugehörigen Dateien auf der Festplatte!) und mehr.
Diese Funktionen sind gleichwertig zu ihrem Dateimanager. Falls Sie möchten, können Sie auch
einfach die Sessionverzeichnisse selbst umbennen, verschieben oder löschen (sofern diese nicht
gerade geöffnet ist). Dazu muss Argodejo nicht neugestartet werden, es reagiert selbst auf die
Änderungen.
Hier gibt es auch die Möglichkeit eine sogenannte "Lock"-Datei zu entfernen. Das ist eine Datei,
die angelegt wird sobald die Session startet und gelöscht wenn beendet. Damit weiß das Programm,
welche Session gerade läuft. Ist eine Lockdatei vorhanden, kann die Session nicht geöffnet werden!
Das sollte im normalen Betrieb nicht vorkommen. Falls aber ein Stromausfall o.ä. mitten in einer
Session passiert ist kann die Lockdatei übrig bleiben, obwohl offensichtlich keine Session geöffnet
ist. In diesem Fall entsperren Sie die Session hierdurch manuell.
Klicken Sie auf "Neue Session" um diese anzulegen. Im Gegensatz zur schnellen Ansicht müssen Sie
hier den Namen direkt eingeben. Wie oben erwäht können Sie dazu den Verzeichnisbaum benutzen.
Darüberhinaus wird angeboten verschiedene (fast schon obligatorische) Programme direkt
mitzustarten. Im Normalfall sollte man alle Vorschläge akzeptieren. Es gibt jederzeit die
Möglichkeit diese wieder zu entfernen.
Ein Doppelklick auf eine existierende Session (oder der Knopf "Lade Ausgewählte") machen genau das.
=== In einer Session
Die volle Ansicht ist in drei Bereiche eingeteilt: Programmstarter, Programme in der laufenden Session
und die Session-Notizen. Dazu gibt es ein dynamisches Menü.
Auf der linken Seite sehen die den Programmstarter. Ein Doppelklick startet eine Programminstanz in
der Session. Sie können ein Programm auch mehrmals starten. Welche Programme zur Verfügung stehen
entnehmen Sie bitte dem Kapitel "Programm-Datenbank".
==== Laufende Programm
Gestartete Programme befinden sich auf der rechten Seite. Ein Doppelklick schaltet die Sichtbarkeit
um, sofern das Programm unterstüzt sein Fenster zu verstecken. Falls nicht passiert nichts.
Pro Programm gibt es folgende Informationen:
* Der Name (evtl. mit Icon)
* Ein "Label", das Programme frei benutzen können (z.B. zeigt Fluajho hier das geladene .sf2 an)
* Den Programmstatus (auf Englisch, da es sich um definierte Schlüsselworte handelt).
* Stopped / Gestoppt, läuft nicht
* Ready / Läuft und Bereit
* Launch / Startet. Wenn das Programm hier stehen bleibt, aber funktioniert, handelt es sich um eins, dass nicht speziell den Sessionmodus unterstützt. Argodejo kann nicht wissen, ob es bereits läuft oder nicht. Alles ist in Ordnung! :)
* Weitere Zustände sind nur Übergänge und meist nur sehr kurz zu sehen, z.B. Open / Läd gerade
* Sichtbarkeit (Ein Kreuz für sichtbar, Leer für unsichtbar)
* Änderungen - Gibt es momentan ungespeicherte Änderungen?
* ID - Ein eindeutiges Kürzel mit dem man auch mehrere Instanzen des gleichen Programmes auseinander halten kann
Alle weiteren Funktionen sind durch das Menü oder Kontextmenü zugänglich. Ein Klick auf ein Programm
wählt es aus, und das Clientmenü in der Menüleiste gilt nun dafür. Alternativ kann mit Rechtsklick
auf den Eintrag das Kontextmenü geöffnet werden, das identisch ist.
Neben den selbsterklärenden Funktionen gibt es noch:
* Umbenennen gibt dem Programm einen selbstgewählten Namen, besonders um seinen Zweck deutlich zu machen und es besser von anderen zu unterscheiden. Diese Funktion steht nur zur Verfügung, wenn `nsm-data` in der Session läuft.
* Speichern weist nur dieses Programm an abzuspeichern
* Entfernen nimmt das Programm aus der Session. Dabei werden jedoch keine Dateien gelöscht. Zur Zeit muss leider noch von Hand im Dateimanager "aufgeräumt" werden.
Befindet sich der Client "nsm-data" in der Session (das ist Voreinstellung) steht im unteren
Bereich ein großes Textfeld für Notizen zur Verfügung. Es ist dasselbe wie in der schnellen
Ansicht. Schreiben Sie was Sie möchten: TODO-Listen, Liedtexte, Credits und Quellen von externen
Samples etc.
==== Das Session Menü
Im Gegensatz zur schnellen Ansicht stehen hier weitere Menüs zur Verfügung, die auch über die
üblichen Tastaturkürzel zu erreichen sind (Strg+S für Speichern etc.).
* Speichern weist alle Programme an zu speichern, die Session läuft weiter
* Speichern und Schließen beendet die Session, vorher speichern alle Programme noch einmal ab
* Abbrechen beendet die Session, ohne dass die Programme abspeichern
* Speichern Unter speichert die Session unter einem anderen Namen und schließt die laufende ohne abzuspeichern. Ab nun arbeitet man in der neuen Session.
* Client Hinzufügen bietet die Option ein beliebiges Programm hinzuzufügen, egal ob es in der Programmdatenbank ist, oder nicht.
* Es werden alle installierten Programme vorgeschlagen. Argodejo überprüft diese nicht auf Sinnhaftigkeit für eine Musik-Session, oder auch nur auf Lauffähigkeit. Sie finden hier `ls` wie auch `argodejo` selbst.
== Programm-Datenbank
Argodejos Programmstarter basiert auf einer Programmdatenbank, die sich teilweise selbst erstellt,
teilweise von Hand eingepflegt wurde. Das bedeutet nichts anderes, als das alle installieren
Programme in ihrem System überprüft werden (wie ein Startmenü) und Ihnen im Argodejo-Starter nur
das angeboten wird, was Sie auch tatsächlich installiert haben.
Beim ersten Start wird daher die Programmdatenbank erstellt. Je nach System kann dies einige
Augenblicke bis einige Minuten dauern.
Wenn Sie Audio-Programme neu installieren, oder deinstallieren müssen Sie die Datenbank selbst
aktualisieren. Im Steuerungsmenü gibt es den Befehl. Programminstallationen sind sogar möglich
während Argodejo läuft (auch in einer Session). Nach einem DB-Update stehen Ihnen sofort alle
neuen Programme zur Verfügung.
Wenn Sie ein installiertes Programm nicht in unserer Liste sehen, aber von dem Sie sicher sind,
dass es Session Management unterstützt melden Sie es bitte an info@laborejo.org oder unter
https://laborejo.org/bugs .
Darüberhinaus können Sie (in der vollen Ansicht) Programme hinzufügen, die nicht in der Datenbank
sind. Siehe dort.
=== Für Fortgeschrittene
Die eiserne Regel ist, dass nur Programme im $PATH in die Datenbank aufgenommen werden. Absolute
Pfade sind unzulässig, selbst wenn man den Programmnamen selbst durch das Menü eingibt. Allerdings
möchte man manchmal Software nur ausprobieren, oder ist selbst Entwickler und möchte ohne
systemweite Installation testen.
In den Einstellungen im Steuerungsmenü gibt es einen Tab "Programm-PATH", wo Sie eigene Suchpfade
hinzufügen können. Ein absoluter Pfad pro Zeile, keine Wildcards, Trailing Slash spielt keine
Rolle.
Zum Beispiel: `/home/myuser/sources/newsequencer/bin/`
Diese Suchpfade werden nicht in der Session gespeichert sondern lokal in ihrem `~/.config`
Verzeichnis.
== Tray
Argodejo verfügt über ein Tray-Icon, sofern ihr Windowmanager das unterstüzt. Ein Klick auf das
Trayicon zeigt oder versteckt Argodejo.
Schließt man Argodejo über die normale Windowmanagerfunktion, etwa ein Klick auf das [X], wird das
Programm und die Session nicht beendet, sondern in den Tray minimiert.
Ist das Argodejofenster versteckt und wird über das Traymenü geschlossen (s.u.) wird Argodejo beim
nächsten Start auch als Trayicon gestartet. Somit ist es möglich weiter zu arbeiten ohne sich mit
dem Programmfenster befassen zu müssen.
Ein Rechtsklick auf das Icon bietet Schnellzugriff auf häufige Funktionen:
Sie können hier die zuletzt benutzen Sessions direkt starten.
Läuft bereits eine Session können Sie speichern, abbrechen etc.
Argodejo kann hier auch komplett beendet werden.
== Netzwerk-Sessions
Die Funktionalität Sessions im lokalen Netzwerk zu verteilen ist für eine spätere Programmversion
vorgesehen.
== Programmparameter
Als fortgeschrittener Benutzer können Sie Argodejo im Terminal starten und dort einige Parameter
angeben. Für eine vollständige Liste benutzen Sie bitte den --help Parameter.
Eine Auswahl:
* `--session-root /home/benutzer/produktion2020` setzt das Wurzelverzeichnis. Nur Sessions in diesem Verzeichnis werden angezeigt, alles wird doch gespeichert.
* `--session neuesAlbum/meinLied` startet direkt die angegebene Session.
* `--url osc.udp://myhost.localdomain:14294/` verbindet sich zu diesem Server, falls vorhanden, oder startet den internen Session-Server unter dieser Adresse. Dies ist eine sehr technische Option und wird wahrscheinlich nicht benötigt.
== Verschiedenes / Erklärungen / FAQ
*Session Speichern und Beenden reagiert langsam*:
Argodejo ist kein Einzelprogramm wie ein Office-Writer. Die teilnehmenden Programme in der Session
sind auch keine Plugins. Wenn Sie die Session beenden wird ein Signal an alle teilnehmenden
Programm gesendet, dass sie speichern sollen. Das kann ein paar Momente dauern, in denen Sie "live"
sehen, wie die einzelnen Programme sich beenden und aus der Session verschwinden. Es ist alles in
Ordnung.
*Ich habe ein Programm hinzugefügt aber es speichert nicht mit der Session*:
Unterstützt das Programm Session Management? Wenn nicht, kann Argodejo nichts tun.
Aber Sie können die Programmentwickler bitten mit uns Kontakt aufzunehmen (info@laborejo.org)
und wir können zusammen an der Unterstützung arbeiten.
*Die Programme hängen beim Beenden*:
Das tut uns leid. Eigentlich sind die Programme selbst schuld, aber auch wir sind daran
interessiert die Situation zu verbessen, indem wir in Zukunft zumindest eine Notlösung anbieten.
*Argodejo startet nicht mehr! Ich starte das Programm aber ich sehe nichts.*: Wahrscheinlich ist
Argodejo unsichtbar, weil Sie es aus dem Tray heraus beendet hatten. Ist es im Tray? Eigentlich
hätte ein kleines Nachrichtenfenster aufpoppen sollen. Falls in ihrem Window-Manager kein Tray
vorhanden ist sollte das Programm immer sichtbar sein. Bei besonderen Window-Managern (bei der
großen Auswahl in Linux) kann es sein, dass die Tray-Erkennung nicht richtig funktioniert hat.
Notfallplan ist es `~/.config/LaborejoSoftwareSuite/argodejo` zu löschen. Dabei werden KEINE
Sessions gelöscht, sondern nur lokale Einstellungen wie die Sichtbarkeit des Programmfensters. Beim
nächsten Start wird Argodejo sich verhalten wie beim allerersten.
*JACK ist abgestürzt. Viele Programme hängen. Was tun um Datenverlust zu vermeiden?*:
Vermutlich sind bereits viele Programme der Session nicht mehr richtig lauffähig und reagieren
nicht mehr. Am besten benutzen Sie die `Session Abbrechen` Funktion und starten alles neu. Wenn die
Daten tatsächlich schon lange ungespeichert waren kann man auch ein Speichern/Beenden wagen. Dann
kann es aber sein, dass man beim nächsten Start einige Jack connections von Hand neu ziehen muss.
Wer extrem sicher gehen möchte kann vor dem Beenden der Session (mit unweigerlichen abstürzen)
manuell im Dateimanager eine Kopie des Session-Verzeichnisses machen.
*Ein Programmupdate hat meine Session kaputtgemacht, weil es seine Dateien nicht mehr laden kann.*:
Das ist leider ein Problem, dass auch Argodejo nicht lösen kann. Es passiert mit LV2-Plugins ebenso
wie mit alle anderen Software, etwa Officeprogramme. Falls Sie befürchten, dass ein Programm in
Zukunft inkompatibel wird notieren Sie sich dessen Versionsnummer in den Session-Notizen, damit Sie
zumindest zur Not die alte Programmversion wieder installieren können (auch wenn das sehr
umständlich ist).
*Was ist besser? Monolithische DAW oder Session Management?*:
Warum nicht beides? Es gibt keinen Konflikt.
Session Management lohnt sich ab zwei teilnehmenden Programmen, und auf die kommt man so gut wie
immer.
Sie sollten sich nicht genötigt fühlen plötzlich alles modular mit Einzelprogrammen zu machen, nur
weil Sie einen Session Manager benutzen.
Argodejo ist dafür da, ihre Musikproduktion einfacher zu machen. Wenn es schneller und bequemer ist
alle Plugins und Effekte z.B. in einer einzelnen Carla-Instanz zu verwalten dann sollten Sie genau
das machen.
Wenn Sie prinzipiell alles in Ardour machen wollen, machen Sie das, aber starten Sie Ardour trotzdem
im Session Management, denn kein Programm kann alles alleine, und der Zeitpunkt wird kommen, an dem
Sie ein weiteres hinzufügen.
Session Management ist andere Hirarchieebene. So sind Sequencer oder DAWs selbst keine Plugins.
Patroneo gehört nicht "in" Ardour und Ardour gehört nicht "in" Laborejo. Und schon in diesem Beispiel
erfüllt jedes der Programme eine Rolle, die die anderen beiden nicht leisten können, da sie einer
anderen Design-Philosophie folgen. Und mehr:
Manche Programme können keine Plugins hosten, manche können keine Audiodateien exportieren. Das
sind deswegen keine schlechten Programme, sondern welche, die sich auf eine Aufgabe konzentrieren.
Darüberhinaus gibt es eine Menge Software, die nicht direkt Musikproduktion ausübt,
aber trotzdem inhaltlich dazu gehört: Open Broadcast Studio (OBS), Musikplayer, Schreib-
und Grafikprogramme etc.
*Argodejo beinhaltet Funktionalität, die nicht seine Aufgabe ist*: Musikproduktion ist sehr komplex
und Komplexität ist unvermeidlich. Sie ist wie ein Wasserbett: Drückt man die auf der einen Seite
runter, muss etwas an einen anderen Stelle hochdrücken. Macht man ein programm "clean and lean",
und implementiert damit nur einen Teil des kompletten Arbeitsablaufs, dann kommt der fehlende Teil
woanders wieder hoch. Ein minimalistischer Session Manager provoziert Plugins (nicht LV2),
Helper-Scripts, Workarounds und Hacks. z.B. Dateiverwaltung nicht mit einzuschließen provoziert
Anwender-Fehler im Dateimanager (wie das Löschen der falschen Dateien). Wenn der SM weiß was zu tun
ist, und er es tun kann, dann soll er es machen.
Oder Abstürze: Technisch gesehen sind abstürzende Programme nicht das "Problem" des Session
Managers, aber sie sind Teil der Softwarewirklichkeit. Abstürze passieren jeden Tag und nun muss
man damit umgehen. Kann Argodejo die Arbeit vereinfachen und helfen den guten Zustand wieder
herzustellen? Dann sollte das geschehen.
Session Management ist außerdem eine Chance auch komplexe technische Szenarios zu vereinfachen, z.B.
Sessions über das Netzwerk zu verteilen.
== Installation und Start
@ -36,8 +413,7 @@ Argodejo ist exklusiv für Linux. Am besten installieren Sie Argodejo über dein
Falls es dort nicht vorhanden ist, oder nur in einer veralteten Version, bitten sie ihre
Linuxdistribution Argodejo bereitzustellen.
Falls in den Paketquellen vorhanden bitte direkt bei "argodejo im Non Session Manager starten" weiterlesen.
Falls nicht kann man Argodejo auch selbst "bauen".
Falls nicht in den Paketquellen vorhanden kann man Argodejo auch selbst "bauen".
.Abhängigkeiten*
* Eine Liste der Abhängigkeit befindet sich in der README.md
@ -50,14 +426,7 @@ Falls nicht kann man Argodejo auch selbst "bauen".
* `make`
* `sudo make install`
.argodejo im Non Session Manager (NSM) starten
* Starten Sie `non-session-manager`
* Knopf `New`, geben Sie einen Namen für das Musikstück ein.
* Knopf `Add Client to Session`, geben Sie hier `argodejo` ein, kleingeschrieben.
* Nochmal Add Client, diesmal `jackpatch`.
* Fügen Sie beliebige kompatible Programme hinzu, z.B. Synthesizer.
** Siehe auch das NSM Handbuch: http://non.tuxfamily.org/nsm/
** Und die Liste der NSM kompatiblen Programme: http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm
Nun ist das Programm durch `argodejo` in ihrem Terminal oder Programmstarter vorhanden.
In der Datei README.md befinden sich weitere Möglichkeiten argodejo zu starten. Diese sind zum
Musikmachen nicht praktikabel, aber nützlich für Tests und Entwicklung.
@ -85,19 +454,11 @@ Argodejo ist mit Hilfe der Qt-Toolchain sehr einfach zu übersetzen, ohne, dass
Die einfachste Variante ist es einfach die Entwickler anzusprechen und sie werden die neue Sprache einrichten.
Hier ist dennoch die komplette Anleitung, um eine Übersetzung komplett alleine anzufertigen und in
das Programm einzubinden. Das Programm ist in zwei Teile aufgeteilt: Ein gemeinsames "Template"
(für alle Laborejo Software Suit Programme) sowie das eigentliche Programm.
Der Übersetzungsprozess ist der gleiche für beide Teile, man muss ihn jedoch in unterschiedlichen
Verzeichnissen durchführen:
`template/qtgui` und nur `/qtgui`, relativ zum Stammverzeichnis, wo sich die ausführbare Datei
argodejo befindet.
Jedes "template/qtgui" hier kann durch nur "qtgui" ersetzt werden um den zweiten Teil zu übersetzen.
das Programm einzubinden.
So fügt man eine neue Sprache hinzu:
* Öffnen Sie ein Terminal und navigieren zu template/qtgui/resources/translations
* Öffnen Sie ein Terminal und navigieren zu qtgui/resources/translations
* Bearbeiten Sie die Datei `config.pro` in einem Texteditor.
** Hängem Sie in der letzten Zeile den Namen der neuen Sprache an, in der Form `XY.ts`, wobei XY der Sprachcode ist.
** Achten Sie bitte darauf ein Leerzeichen zwischen den einzelnen Sprachen zu lassen
@ -107,10 +468,10 @@ So fügt man eine neue Sprache hinzu:
* Wählen Sie die "Target Language", also Zielsprache, aus und benutzen das Programm um eine Übersetzung anzufertigen.
* Senden Sie uns bitte die .ts Datei, z.B. per E-Mail an info@laborejo.org (s.u bei Bugs und Programmfehler für mehr Kontaktmöglichkeiten)
Die Übersetzung können Sie auch selbst, zum Testen, in Patroneo einbinden. Dafür sind rudimentäre
Die Übersetzung können Sie auch selbst, zum Testen, einbinden. Dafür sind rudimentäre
Python Kentnisse nötig.
* Im Qt Linguist "Datei" Menü ist eine "Release" Option. Das erstellt eine `.qm` Datei im gleichen Verzeichnis wie die `.ts` Datei.* Bearbeiten Sie `template/qtgui/resources/resources.qrc` und kopieren die Zeile `<file>translations/de.qm</file>` . Dabei das Länderkürzel zum Neuen ändern.
* Im Qt Linguist "Datei" Menü ist eine "Release" Option. Das erstellt eine `.qm` Datei im gleichen Verzeichnis wie die `.ts` Datei.* Bearbeiten Sie `qtgui/resources/resources.qrc` und kopieren die Zeile `<file>translations/de.qm</file>` . Dabei das Länderkürzel zum Neuen ändern.
* Führen Sie `sh buildresources.sh` aus
* Bearbeiten Sie `engine/config.py`: Die neue Sprache hinzufügen. z.B. `{"German":"de.qm", "Esperanto:"eo.qm"}`
** Um den Sprachstring herauszufinden öffnen Sie den `python3`-Interpreter im Terminal und führen aus:

380
documentation/german.part.adoc

@ -1,61 +1,377 @@
== Präambel
SM ist Convenience
Jeder klick ist einer zuviel
Kontrolle und Übersicht
Session Management führt zur Vereinfachung von Arbeitsabläufen, Übersicht und Kontrolle über
Programme und Daten und eine gehörige Portion positive Bequemlichkeit :)
Kein Programm existiert für sich alleine, denn kein Programm kann alles leisten, was für heutige
Musikproduktion nötig ist.
== Benutzung
Direkt ersichtlich ist das in einer JACK Umgebung, die prinzipiell modular ist: Verschiedene
Programme erfüllen verschiedene Zwecke und "sprechen" miteinander, indem sie sich Daten schicken.
Ein Sequencer schickt Midi an einen Sampler oder Synthesizer, der mit einem Plugin-Host für Effekte
verbunden ist usw.
Kurzerklärung, nochmal Readme zusammengefasst in zwei Sätzen.
Selbst die monolithischsten All-In-One DAWs müssen, oder möchten, irgendwann mit der Außenwelt
kommunizieren. z.B. um sich mit einem Screenrecorder oder Streamingprogramm zu verbinden, einen
Wordprozessor mit Aufnahmereihenfolge oder Liedtexten zu starten, um Musik zu visualisieren oder (um
ehrlich zu bleiben) eine Funktion zu nutzen, die es in diesem Programm eben nicht gibt.
== Bedienung
Im folgenden wird erklärt, wie Argodejo bedient wird.
Einen Großteil der Arbeit erledigt bereits das JACK-Subsystem. Alle Programme können ihre Musik in
Echtzeit teilen, verfügen über synchronisierte Timelines und spielen im gleichen Tempo.
Was übrig bleibt ist die leidige Arbeit jedesmal alle Programme zu starten, die Projektdateien zu
laden, alle Audiokanäle zu verbinden usw. Session Management im allgemeinen (z.B. extra
geschriebene Starter-Scriptdateien) und Argodejo im speziellen nehmen Ihnen diese Arbeit ab, oder
vereinfachen sie zumindest stark.
=== Schnellstart
Um die wichtigsten Funktionen und Arbeitsabläufe kennenzulernen ist dieses Video erstellt worden.
Im Gegensatz zum erwähnten selbstgeschriebenen Script müssen Sie sich nicht im Vorraus für ein
Setup entscheiden, sondern alles wird automatisch verwaltet, solange Sie alles durch den Session
Manager Argodejo starten.
video::https://www.laborejo.org/documentation/patroneo/patroneo-quickstart-german.mp4[width=500]
Oder auf Youtube
=== Anwendungsbeispiel
video::mr-_d9gw0Xw[youtube, width=500]
* Argodejo starten (Startmenü, Terminal etc.)
* Man befindet sich nun in der "Schnellen Ansicht" um eine Session zu starten
* Der große Knopf: "Starte Neue Session"
* Nun bekommt man eine Auswahl an Programmen:
* Ein einfacher Klick mit der Maus startet ein Programm
* Ein weiterer Klick versteckt (oder zeigt anschließend) dessen grafische Oberfläche
* Sollte das Programm abstürzen bekommt man das signalisiert und kann es neustarten.
* Audio- und Midiports können nun in einer Patchbay miteinander verbunden werden. Die Verbindungen werden in Argodejo gespeichert.
* Um andere Programme und erweiterte Funktionen zu bekommen kann man in den Tab "Volle Ansicht" wechseln
* Der Name der Session ist bisher einfach ein Datum. Durch Klick auf dieses kann man einen richtigen Namen eingeben. Etwa "Mein Lied"
* Ist man soweit fertig kommt man durch den Knopf "Speichern und Schließen" wieder in die Sessionauswahl zurück
* Nun könnte Argodejo geschlossen werden.
* Alle gespeicherten Daten liegen in einem einzigen Verzeichnis auf der Festplatte (`~/NSM Sessions/Mein Lied`)
* Die Session kann weitergeführt werden: Nach dem Klick auf den Namen starten alle Programme automatisch und verbinden ihre JACK-Ports untereinander.
Die "Schnelle Ansicht" ist ein guter Einstieg. Üblicherweise möchte man jedoch bald in die volle
Ansicht wechseln, und sei es nur um ein Programm zwei mal zu starten oder um zwischendurch manuell
zu speichern.
=== Grundlagen
High-Level Erklärung wie der Workflow ist.
== Die Schnelle Ansicht
== Beschreibung der grafischen Oberfläche und ihrer Funktionen
Benutze die Suchfunktion deines Browsers um nach den einzelnen Buchstaben wie [B] und deren Erläuterung zu suchen.
Die Schnelle Ansicht ist eine aufs Minimum reduzierte Umgebung. Sie, als Benutzer, sollen so wenig
Entscheidungen wie möglich zu treffen haben und so schnell wie möglich (mit den wenigstens Klicks)
eine alte Session starten oder eine neue erstellen können.
image::overview-german.png[Screenshot mit Beschriftung, link="overview-german.png"]
Aus Stabilitätsgründen werden nur Programme zum Starten angeboten, von denen bekannt ist, dass Sie
korrekt mit dem Session Management Argodejos zusammenarbeiten.
Ein-Satz Beschreibung der GUI.
Die Schnelle Ansicht ist lediglich eine Ansicht. Es besteht kein technischer Unterschied zur vollen
Session und Sie können jederzeit hin- und herschalten.
Beschreibung der generellen einzelnen Elemente mit *[A]* usw.
Kurze beschreibung des Menüs.
Es gibt zwei Views, zwischen beiden kann gewechselt werden.
=== Session Auswählen
=== Quick View
Hier gibt es nur zwei Möglichkeiten: Klicken Sie auf "Starte Neue Session" um dies zu tun, oder
wählen Sie eine der bestehenden Sessions aus um diese fortzuführen (sofern vorhanden).
==== Quick Session Auswählen
=== In einer Session
==== Quick Session läuft
Der Name kann geändert werden. Wir empfehlen ein Datum in der Form YYYY-MM-DD gefolgt von einem
aussagekräftigen Namen. Bitte beachten Sie, dass die Namensänderung erst wirksam wird (z.B. in Form
des Sessionvereichnisses auf der Platte) wenn Sie die Session schließen.
=== Full View
Als nächstes steht ein größeres Textfeld für Notizen zur Verfügung. Schreiben Sie was Sie möchten.
TODO-Listen, Liedtexte, Credits und Quellen von externen Samples etc.
==== Full View läuft
Programme werden durch Icons symbolisiert. Ein Mausklick startet das Programm (das kann einen
Moment dauern, darauf haben wir keinen Einfluss). Der Status des Programmes wird durch ein Symbol
dargestellt: Das "Play"-Symbol für das laufende Programm, ein Auge bedeutet "Programmfenster
versteckt", das "Power On/Off"-Symbol bedeutet, dass Programm wurde beendet (oder Absturz).
=== Tray Icon
Falls das Programm es unterstützt kann ein laufendes Programmfenster versteckt werden. z.B. ein
Synthesizer, einmal eingerichtet, muss nicht permanent zu sehen sein. Klicken Sie einfach erneut
auf das Programmicon. Entweder passiert nichts (das Programm unterstützt es nicht) oder es wird
versteckt. Ein weiterer Klick auf ein versteckes Fenster zeigt es wieder. Jedes Programm ist selbst
dafür verantwortlich ob es seinen Fensterzustand speichert. Manche Programme starten bereits
versteckt.
Es gibt *keine* Möglichkeit ein Programm in dieser Ansicht zu beenden. Wechseln Sie hierzu in die
volle Ansicht oder benutzen Sie die Schließenfunktion des Programmes selbst.
=== Advanced Options
Es gibt auch *keine* Möglichkeit ein Programm mehrfach zu starten, z.B. für einen Synthesizer pro
Spur. Wechseln sie hierzu in die volle Ansicht. Wenn Sie Programme durch die volle Ansicht mehrfach
gestartet haben können Sie weiterhin die schnelle Ansicht benutzen um die Session zu verwalten,
allerdings ist nicht definiert auf welche Programminstanz sich ein Klick auf das Programmicon (z.B.
zum Verstecken) auswirkt. Mehrere Instanzen sind ein klares Zeichen dafür, dass Sie bereit für die
volle Ansicht sind.
Eigene Executable-Pfade
Eigene Whiteliste für den Quickstartmodus (und fullview)
Wie Sie irgendwann feststellen werden sind nicht *alle* verfügbaren Programme in der Liste, und es
gibt auch keine Möglichkeit Programme zu starten die zwar gut in einer Session funktionieren (z.B.
ein Stimmgerät), aber nicht explizit dafür geschrieben sind, z.B. ihren Status nicht zurückmelden.
Diese Programme sollten Sie besser in der vollen Ansicht verwalten.
Ist ein Programm leider abgestürzt können Sie es nur neu starten und auf dessen automatische
Speicherung hoffen. Viel Glück.
== Sonstige Anmerkungen und FAQ
Alles mögliche, Hintergrundinformationen, Argumentation etc.
== Die Volle Ansicht
Einige Konzepte wurde bereits im Kapitel "Die Schnelle Ansicht" erklärt. Es wird vorrausgesetzt,
dass Sie dieses gelesen haben.
=== Session Auswählen
Sessions stellen sich als Tabelle dar, die Sie durch den Klick auf eine Spaltenüberschrift ordnen
können. So wird hier gezeigt wie die Session heißt und wann das letzte mal gespeichert wurde, wohl
die beiden wichtigsten Informationen. Dann wird gezeigt wie viele Programme/Clients die Session
verwaltet und ob sie Symbolische Links enthält. Letzteres steht wahrscheinlich auf "Ja", wenn Sie
einen Sampler o.ä. benutzen, der große Audiodateien geladen hat. Diese werden zunächst nur in die
Session gelinkt, und nicht kopiert, um Speicherplatz zu sparen. Der angezeigte Speicherverbrauch
ist nicht der tatsächliche Verbrauch, sondern beinhaltet die Größen der Symlinks. Erst wenn Sie die
Session archivieren oder die Links durch reale Dateien ersetzen stimmt die angezeigte Zahl.
Schließlich wird auch das Verzeichnis angegeben, in dem die Dateien tatsächlich gespeichert sind.
Sessions stellen den Verzeichnisbaum dar. Eine Session ist immer ein "Blatt" und kann keine
Subsessions enthalten. Sie können beim Anlegen oder Umbenennen die Sessions auch im Baum anordnen
indem Sie die gewohnte Schrägstrichschreibweise benutzen: `song123` -> `Neues Album/Song 123` oder
`Versuche/asdf` -> `Romantische Pop-Balladen/Mein Herz wird weiter schlagen`. Wie Sie ihre Sessions
organisieren, und wie viele Unterverzeichnisse Sie anlegen, steht Ihnen frei. Es ist allerdings
nicht erlaubt den Namen mit `/` anfangen zu lassen oder die speziellen Zeichen `..` zu benutzen.
Die Baumansicht kann durch eine Checkbox an der linken Seite deaktiviert werden, um etwa besser
sortieren zu können. Das ist nur eine Ansicht, ihre Daten bleiben unangetastet.
Jede Session verfügt über ein Kontextmenü (z.B. rechte Maustaste) mit weiteren Optionen: Sie können
eine Session umbennen, löschen (inkl. aller dazugehörigen Dateien auf der Festplatte!) und mehr.
Diese Funktionen sind gleichwertig zu ihrem Dateimanager. Falls Sie möchten, können Sie auch
einfach die Sessionverzeichnisse selbst umbennen, verschieben oder löschen (sofern diese nicht
gerade geöffnet ist). Dazu muss Argodejo nicht neugestartet werden, es reagiert selbst auf die
Änderungen.
Hier gibt es auch die Möglichkeit eine sogenannte "Lock"-Datei zu entfernen. Das ist eine Datei,
die angelegt wird sobald die Session startet und gelöscht wenn beendet. Damit weiß das Programm,
welche Session gerade läuft. Ist eine Lockdatei vorhanden, kann die Session nicht geöffnet werden!
Das sollte im normalen Betrieb nicht vorkommen. Falls aber ein Stromausfall o.ä. mitten in einer
Session passiert ist kann die Lockdatei übrig bleiben, obwohl offensichtlich keine Session geöffnet
ist. In diesem Fall entsperren Sie die Session hierdurch manuell.
Klicken Sie auf "Neue Session" um diese anzulegen. Im Gegensatz zur schnellen Ansicht müssen Sie
hier den Namen direkt eingeben. Wie oben erwäht können Sie dazu den Verzeichnisbaum benutzen.
Darüberhinaus wird angeboten verschiedene (fast schon obligatorische) Programme direkt
mitzustarten. Im Normalfall sollte man alle Vorschläge akzeptieren. Es gibt jederzeit die
Möglichkeit diese wieder zu entfernen.
Ein Doppelklick auf eine existierende Session (oder der Knopf "Lade Ausgewählte") machen genau das.
=== In einer Session
Die volle Ansicht ist in drei Bereiche eingeteilt: Programmstarter, Programme in der laufenden Session
und die Session-Notizen. Dazu gibt es ein dynamisches Menü.
Auf der linken Seite sehen die den Programmstarter. Ein Doppelklick startet eine Programminstanz in
der Session. Sie können ein Programm auch mehrmals starten. Welche Programme zur Verfügung stehen
entnehmen Sie bitte dem Kapitel "Programm-Datenbank".
==== Laufende Programm
Gestartete Programme befinden sich auf der rechten Seite. Ein Doppelklick schaltet die Sichtbarkeit
um, sofern das Programm unterstüzt sein Fenster zu verstecken. Falls nicht passiert nichts.
Pro Programm gibt es folgende Informationen:
* Der Name (evtl. mit Icon)
* Ein "Label", das Programme frei benutzen können (z.B. zeigt Fluajho hier das geladene .sf2 an)
* Den Programmstatus (auf Englisch, da es sich um definierte Schlüsselworte handelt).
* Stopped / Gestoppt, läuft nicht
* Ready / Läuft und Bereit
* Launch / Startet. Wenn das Programm hier stehen bleibt, aber funktioniert, handelt es sich um eins, dass nicht speziell den Sessionmodus unterstützt. Argodejo kann nicht wissen, ob es bereits läuft oder nicht. Alles ist in Ordnung! :)
* Weitere Zustände sind nur Übergänge und meist nur sehr kurz zu sehen, z.B. Open / Läd gerade
* Sichtbarkeit (Ein Kreuz für sichtbar, Leer für unsichtbar)
* Änderungen - Gibt es momentan ungespeicherte Änderungen?
* ID - Ein eindeutiges Kürzel mit dem man auch mehrere Instanzen des gleichen Programmes auseinander halten kann
Alle weiteren Funktionen sind durch das Menü oder Kontextmenü zugänglich. Ein Klick auf ein Programm
wählt es aus, und das Clientmenü in der Menüleiste gilt nun dafür. Alternativ kann mit Rechtsklick
auf den Eintrag das Kontextmenü geöffnet werden, das identisch ist.
Neben den selbsterklärenden Funktionen gibt es noch:
* Umbenennen gibt dem Programm einen selbstgewählten Namen, besonders um seinen Zweck deutlich zu machen und es besser von anderen zu unterscheiden. Diese Funktion steht nur zur Verfügung, wenn `nsm-data` in der Session läuft.
* Speichern weist nur dieses Programm an abzuspeichern
* Entfernen nimmt das Programm aus der Session. Dabei werden jedoch keine Dateien gelöscht. Zur Zeit muss leider noch von Hand im Dateimanager "aufgeräumt" werden.
Befindet sich der Client "nsm-data" in der Session (das ist Voreinstellung) steht im unteren
Bereich ein großes Textfeld für Notizen zur Verfügung. Es ist dasselbe wie in der schnellen
Ansicht. Schreiben Sie was Sie möchten: TODO-Listen, Liedtexte, Credits und Quellen von externen
Samples etc.
==== Das Session Menü
Im Gegensatz zur schnellen Ansicht stehen hier weitere Menüs zur Verfügung, die auch über die
üblichen Tastaturkürzel zu erreichen sind (Strg+S für Speichern etc.).
* Speichern weist alle Programme an zu speichern, die Session läuft weiter
* Speichern und Schließen beendet die Session, vorher speichern alle Programme noch einmal ab
* Abbrechen beendet die Session, ohne dass die Programme abspeichern
* Speichern Unter speichert die Session unter einem anderen Namen und schließt die laufende ohne abzuspeichern. Ab nun arbeitet man in der neuen Session.
* Client Hinzufügen bietet die Option ein beliebiges Programm hinzuzufügen, egal ob es in der Programmdatenbank ist, oder nicht.
* Es werden alle installierten Programme vorgeschlagen. Argodejo überprüft diese nicht auf Sinnhaftigkeit für eine Musik-Session, oder auch nur auf Lauffähigkeit. Sie finden hier `ls` wie auch `argodejo` selbst.
== Programm-Datenbank
Argodejos Programmstarter basiert auf einer Programmdatenbank, die sich teilweise selbst erstellt,
teilweise von Hand eingepflegt wurde. Das bedeutet nichts anderes, als das alle installieren
Programme in ihrem System überprüft werden (wie ein Startmenü) und Ihnen im Argodejo-Starter nur
das angeboten wird, was Sie auch tatsächlich installiert haben.
Beim ersten Start wird daher die Programmdatenbank erstellt. Je nach System kann dies einige
Augenblicke bis einige Minuten dauern.
Wenn Sie Audio-Programme neu installieren, oder deinstallieren müssen Sie die Datenbank selbst
aktualisieren. Im Steuerungsmenü gibt es den Befehl. Programminstallationen sind sogar möglich
während Argodejo läuft (auch in einer Session). Nach einem DB-Update stehen Ihnen sofort alle
neuen Programme zur Verfügung.
Wenn Sie ein installiertes Programm nicht in unserer Liste sehen, aber von dem Sie sicher sind,
dass es Session Management unterstützt melden Sie es bitte an info@laborejo.org oder unter
https://laborejo.org/bugs .
Darüberhinaus können Sie (in der vollen Ansicht) Programme hinzufügen, die nicht in der Datenbank
sind. Siehe dort.
=== Für Fortgeschrittene
Die eiserne Regel ist, dass nur Programme im $PATH in die Datenbank aufgenommen werden. Absolute
Pfade sind unzulässig, selbst wenn man den Programmnamen selbst durch das Menü eingibt. Allerdings
möchte man manchmal Software nur ausprobieren, oder ist selbst Entwickler und möchte ohne
systemweite Installation testen.
In den Einstellungen im Steuerungsmenü gibt es einen Tab "Programm-PATH", wo Sie eigene Suchpfade
hinzufügen können. Ein absoluter Pfad pro Zeile, keine Wildcards, Trailing Slash spielt keine
Rolle.
Zum Beispiel: `/home/myuser/sources/newsequencer/bin/`
Diese Suchpfade werden nicht in der Session gespeichert sondern lokal in ihrem `~/.config`
Verzeichnis.
== Tray
Argodejo verfügt über ein Tray-Icon, sofern ihr Windowmanager das unterstüzt. Ein Klick auf das
Trayicon zeigt oder versteckt Argodejo.
Schließt man Argodejo über die normale Windowmanagerfunktion, etwa ein Klick auf das [X], wird das
Programm und die Session nicht beendet, sondern in den Tray minimiert.
Ist das Argodejofenster versteckt und wird über das Traymenü geschlossen (s.u.) wird Argodejo beim
nächsten Start auch als Trayicon gestartet. Somit ist es möglich weiter zu arbeiten ohne sich mit
dem Programmfenster befassen zu müssen.
Ein Rechtsklick auf das Icon bietet Schnellzugriff auf häufige Funktionen:
Sie können hier die zuletzt benutzen Sessions direkt starten.
Läuft bereits eine Session können Sie speichern, abbrechen etc.
Argodejo kann hier auch komplett beendet werden.
== Netzwerk-Sessions
Die Funktionalität Sessions im lokalen Netzwerk zu verteilen ist für eine spätere Programmversion
vorgesehen.
== Programmparameter
Als fortgeschrittener Benutzer können Sie Argodejo im Terminal starten und dort einige Parameter
angeben. Für eine vollständige Liste benutzen Sie bitte den --help Parameter.
Eine Auswahl:
* `--session-root /home/benutzer/produktion2020` setzt das Wurzelverzeichnis. Nur Sessions in diesem Verzeichnis werden angezeigt, alles wird doch gespeichert.
* `--session neuesAlbum/meinLied` startet direkt die angegebene Session.
* `--url osc.udp://myhost.localdomain:14294/` verbindet sich zu diesem Server, falls vorhanden, oder startet den internen Session-Server unter dieser Adresse. Dies ist eine sehr technische Option und wird wahrscheinlich nicht benötigt.
== Verschiedenes / Erklärungen / FAQ
*Session Speichern und Beenden reagiert langsam*:
Argodejo ist kein Einzelprogramm wie ein Office-Writer. Die teilnehmenden Programme in der Session
sind auch keine Plugins. Wenn Sie die Session beenden wird ein Signal an alle teilnehmenden
Programm gesendet, dass sie speichern sollen. Das kann ein paar Momente dauern, in denen Sie "live"
sehen, wie die einzelnen Programme sich beenden und aus der Session verschwinden. Es ist alles in
Ordnung.
*Ich habe ein Programm hinzugefügt aber es speichert nicht mit der Session*:
Unterstützt das Programm Session Management? Wenn nicht, kann Argodejo nichts tun.
Aber Sie können die Programmentwickler bitten mit uns Kontakt aufzunehmen (info@laborejo.org)
und wir können zusammen an der Unterstützung arbeiten.
*Die Programme hängen beim Beenden*:
Das tut uns leid. Eigentlich sind die Programme selbst schuld, aber auch wir sind daran
interessiert die Situation zu verbessen, indem wir in Zukunft zumindest eine Notlösung anbieten.
*Argodejo startet nicht mehr! Ich starte das Programm aber ich sehe nichts.*: Wahrscheinlich ist
Argodejo unsichtbar, weil Sie es aus dem Tray heraus beendet hatten. Ist es im Tray? Eigentlich
hätte ein kleines Nachrichtenfenster aufpoppen sollen. Falls in ihrem Window-Manager kein Tray
vorhanden ist sollte das Programm immer sichtbar sein. Bei besonderen Window-Managern (bei der
großen Auswahl in Linux) kann es sein, dass die Tray-Erkennung nicht richtig funktioniert hat.
Notfallplan ist es `~/.config/LaborejoSoftwareSuite/argodejo` zu löschen. Dabei werden KEINE
Sessions gelöscht, sondern nur lokale Einstellungen wie die Sichtbarkeit des Programmfensters. Beim
nächsten Start wird Argodejo sich verhalten wie beim allerersten.
*JACK ist abgestürzt. Viele Programme hängen. Was tun um Datenverlust zu vermeiden?*:
Vermutlich sind bereits viele Programme der Session nicht mehr richtig lauffähig und reagieren
nicht mehr. Am besten benutzen Sie die `Session Abbrechen` Funktion und starten alles neu. Wenn die
Daten tatsächlich schon lange ungespeichert waren kann man auch ein Speichern/Beenden wagen. Dann
kann es aber sein, dass man beim nächsten Start einige Jack connections von Hand neu ziehen muss.
Wer extrem sicher gehen möchte kann vor dem Beenden der Session (mit unweigerlichen abstürzen)
manuell im Dateimanager eine Kopie des Session-Verzeichnisses machen.
*Ein Programmupdate hat meine Session kaputtgemacht, weil es seine Dateien nicht mehr laden kann.*:
Das ist leider ein Problem, dass auch Argodejo nicht lösen kann. Es passiert mit LV2-Plugins ebenso
wie mit alle anderen Software, etwa Officeprogramme. Falls Sie befürchten, dass ein Programm in
Zukunft inkompatibel wird notieren Sie sich dessen Versionsnummer in den Session-Notizen, damit Sie
zumindest zur Not die alte Programmversion wieder installieren können (auch wenn das sehr
umständlich ist).
*Was ist besser? Monolithische DAW oder Session Management?*:
Warum nicht beides? Es gibt keinen Konflikt.
Session Management lohnt sich ab zwei teilnehmenden Programmen, und auf die kommt man so gut wie
immer.
Sie sollten sich nicht genötigt fühlen plötzlich alles modular mit Einzelprogrammen zu machen, nur
weil Sie einen Session Manager benutzen.
Argodejo ist dafür da, ihre Musikproduktion einfacher zu machen. Wenn es schneller und bequemer ist
alle Plugins und Effekte z.B. in einer einzelnen Carla-Instanz zu verwalten dann sollten Sie genau
das machen.
Wenn Sie prinzipiell alles in Ardour machen wollen, machen Sie das, aber starten Sie Ardour trotzdem
im Session Management, denn kein Programm kann alles alleine, und der Zeitpunkt wird kommen, an dem
Sie ein weiteres hinzufügen.
Session Management ist andere Hirarchieebene. So sind Sequencer oder DAWs selbst keine Plugins.
Patroneo gehört nicht "in" Ardour und Ardour gehört nicht "in" Laborejo. Und schon in diesem Beispiel
erfüllt jedes der Programme eine Rolle, die die anderen beiden nicht leisten können, da sie einer
anderen Design-Philosophie folgen. Und mehr:
Manche Programme können keine Plugins hosten, manche können keine Audiodateien exportieren. Das
sind deswegen keine schlechten Programme, sondern welche, die sich auf eine Aufgabe konzentrieren.
Darüberhinaus gibt es eine Menge Software, die nicht direkt Musikproduktion ausübt,
aber trotzdem inhaltlich dazu gehört: Open Broadcast Studio (OBS), Musikplayer, Schreib-
und Grafikprogramme etc.
*Argodejo beinhaltet Funktionalität, die nicht seine Aufgabe ist*: Musikproduktion ist sehr komplex
und Komplexität ist unvermeidlich. Sie ist wie ein Wasserbett: Drückt man die auf der einen Seite
runter, muss etwas an einen anderen Stelle hochdrücken. Macht man ein programm "clean and lean",
und implementiert damit nur einen Teil des kompletten Arbeitsablaufs, dann kommt der fehlende Teil
woanders wieder hoch. Ein minimalistischer Session Manager provoziert Plugins (nicht LV2),
Helper-Scripts, Workarounds und Hacks. z.B. Dateiverwaltung nicht mit einzuschließen provoziert
Anwender-Fehler im Dateimanager (wie das Löschen der falschen Dateien). Wenn der SM weiß was zu tun
ist, und er es tun kann, dann soll er es machen.
Oder Abstürze: Technisch gesehen sind abstürzende Programme nicht das "Problem" des Session
Managers, aber sie sind Teil der Softwarewirklichkeit. Abstürze passieren jeden Tag und nun muss
man damit umgehen. Kann Argodejo die Arbeit vereinfachen und helfen den guten Zustand wieder
herzustellen? Dann sollte das geschehen.
Session Management ist außerdem eine Chance auch komplexe technische Szenarios zu vereinfachen, z.B.
Sessions über das Netzwerk zu verteilen.

615
documentation/out/english.html

@ -446,12 +446,43 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
<div id="toctitle">Table of Contents</div>
<ul class="sectlevel1">
<li><a href="#_introduction">1. Introduction</a></li>
<li><a href="#_installation_and_start">2. Installation and Start</a></li>
<li><a href="#_help_and_development">3. Help and Development</a>
<li><a href="#_preamble">2. Preamble</a>
<ul class="sectlevel2">
<li><a href="#_testing_and_reporting_errors">3.1. Testing and Reporting Errors</a></li>
<li><a href="#_programming">3.2. Programming</a></li>
<li><a href="#_translations">3.3. Translations</a></li>
<li><a href="#_example">2.1. Example</a></li>
</ul>
</li>
<li><a href="#_quick_view">3. Quick View</a>
<ul class="sectlevel2">
<li><a href="#_selecting_a_session">3.1. Selecting a Session</a></li>
<li><a href="#_in_a_session">3.2. In a Session</a></li>
</ul>
</li>
<li><a href="#_full_view">4. Full View</a>
<ul class="sectlevel2">
<li><a href="#_selecting_a_session_2">4.1. Selecting a Session</a></li>
<li><a href="#_in_a_session_2">4.2. In a Session</a>
<ul class="sectlevel3">
<li><a href="#_running_programs">4.2.1. Running Programs</a></li>
<li><a href="#_the_session_menu">4.2.2. The Session Menu</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_program_database">5. Program-Database</a>
<ul class="sectlevel2">
<li><a href="#_for_advanced_users">5.1. For advanced users</a></li>
</ul>
</li>
<li><a href="#_tray">6. Tray</a></li>
<li><a href="#_network_sessions">7. Network Sessions</a></li>
<li><a href="#_program_parameters">8. Program parameters</a></li>
<li><a href="#_miscellaneous_explanations_faq">9. Miscellaneous / Explanations / FAQ</a></li>
<li><a href="#_installation_and_start">10. Installation and Start</a></li>
<li><a href="#_help_and_development">11. Help and Development</a>
<ul class="sectlevel2">
<li><a href="#_testing_and_reporting_errors">11.1. Testing and Reporting Errors</a></li>
<li><a href="#_programming">11.2. Programming</a></li>
<li><a href="#_translations">11.3. Translations</a></li>
</ul>
</li>
</ul>
@ -491,106 +522,600 @@ break things when trying out corner cases and hacks.</p>
<p>That said, for single-computer sessions with just one daemon and one GUI at the same time Argodejo
should provide a good user experience.</p>
</div>
<div class="paragraph">
<p>&lt;manual&gt;</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_installation_and_start">2. Installation and Start</h2>
<h2 id="_preamble">2. Preamble</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo 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.</p>
<p>Session Management leads to simplification of workflows, overview and control over
programs and data and a good portion of convenience :)</p>
</div>
<div class="paragraph">
<p>No program exists on its own, because no program can do everything that is necessary for today&#8217;s
music production.</p>
</div>
<div class="paragraph">
<p>This is obvious in a JACK environment, which is fundamentally modular: Different
programs fulfill different functions and "talk" to each other by sending data to each other.
A sequencer sends MIDI to a sampler or synthesizer, which is connected to a plug-in host for effects etc.</p>
</div>
<div class="paragraph">
<p>Even the most monolithic all-in-one DAWs have to, or want to, eventually connect to the outside
world. For example, to connect to a screen recorder or streaming program, include a word processor
for recording order or lyrics, or to use a function that is simply not available in the DAW.</p>
</div>
<div class="paragraph">
<p>If available in the package repository, please continue reading directly at "Start argodejo from Non Session Manager".
If not, you can build Argodejo yourself.</p>
<p>Much of the work is already done by the JACK subsystem. All programs can share their music in
real time, have synchronized timelines and play in the same tempo.</p>
</div>
<div class="paragraph">
<p>What remains is the tedious work of always starting all programs, loading project files, connecting
audio channels etc. Session management in general (e.g. specifically written starter script files)
and Argodejo in particular do this work for you, or at the very least, greatly simplify it.</p>
</div>
<div class="paragraph">
<p>In contrast to the self-written script mentioned above, you don&#8217;t have to decide in advance on a
setup, but everything is saved automatically as long as you manage everything through Argodejo.</p>
</div>
<div class="sect2">
<h3 id="_example">2.1. Example</h3>
<div class="ulist">
<div class="title">Build and Install</div>
<ul>
<li>
<p>Please check the supplied README.md for dependencies.</p>
<p>Start Argodejo (Start menu, terminal etc.)</p>
</li>
<li>
<p>You can download a release or clone the git version</p>
<div class="ulist">
<ul>
<p>You are now in the "Quick View" to start a session</p>
</li>
<li>
<p>Download the latest version from <a href="https://www.laborejo.org/downloads" class="bare">https://www.laborejo.org/downloads</a> and extract it.</p>
<p>Press the big button "Start New Session"</p>
</li>
<li>
<p>git clone <a href="https://git.laborejo.org/lss/argodejo.git" class="bare">https://git.laborejo.org/lss/argodejo.git</a></p>
<p>Now you get a choice of programs:</p>
</li>
<li>
<p>A single click with the mouse starts a program</p>
</li>
<li>
<p>Another click hides (or subsequently shows) its graphical interface</p>
</li>
<li>
<p>If the program crashes you get a warning and can restart it.</p>
</li>
<li>
<p>Audio and midi ports can now be connected together in a patchbay. The connections are stored in Argodejo.</p>
</li>
<li>
<p>To get more programs and advanced features you can switch to the tab "Full View</p>
</li>
<li>
<p>The name of the session so far is simply a date. By clicking on it you can enter a real name. Like "My song"</p>
</li>
<li>
<p>If you are finished you can return to the session selection by pressing the button "Save and Close"</p>
</li>
<li>
<p>Now Argodejo could be closed itself.</p>
</li>
<li>
<p>All stored data is in a single directory on the hard disk (<code>~/NSM Sessions/My Song</code>)</p>
</li>
<li>
<p>The session can be resumed: After clicking on the name, all programs start automatically and connect their JACK ports to among themselves.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>"Quick View" is a good start. However, usually one would like to get into the full view, even if it
is only to start a program twice or to save manually.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_quick_view">3. Quick View</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The quick view is an environment reduced to the minimum. You, as a user, should have to make as few
decisions as possible and start an old session or create a new one as quickly as possible (with the
at least clicks).</p>
</div>
<div class="paragraph">
<p>For stability reasons, only programs are shown that are known to
work correctly with Argodejos session management.</p>
</div>
<div class="paragraph">
<p>The Quick View is only a view. There is no technical difference to the full view and you can switch
back and forth at any time.</p>
</div>
<div class="sect2">
<h3 id="_selecting_a_session">3.1. Selecting a Session</h3>
<div class="paragraph">
<p>There are only two options here: Click on "Start New Session" to do so, or
select one of the existing sessions to resume it (if available).</p>
</div>
</div>
<div class="sect2">
<h3 id="_in_a_session">3.2. In a Session</h3>
<div class="paragraph">
<p>The name can be changed. We recommend a date in the form YYYY-MM-DD followed by a informative name.
Please note that the name change will only take effect (e.g. renaming the session directory on
disk) when you close the session.</p>
</div>
<div class="paragraph">
<p>Next, a larger text field is available for notes. Write what you want. TODO lists, lyrics, credits
and sources of external samples etc.</p>
</div>
<div class="paragraph">
<p>Programs are symbolized by icons. A mouse click starts the program (which can take a while, we have
no influence on that). The status of the program is indicated by a symbol: The "Play" symbol for
the running program, the eye means "program window hidden", the "Power On/Off" symbol means that
the program has been terminated (or crashed).</p>
</div>
<div class="paragraph">
<p>If the program supports it, a running program window can be hidden. Synthesizers, once set up, do
not have to be permanently visible. Just click on the program icon again. Either nothing happens
(the program does not support it) or the window will hide. Another click on a hidden window shows
it again. Every program itself is responsible for whether it saves its window state. Also, some
programs already start hidden.</p>
</div>
<div class="paragraph">
<p>There is <strong>no</strong> way to end or remove a program in this view. To do this, switch to the full view or
use the close function of the program itself.</p>
</div>
<div class="paragraph">
<p>There is also <strong>no</strong> possibility to start a program multiple times, e.g. one synthesizer per
track. If you want to start multiple program instances through the full view times you can still
use the quick view to manage the general session, but it is not defined which program instance a
click on the icon (e.g. to hide) affects. Multiple instances are a clear indicator that you are
ready for the full view.</p>
</div>
<div class="paragraph">
<p>As you&#8217;ll eventually discover, not <strong>all</strong> available programs are in the list, and there there is
also no possibility to start programs that would work well in a session (e.g. a tuner), but are not
explicitly written for it, e.g. do not report their status. It is better to manage these programs
in full view.</p>
</div>
<div class="paragraph">
<p>If, unfortunately, a program has crashed, you can only restart it and hope its automatic saving
worked. Good luck.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_full_view">4. Full View</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Some concepts have already been explained in the chapter "Quick View". It is expected that you have
read this.</p>
</div>
<div class="sect2">
<h3 id="_selecting_a_session_2">4.1. Selecting a Session</h3>
<div class="paragraph">
<p>Sessions are displayed as a table, which you sort by clicking on a column header. Here is shown how
the session is called and when it was saved the last time, probably the two most important pieces
of information. Also shown is how many programs/clients are in the session and whether it contains
symbolic links. The latter is probably set to "Yes" if use a sampler, or similar, that contains
large audio files. These are initially only linked into the session, and not copied, to save disk
space. The displayed disk space usage is not the actual one, but includes the sizes of
symlink-targets. Only when you archive the session or replace the links with real files the number
becomes correct.</p>
</div>
<div class="paragraph">
<p>Finally, the directory in which the files are actually stored is also given.</p>
</div>
<div class="paragraph">
<p>Sessions represent the directory tree. A session is always a "leaf" and cannot include subsessions.
When creating or renaming sessions, you can also arrange them in the tree by using the usual slash
notation: <code>song123</code> &#8594; <code>New album/song 123</code> or <code>Test/asdf</code> &#8594; <code>Romantic pop ballads/My heart will
keep beating</code>. How to organize your sessions and how many subdirectories you create is up to you.
It is, however, not allowed to start the name with <code>/</code> or use the special characters <code>..</code>. The
tree view can be deactivated by a checkbox on the left side, e.g. to be able to sort them. This is
just a view, your data remains untouched.</p>
</div>
<div class="paragraph">
<p>Each session has a context menu (e.g. right mouse button) with further options: You can choose to
rename a session, delete it (including all associated files on the hard disk!) and more. These
functions are equivalent to your file manager. If you like, you can also use your file manager to
rename, move, or delete the session directories themselves (unless they are is currently open). You
don&#8217;t need to restart Argodejo to do this, it will respond to the changes while running.</p>
</div>
<div class="paragraph">
<p>There is also the possibility to remove a so-called "lock" file. This is a file which is created
when the session starts and deleted when it ends. This tells Argodejo which session is currently
running. If a lock file exists, the session cannot be opened! This should not happen during normal
operation. But if a power failure or similar occurs in the middle of a session, the lock file may
remain, although obviously no session is opened. In this case, unlock the session manually by
deleting the lock file.</p>
</div>
<div class="paragraph">
<p>Click on "New session" to create one. In contrast to the quick view, you must enter the name
directly . As mentioned above, you can use the directory tree. In addition, there are several
(almost obligatory) programs suggested to start with. Normally one should accept all suggestions.
There is always the option to remove them later.</p>
</div>
<div class="paragraph">
<p>A double click on an existing session (or the "Load Selected" button) does just that.</p>
</div>
</div>
<div class="sect2">
<h3 id="_in_a_session_2">4.2. In a Session</h3>
<div class="paragraph">
<p>The full view is divided into three areas: Program starter, programs in the current session
and the session notes. There is also a dynamic menu.</p>
</div>
<div class="paragraph">
<p>On the left side you see the program starter. A double-click starts a program instance in this
session. You can also start a program more than once. For available programs please refer to the
chapter "Program Database".</p>
</div>
<div class="sect3">
<h4 id="_running_programs">4.2.1. Running Programs</h4>
<div class="paragraph">
<p>Started programs are located on the right side. A double-click switches the visibility
to hide its window if the program supports it. If not, nothing happens.</p>
</div>
<div class="paragraph">
<p>The following information is available per program:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>The name (possibly with icon)</p>
</li>
<li>
<p>Change into the new directory and use these commands:</p>
<p>A "label" that programs can use freely (e.g. Fluajho shows the loaded .sf2 here)</p>
</li>
<li>
<p><code>./configure --prefix=/usr</code></p>
<p>The program status</p>
</li>
<li>
<p>Stopped , not running</p>
</li>
<li>
<p>Ready, running</p>
</li>
<li>
<p>Launch, If the status halts here but the programs works, it is one that does not specifically support session mode. Argodejo cannot know if it is already running or not. Everything is fine! :)</p>
</li>
<li>
<p>Other states are only transitions and usually only visible for a very short time, e.g. Open / Loading</p>
</li>
<li>
<p>Visibility (A cross for visible, blank for invisible)</p>
</li>
<li>
<p>Changes - Are there currently unsaved changes?</p>
</li>
<li>
<p>ID - A unique identifier that can be used to distinguish between multiple instances of the same program</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>All other functions are accessible via the menu or context menu. One click on a program selects it,
and the client menu in the menu bar will now apply to the client. Alternatively, you can
right-click on an entry for a context menu, which is identical to the menu.</p>
</div>
<div class="paragraph">
<p>In addition to self-explanatory functions there are also:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>The default prefix is /usr/local</p>
<p>Rename gives the program a self-chosen name, mostly to make its purpose clear and to distinguish it better from others. This feature is only available when 'nsm-data' is running in the session.</p>
</li>
<li>
<p>Save only tells this program to save</p>
</li>
<li>
<p>Remove takes the program out of the session. However, no files are deleted in the process. At the moment you have to "clean up" in your file manager by hand.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>If the client "nsm-data" is in the session (this is the default setting) the lower area provides a
large text field for notes. It is the same as in the quick view. Write what you want: TODO lists,
lyrics, credits and sources from external Samples etc.</p>
</div>
</div>
<div class="sect3">
<h4 id="_the_session_menu">4.2.2. The Session Menu</h4>
<div class="paragraph">
<p>In contrast to the quick view, full mode offers menus, which can also be accessed via the usual keyboard shortcuts (Ctrl+S for saving etc.).</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Save instructs all programs to save, the session continues to run</p>
</li>
<li>
<p><code>make</code></p>
<p>Save and Close ends the session, after all programs saved</p>
</li>
<li>
<p><code>sudo make install</code></p>
<p>Abort ends the session without saving the programs</p>
</li>
<li>
<p>Save As saves the session under a different name and closes the current session without saving. From now on you work under the new name.</p>
</li>
<li>
<p>Add Client offers the option to add any program, whether it is in the program database or not.</p>
</li>
<li>
<p>Any installed programs are suggested. Argodejo doesn&#8217;t check them for usefulness for a music session, or even for runnability. You will find <code>ls</code> here as well as <code>argodejo</code> itself.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_program_database">5. Program-Database</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejos launcher is based on a program database, which is partly self-generated, partly
maintained by hand. As in a start menu Argodejo will offer you only programs that are actually
installed on your system.</p>
</div>
<div class="paragraph">
<p>The database is created at the first start. Depending on your system, this can take some moments to
a few minutes.</p>
</div>
<div class="paragraph">
<p>If you are reinstalling or uninstalling audio programs, you will need to update the database via
the command in the control menu. Program installations and system changes are even possible while
Argodejo is running (even in a session). After a DB update you can immediately access all new
programs.</p>
</div>
<div class="paragraph">
<p>If you do not see an installed program in our launcher, but you are sure that it supports session
management please report it to <a href="mailto:info@laborejo.org">info@laborejo.org</a> or under <a href="https://laborejo.org/bugs" class="bare">https://laborejo.org/bugs</a> .</p>
</div>
<div class="paragraph">
<p>In addition, you can add (in full view) programs that are not in the database.</p>
</div>
<div class="sect2">
<h3 id="_for_advanced_users">5.1. For advanced users</h3>
<div class="paragraph">
<p>The strict rule is that only programs in the $PATH are included in the database. Absolutel paths
are not allowed, even if you enter the program name yourself through the menu. However sometimes
you just want to try out software, or you are a developer yourself and want to test without
system-wide installation.</p>
</div>
<div class="paragraph">
<p>In the control menu / settings is a tab "Program-PATH", where you can define and add your own
search paths. One absolute directory path per line, no wildcards, trailing slash don&#8217;t matter.</p>
</div>
<div class="paragraph">
<p>For example: <code>/home/myuser/sources/newsequencer/bin/</code></p>
</div>
<div class="paragraph">
<p>These search paths are not stored in the session, but locally in your <code>~/.config</code> directory.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_tray">6. Tray</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo has a tray icon, if your window manager supports it. A click on the trayicon shows or
hides Argodejo.</p>
</div>
<div class="paragraph">
<p>If you close Argodejo using the normal window manager function, such as a click on the [X], the
program and the session is not terminated, but minimized to the tray.</p>
</div>
<div class="paragraph">
<p>If the Argodejo window is hidden and closed via the tray menu (see below), Argodejo will be
minimized to the next start also started as tray icon. So it is possible to continue working
without having to deal with the program window.</p>
</div>
<div class="paragraph">
<p>A right click on the icon gives you access to common functions:</p>
</div>
<div class="paragraph">
<p>You can directly start the most recently used sessions.</p>
</div>
<div class="paragraph">
<p>If a session is already running you can save, cancel etc.</p>
</div>
<div class="paragraph">
<p>Argodejo can also be completely exited here.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_network_sessions">7. Network Sessions</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The functionality to distribute sessions over the local network is planned for a later program
version.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_program_parameters">8. Program parameters</h2>
<div class="sectionbody">
<div class="paragraph">
<p>As an advanced user, you can start Argodejo in the terminal and add some parameters.. For a
complete list please use the --help parameter.</p>
</div>
<div class="paragraph">
<p>For example:</p>
</div>
<div class="ulist">
<div class="title">Start argodejo from Non Session Manager (NSM)</div>
<ul>
<li>
<p>Run <code>non-session-manager</code></p>
<p><code>--session-root /home/user/production2030</code> sets the root directory. Only sessions in this directory are displayed, everything is stored here.</p>
</li>
<li>
<p>Press the <code>New</code> button, and enter a name for your piece of music.</p>
<p><code>--session newAlbum/mySong</code> starts the given session.</p>
</li>
<li>
<p>Press the <code>Add Client to Session</code> button, enter <code>argodejo</code> here, in lower case.</p>
<p><code>--url osc.udp://myhost.localdomain:14294/</code> connects to this server, if available, or starts the internal session server at this address. This is a very technical option and probably not needed.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_miscellaneous_explanations_faq">9. Miscellaneous / Explanations / FAQ</h2>
<div class="sectionbody">
<div class="paragraph">
<p><strong>Session Save and Exit responds slowly</strong>: Argodejo is not a standalone program like an word
processor. The participating programs in the session are not plugins either. When you end the
session a signal is sent to all participating client to save. This may take a few moments where
you are able to see "live" how individual programs terminate and disappear from the session.
Everything is fine.</p>
</div>
<div class="paragraph">
<p><strong>I have added a program but it does not save with the session</strong>: Does the program support session
management? If not, Argodejo cannot do much. But you can ask the program developers to contact us
(<a href="mailto:info@laborejo.org">info@laborejo.org</a>) and we can work together on support.</p>
</div>
<div class="paragraph">
<p><strong>The programs hang on exit</strong>: Sorry about that. Actually, the programs themselves are to blame, but
we are also interested in improving the situation by offering at least an emergency solution in the
future.</p>
</div>
<div class="paragraph">
<p><strong>Argodejo won&#8217;t start! I start the program but I can&#8217;t see anything</strong>: Most likely Argodejo is
running, but invisible, because you exited it from the tray last time. Is it in the tray? A
message should have popped up, maybe you missed it. If there is no tray in your window manager, the
program should always be visible. With all these special window managers in Linux it may be that
the tray detection did not work properly. Contingency plan is to delete
<code>~/.config/LaborejoSoftwareSuite/argodejo</code>. This will NOT remove any sessions, but only local
settings such as the visibility of the program window. At next start Argodejo will behave like the
very first start.</p>
</div>
<div class="paragraph">
<p><strong>JACK crashed. A lot of programs hang. What can I do to prevent data loss?</strong> Probably already many
programs in the session are not running properly and are not reacting anymore. The best thing to do
is to use the 'Abort Session' function and restart everything. If the data has actually been
unsaved for a long time, you can also dare to save/exit. It may be necessary to re-draw some jack,
or all, jack connections by hand at the next start. If you want to be on the safe side, you can
manually make a copy of the session directory in your file manager before ending the session (with
inevitable crashes).</p>
</div>
<div class="paragraph">
<p><strong>A program update broke my session because it can no longer load its files.</strong> Unfortunately, this is
a problem that even Argodejo can&#8217;t solve. It also happens with LV2 plugins and with all other
software, such as office programs. If you fear that a program becomes incompatible in the future,
write down its version number in the session notes, so that you can at least, in an emergency,
reinstall the old program version (even if this is very is cumbersome).</p>
</div>
<div class="paragraph">
<p><strong>What&#8217;s better? Monolithic DAW or session management?</strong> Why not both? There is no conflict. Session
management is worthwhile with two or more participating programs, which one needs almost always.</p>
</div>
<div class="paragraph">
<p>You should not feel compelled to suddenly make everything modular with individual programs, only
because you use a session manager. Argodejo is designed to make your music production easier. If it
is faster and more comfortable to manage all plugins and effects e.g. in a single "Carla" instance
then you should do exactly that. If you basically want to do everything in Ardour, do that, but
start Ardour anyway in session management, because no program can do everything alone and the time
will come where you add a second one.</p>
</div>
<div class="paragraph">
<p>Session management is another level of hierarchy. Sequencers or DAWs are not plug-ins themselves.
Patroneo does not belong "in" Ardour and Ardour does not belong "in" Laborejo. Already in this
example each of the programs fulfils a different role because the others follow a different design
philosophy and cannot ever offer the same workflow. And more:</p>
</div>
<div class="paragraph">
<p>Some programs can&#8217;t host plugins, some can&#8217;t export audio files. They are not bad programs, but
programs that concentrate on one task. Furthermore, there is a lot of software that does not
directly do music production, but still is connected in the grander scheme: Open Broadcast Studio
(OBS), music player, word processors and graphic programs etc.</p>
</div>
<div class="paragraph">
<p><strong>Argodejo contains functionality which is not within its scope</strong>: Music production is very complex
and complexity is inevitable. It&#8217;s like a waterbed: if you press down on one side, something
bounces up in another place. When you create a "clean and lean" program, which therefore implements
only a part of the complete workflow, then the missing part pops up somewhere else. A minimalistic
session manager provokes plug-ins (not LV2), helper-scripts, workarounds and hacks.</p>
</div>
<div class="paragraph">
<p>E.g. not to include file management provokes user errors like deleting the wrong files. If the SM
knows what to do and it can do it, then let it do it. Or crashes: Technically, crashing programs
are not the "problem" of the session managers, but they are part of the software reality. Crashes
happen every day and need to be handled. Can Argodejo simplify the work and help to restore good
conditions again? Then that should be done. Session management is also an opportunity to simplify
even complex technical scenarios, e.g. distributing sessions over the network.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_installation_and_start">10. Installation and Start</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo 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.</p>
</div>
<div class="paragraph">
<p>If not available in the package repository you can build Argodejo yourself.</p>
</div>
<div class="ulist">
<div class="title">Build and Install</div>
<ul>
<li>
<p>Add Client again, this time <code>jackpatch</code>.</p>
<p>Please check the supplied README.md for dependencies.</p>
</li>
<li>
<p>Add any compatible programs, e.g. synthesizers.</p>
<p>You can download a release or clone the git version</p>
<div class="ulist">
<ul>
<li>
<p>See the list of NSM compatible programs: <a href="http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm" class="bare">http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm</a></p>
<p>Download the latest version from <a href="https://www.laborejo.org/downloads" class="bare">https://www.laborejo.org/downloads</a> and extract it.</p>
</li>
<li>
<p>And the NSM manual: <a href="http://non.tuxfamily.org/nsm/" class="bare">http://non.tuxfamily.org/nsm/</a></p>
<p>git clone <a href="https://git.laborejo.org/lss/argodejo.git" class="bare">https://git.laborejo.org/lss/argodejo.git</a></p>
</li>
</ul>
</div>
</li>
<li>
<p>Change into the new directory and use these commands:</p>
</li>
<li>
<p><code>./configure --prefix=/usr</code></p>
<div class="ulist">
<ul>
<li>
<p>The default prefix is /usr/local</p>
</li>
</ul>
</div>
</li>
<li>
<p><code>make</code></p>
</li>
<li>
<p><code>sudo make install</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Now the program is available to run via your menu/launcher or <code>argodejo</code> in a terminal.</p>
</div>
<div class="paragraph">
<p>Please read README.md for other ways of starting argodejo, which are impractical for actual use but can
be helpful for testing and development.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_help_and_development">3. Help and Development</h2>
<h2 id="_help_and_development">11. Help and Development</h2>
<div class="sectionbody">
<div class="paragraph">
<p>You can help Argodejo in several ways: Testing and reporting errors, translating, marketing, support, programming and more.</p>
</div>
<div class="sect2">
<h3 id="_testing_and_reporting_errors">3.1. Testing and Reporting Errors</h3>
<h3 id="_testing_and_reporting_errors">11.1. Testing and Reporting Errors</h3>
<div class="paragraph">
<p>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.</p>
@ -614,28 +1139,20 @@ We are thankful for any help.</p>
</div>
</div>
<div class="sect2">
<h3 id="_programming">3.2. Programming</h3>
<h3 id="_programming">11.2. Programming</h3>
<div class="paragraph">
<p>If you want to do some programming and don&#8217;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.</p>
</div>
</div>
<div class="sect2">
<h3 id="_translations">3.3. Translations</h3>
<h3 id="_translations">11.3. Translations</h3>
<div class="paragraph">
<p>Argodejo 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.</p>
</div>
<div class="paragraph">
<p>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.</p>
</div>
<div class="paragraph">
<p>The process is the same for both parts, but needs to be done in different directories:
<code>template/qtgui</code> and plain <code>/qtgui</code>, relative to the root directory, where the argodejo executable is.</p>
</div>
<div class="paragraph">
<p>Everytime you see "template/qtgui" below you can substitute that with just "qtgui" to translate the other part of Argodejo.</p>
<p>However, here are the complete instructions for doing a translation completely on your own and integrating it into the program.</p>
</div>
<div class="paragraph">
<p>You can add a new language like this:</p>
@ -643,7 +1160,7 @@ The program is split in two parts. A shared "template" between the Laborejo Soft
<div class="ulist">
<ul>
<li>
<p>Open a terminal and navigate to template/qtgui/resources/translations</p>
<p>Open a terminal and navigate to qtgui/resources/translations</p>
</li>
<li>
<p>Edit the file <code>config.pro</code> with a text editor</p>
@ -688,7 +1205,7 @@ The program is split in two parts. A shared "template" between the Laborejo Soft
<p>Run the "Release" option in QtLinguists "File" menu. It creates a <code>.qm</code> file in the same directory as your <code>.ts</code> file.</p>
</li>
<li>
<p>Edit <code>template/qtgui/resources/resources.qrc</code> and duplicate the line <code>&lt;file&gt;translations/de.qm&lt;/file&gt;</code> but change it to your new .qm file.</p>
<p>Edit <code>qtgui/resources/resources.qrc</code> and duplicate the line <code>&lt;file&gt;translations/de.qm&lt;/file&gt;</code> but change it to your new .qm file.</p>
</li>
<li>
<p>run <code>sh buildresources.sh</code></p>
@ -724,7 +1241,7 @@ The program is split in two parts. A shared "template" between the Laborejo Soft
</div>
<div id="footer">
<div id="footer-text">
Last updated 2020-05-07 12:06:57 +0200
Last updated 2020-05-16 15:36:57 +0200
</div>
</div>
</body>

651
documentation/out/german.html

@ -445,15 +445,46 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
<div id="toc" class="toc2">
<div id="toctitle">Inhaltsverzeichnis</div>
<ul class="sectlevel1">
<li><a href="#_installation_und_start">1. Installation und Start</a></li>
<li><a href="#_helfen_und_entwicklung">2. Helfen und Entwicklung</a>
<li><a href="#_präambel">1. Präambel</a>
<ul class="sectlevel2">
<li><a href="#_testen_und_programmfehler">2.1. Testen und Programmfehler</a></li>
<li><a href="#_anwendungsbeispiel">1.1. Anwendungsbeispiel</a></li>
</ul>
</li>
<li><a href="#_entwicklung">3. Entwicklung</a>
<li><a href="#_die_schnelle_ansicht">2. Die Schnelle Ansicht</a>
<ul class="sectlevel2">
<li><a href="#_übersetzungen">3.1. Übersetzungen</a></li>
<li><a href="#_session_auswählen">2.1. Session Auswählen</a></li>
<li><a href="#_in_einer_session">2.2. In einer Session</a></li>
</ul>
</li>
<li><a href="#_die_volle_ansicht">3. Die Volle Ansicht</a>
<ul class="sectlevel2">
<li><a href="#_session_auswählen_2">3.1. Session Auswählen</a></li>
<li><a href="#_in_einer_session_2">3.2. In einer Session</a>
<ul class="sectlevel3">
<li><a href="#_laufende_programm">3.2.1. Laufende Programm</a></li>
<li><a href="#_das_session_menü">3.2.2. Das Session Menü</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#_programm_datenbank">4. Programm-Datenbank</a>
<ul class="sectlevel2">
<li><a href="#_für_fortgeschrittene">4.1. Für Fortgeschrittene</a></li>
</ul>
</li>
<li><a href="#_tray">5. Tray</a></li>
<li><a href="#_netzwerk_sessions">6. Netzwerk-Sessions</a></li>
<li><a href="#_programmparameter">7. Programmparameter</a></li>
<li><a href="#_verschiedenes_erklärungen_faq">8. Verschiedenes / Erklärungen / FAQ</a></li>
<li><a href="#_installation_und_start">9. Installation und Start</a></li>
<li><a href="#_helfen_und_entwicklung">10. Helfen und Entwicklung</a>
<ul class="sectlevel2">
<li><a href="#_testen_und_programmfehler">10.1. Testen und Programmfehler</a></li>
</ul>
</li>
<li><a href="#_entwicklung">11. Entwicklung</a>
<ul class="sectlevel2">
<li><a href="#_übersetzungen">11.1. Übersetzungen</a></li>
</ul>
</li>
</ul>
@ -465,106 +496,630 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
<div class="paragraph">
<p>Für Programmversion 0.1</p>
</div>
<div class="paragraph">
<p>&lt;manual&gt;</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_installation_und_start">1. Installation und Start</h2>
<h2 id="_präambel">1. Präambel</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo ist exklusiv für Linux. Am besten installieren Sie Argodejo über deinen Paketmanager.
Falls es dort nicht vorhanden ist, oder nur in einer veralteten Version, bitten sie ihre
Linuxdistribution Argodejo bereitzustellen.</p>
<p>Session Management führt zur Vereinfachung von Arbeitsabläufen, Übersicht und Kontrolle über
Programme und Daten und eine gehörige Portion positive Bequemlichkeit :)</p>
</div>
<div class="paragraph">
<p>Falls in den Paketquellen vorhanden bitte direkt bei "argodejo im Non Session Manager starten" weiterlesen.
Falls nicht kann man Argodejo auch selbst "bauen".</p>
<p>Kein Programm existiert für sich alleine, denn kein Programm kann alles leisten, was für heutige
Musikproduktion nötig ist.</p>
</div>
<div class="paragraph">
<p>Direkt ersichtlich ist das in einer JACK Umgebung, die prinzipiell modular ist: Verschiedene
Programme erfüllen verschiedene Zwecke und "sprechen" miteinander, indem sie sich Daten schicken.
Ein Sequencer schickt Midi an einen Sampler oder Synthesizer, der mit einem Plugin-Host für Effekte
verbunden ist usw.</p>
</div>
<div class="paragraph">
<p>Selbst die monolithischsten All-In-One DAWs müssen, oder möchten, irgendwann mit der Außenwelt
kommunizieren. z.B. um sich mit einem Screenrecorder oder Streamingprogramm zu verbinden, einen
Wordprozessor mit Aufnahmereihenfolge oder Liedtexten zu starten, um Musik zu visualisieren oder (um
ehrlich zu bleiben) eine Funktion zu nutzen, die es in diesem Programm eben nicht gibt.</p>
</div>
<div class="paragraph">
<p>Einen Großteil der Arbeit erledigt bereits das JACK-Subsystem. Alle Programme können ihre Musik in
Echtzeit teilen, verfügen über synchronisierte Timelines und spielen im gleichen Tempo.</p>
</div>
<div class="paragraph">
<p>Was übrig bleibt ist die leidige Arbeit jedesmal alle Programme zu starten, die Projektdateien zu
laden, alle Audiokanäle zu verbinden usw. Session Management im allgemeinen (z.B. extra
geschriebene Starter-Scriptdateien) und Argodejo im speziellen nehmen Ihnen diese Arbeit ab, oder
vereinfachen sie zumindest stark.</p>
</div>
<div class="paragraph">
<p>Im Gegensatz zum erwähnten selbstgeschriebenen Script müssen Sie sich nicht im Vorraus für ein
Setup entscheiden, sondern alles wird automatisch verwaltet, solange Sie alles durch den Session
Manager Argodejo starten.</p>
</div>
<div class="sect2">
<h3 id="_anwendungsbeispiel">1.1. Anwendungsbeispiel</h3>
<div class="ulist">
<div class="title">Abhängigkeiten*</div>
<ul>
<li>
<p>Eine Liste der Abhängigkeit befindet sich in der README.md</p>
<p>Argodejo starten (Startmenü, Terminal etc.)</p>
</li>
<li>
<p>Kompilieren und Installieren geht entweder mit einem Releasedownload oder mit der Git-Version:</p>
<div class="ulist">
<ul>
<p>Man befindet sich nun in der "Schnellen Ansicht" um eine Session zu starten</p>
</li>
<li>
<p>Lade von <a href="https://www.laborejo.org/downloads" class="bare">https://www.laborejo.org/downloads</a> die aktuelle Version herunter und entpacke sie.</p>
<p>Der große Knopf: "Starte Neue Session"</p>
</li>
<li>
<p><code>git clone <a href="https://git.laborejo.org/lss/argodejo.git" class="bare">https://git.laborejo.org/lss/argodejo.git</a></code></p>
<p>Nun bekommt man eine Auswahl an Programmen:</p>
</li>
<li>
<p>Ein einfacher Klick mit der Maus startet ein Programm</p>
</li>
<li>
<p>Ein weiterer Klick versteckt (oder zeigt anschließend) dessen grafische Oberfläche</p>
</li>
<li>
<p>Sollte das Programm abstürzen bekommt man das signalisiert und kann es neustarten.</p>
</li>
<li>
<p>Audio- und Midiports können nun in einer Patchbay miteinander verbunden werden. Die Verbindungen werden in Argodejo gespeichert.</p>
</li>
<li>
<p>Um andere Programme und erweiterte Funktionen zu bekommen kann man in den Tab "Volle Ansicht" wechseln</p>
</li>
<li>
<p>Der Name der Session ist bisher einfach ein Datum. Durch Klick auf dieses kann man einen richtigen Namen eingeben. Etwa "Mein Lied"</p>
</li>
<li>
<p>Ist man soweit fertig kommt man durch den Knopf "Speichern und Schließen" wieder in die Sessionauswahl zurück</p>
</li>
<li>
<p>Nun könnte Argodejo geschlossen werden.</p>
</li>
<li>
<p>Alle gespeicherten Daten liegen in einem einzigen Verzeichnis auf der Festplatte (<code>~/NSM Sessions/Mein Lied</code>)</p>
</li>
<li>
<p>Die Session kann weitergeführt werden: Nach dem Klick auf den Namen starten alle Programme automatisch und verbinden ihre JACK-Ports untereinander.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Die "Schnelle Ansicht" ist ein guter Einstieg. Üblicherweise möchte man jedoch bald in die volle
Ansicht wechseln, und sei es nur um ein Programm zwei mal zu starten oder um zwischendurch manuell
zu speichern.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_die_schnelle_ansicht">2. Die Schnelle Ansicht</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Die Schnelle Ansicht ist eine aufs Minimum reduzierte Umgebung. Sie, als Benutzer, sollen so wenig
Entscheidungen wie möglich zu treffen haben und so schnell wie möglich (mit den wenigstens Klicks)
eine alte Session starten oder eine neue erstellen können.</p>
</div>
<div class="paragraph">
<p>Aus Stabilitätsgründen werden nur Programme zum Starten angeboten, von denen bekannt ist, dass Sie
korrekt mit dem Session Management Argodejos zusammenarbeiten.</p>
</div>
<div class="paragraph">
<p>Die Schnelle Ansicht ist lediglich eine Ansicht. Es besteht kein technischer Unterschied zur vollen
Session und Sie können jederzeit hin- und herschalten.</p>
</div>
<div class="sect2">
<h3 id="_session_auswählen">2.1. Session Auswählen</h3>
<div class="paragraph">
<p>Hier gibt es nur zwei Möglichkeiten: Klicken Sie auf "Starte Neue Session" um dies zu tun, oder
wählen Sie eine der bestehenden Sessions aus um diese fortzuführen (sofern vorhanden).</p>
</div>
</div>
<div class="sect2">
<h3 id="_in_einer_session">2.2. In einer Session</h3>
<div class="paragraph">
<p>Der Name kann geändert werden. Wir empfehlen ein Datum in der Form YYYY-MM-DD gefolgt von einem
aussagekräftigen Namen. Bitte beachten Sie, dass die Namensänderung erst wirksam wird (z.B. in Form
des Sessionvereichnisses auf der Platte) wenn Sie die Session schließen.</p>
</div>
<div class="paragraph">
<p>Als nächstes steht ein größeres Textfeld für Notizen zur Verfügung. Schreiben Sie was Sie möchten.
TODO-Listen, Liedtexte, Credits und Quellen von externen Samples etc.</p>
</div>
<div class="paragraph">
<p>Programme werden durch Icons symbolisiert. Ein Mausklick startet das Programm (das kann einen
Moment dauern, darauf haben wir keinen Einfluss). Der Status des Programmes wird durch ein Symbol
dargestellt: Das "Play"-Symbol für das laufende Programm, ein Auge bedeutet "Programmfenster
versteckt", das "Power On/Off"-Symbol bedeutet, dass Programm wurde beendet (oder Absturz).</p>
</div>
<div class="paragraph">
<p>Falls das Programm es unterstützt kann ein laufendes Programmfenster versteckt werden. z.B. ein
Synthesizer, einmal eingerichtet, muss nicht permanent zu sehen sein. Klicken Sie einfach erneut
auf das Programmicon. Entweder passiert nichts (das Programm unterstützt es nicht) oder es wird
versteckt. Ein weiterer Klick auf ein versteckes Fenster zeigt es wieder. Jedes Programm ist selbst
dafür verantwortlich ob es seinen Fensterzustand speichert. Manche Programme starten bereits
versteckt.</p>
</div>
<div class="paragraph">
<p>Es gibt <strong>keine</strong> Möglichkeit ein Programm in dieser Ansicht zu beenden. Wechseln Sie hierzu in die
volle Ansicht oder benutzen Sie die Schließenfunktion des Programmes selbst.</p>
</div>
<div class="paragraph">
<p>Es gibt auch <strong>keine</strong> Möglichkeit ein Programm mehrfach zu starten, z.B. für einen Synthesizer pro
Spur. Wechseln sie hierzu in die volle Ansicht. Wenn Sie Programme durch die volle Ansicht mehrfach
gestartet haben können Sie weiterhin die schnelle Ansicht benutzen um die Session zu verwalten,
allerdings ist nicht definiert auf welche Programminstanz sich ein Klick auf das Programmicon (z.B.
zum Verstecken) auswirkt. Mehrere Instanzen sind ein klares Zeichen dafür, dass Sie bereit für die
volle Ansicht sind.</p>
</div>
<div class="paragraph">
<p>Wie Sie irgendwann feststellen werden sind nicht <strong>alle</strong> verfügbaren Programme in der Liste, und es
gibt auch keine Möglichkeit Programme zu starten die zwar gut in einer Session funktionieren (z.B.
ein Stimmgerät), aber nicht explizit dafür geschrieben sind, z.B. ihren Status nicht zurückmelden.
Diese Programme sollten Sie besser in der vollen Ansicht verwalten.</p>
</div>
<div class="paragraph">
<p>Ist ein Programm leider abgestürzt können Sie es nur neu starten und auf dessen automatische
Speicherung hoffen. Viel Glück.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_die_volle_ansicht">3. Die Volle Ansicht</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Einige Konzepte wurde bereits im Kapitel "Die Schnelle Ansicht" erklärt. Es wird vorrausgesetzt,
dass Sie dieses gelesen haben.</p>
</div>
<div class="sect2">
<h3 id="_session_auswählen_2">3.1. Session Auswählen</h3>
<div class="paragraph">
<p>Sessions stellen sich als Tabelle dar, die Sie durch den Klick auf eine Spaltenüberschrift ordnen
können. So wird hier gezeigt wie die Session heißt und wann das letzte mal gespeichert wurde, wohl
die beiden wichtigsten Informationen. Dann wird gezeigt wie viele Programme/Clients die Session
verwaltet und ob sie Symbolische Links enthält. Letzteres steht wahrscheinlich auf "Ja", wenn Sie
einen Sampler o.ä. benutzen, der große Audiodateien geladen hat. Diese werden zunächst nur in die
Session gelinkt, und nicht kopiert, um Speicherplatz zu sparen. Der angezeigte Speicherverbrauch
ist nicht der tatsächliche Verbrauch, sondern beinhaltet die Größen der Symlinks. Erst wenn Sie die
Session archivieren oder die Links durch reale Dateien ersetzen stimmt die angezeigte Zahl.</p>
</div>
<div class="paragraph">
<p>Schließlich wird auch das Verzeichnis angegeben, in dem die Dateien tatsächlich gespeichert sind.</p>
</div>
<div class="paragraph">
<p>Sessions stellen den Verzeichnisbaum dar. Eine Session ist immer ein "Blatt" und kann keine
Subsessions enthalten. Sie können beim Anlegen oder Umbenennen die Sessions auch im Baum anordnen
indem Sie die gewohnte Schrägstrichschreibweise benutzen: <code>song123</code> &#8594; <code>Neues Album/Song 123</code> oder
<code>Versuche/asdf</code> &#8594; <code>Romantische Pop-Balladen/Mein Herz wird weiter schlagen</code>. Wie Sie ihre Sessions
organisieren, und wie viele Unterverzeichnisse Sie anlegen, steht Ihnen frei. Es ist allerdings
nicht erlaubt den Namen mit <code>/</code> anfangen zu lassen oder die speziellen Zeichen <code>..</code> zu benutzen.
Die Baumansicht kann durch eine Checkbox an der linken Seite deaktiviert werden, um etwa besser
sortieren zu können. Das ist nur eine Ansicht, ihre Daten bleiben unangetastet.</p>
</div>
<div class="paragraph">
<p>Jede Session verfügt über ein Kontextmenü (z.B. rechte Maustaste) mit weiteren Optionen: Sie können
eine Session umbennen, löschen (inkl. aller dazugehörigen Dateien auf der Festplatte!) und mehr.
Diese Funktionen sind gleichwertig zu ihrem Dateimanager. Falls Sie möchten, können Sie auch
einfach die Sessionverzeichnisse selbst umbennen, verschieben oder löschen (sofern diese nicht
gerade geöffnet ist). Dazu muss Argodejo nicht neugestartet werden, es reagiert selbst auf die
Änderungen.</p>
</div>
<div class="paragraph">
<p>Hier gibt es auch die Möglichkeit eine sogenannte "Lock"-Datei zu entfernen. Das ist eine Datei,
die angelegt wird sobald die Session startet und gelöscht wenn beendet. Damit weiß das Programm,
welche Session gerade läuft. Ist eine Lockdatei vorhanden, kann die Session nicht geöffnet werden!
Das sollte im normalen Betrieb nicht vorkommen. Falls aber ein Stromausfall o.ä. mitten in einer
Session passiert ist kann die Lockdatei übrig bleiben, obwohl offensichtlich keine Session geöffnet
ist. In diesem Fall entsperren Sie die Session hierdurch manuell.</p>
</div>
<div class="paragraph">
<p>Klicken Sie auf "Neue Session" um diese anzulegen. Im Gegensatz zur schnellen Ansicht müssen Sie
hier den Namen direkt eingeben. Wie oben erwäht können Sie dazu den Verzeichnisbaum benutzen.
Darüberhinaus wird angeboten verschiedene (fast schon obligatorische) Programme direkt
mitzustarten. Im Normalfall sollte man alle Vorschläge akzeptieren. Es gibt jederzeit die
Möglichkeit diese wieder zu entfernen.</p>
</div>
<div class="paragraph">
<p>Ein Doppelklick auf eine existierende Session (oder der Knopf "Lade Ausgewählte") machen genau das.</p>
</div>
</div>
<div class="sect2">
<h3 id="_in_einer_session_2">3.2. In einer Session</h3>
<div class="paragraph">
<p>Die volle Ansicht ist in drei Bereiche eingeteilt: Programmstarter, Programme in der laufenden Session
und die Session-Notizen. Dazu gibt es ein dynamisches Menü.</p>
</div>
<div class="paragraph">
<p>Auf der linken Seite sehen die den Programmstarter. Ein Doppelklick startet eine Programminstanz in
der Session. Sie können ein Programm auch mehrmals starten. Welche Programme zur Verfügung stehen
entnehmen Sie bitte dem Kapitel "Programm-Datenbank".</p>
</div>
<div class="sect3">
<h4 id="_laufende_programm">3.2.1. Laufende Programm</h4>
<div class="paragraph">
<p>Gestartete Programme befinden sich auf der rechten Seite. Ein Doppelklick schaltet die Sichtbarkeit
um, sofern das Programm unterstüzt sein Fenster zu verstecken. Falls nicht passiert nichts.</p>
</div>
<div class="paragraph">
<p>Pro Programm gibt es folgende Informationen:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Der Name (evtl. mit Icon)</p>
</li>
<li>
<p>Wechseln Sie in das neue Verzeichnis und benutzen diese Befehle:
*<code>./configure --prefix=/usr</code></p>
<p>Ein "Label", das Programme frei benutzen können (z.B. zeigt Fluajho hier das geladene .sf2 an)</p>
</li>
<li>
<p>Den Programmstatus (auf Englisch, da es sich um definierte Schlüsselworte handelt).</p>
</li>
<li>
<p>Stopped / Gestoppt, läuft nicht</p>
</li>
<li>
<p>Ready / Läuft und Bereit</p>
</li>
<li>
<p>Launch / Startet. Wenn das Programm hier stehen bleibt, aber funktioniert, handelt es sich um eins, dass nicht speziell den Sessionmodus unterstützt. Argodejo kann nicht wissen, ob es bereits läuft oder nicht. Alles ist in Ordnung! :)</p>
</li>
<li>
<p>Weitere Zustände sind nur Übergänge und meist nur sehr kurz zu sehen, z.B. Open / Läd gerade</p>
</li>
<li>
<p>Sichtbarkeit (Ein Kreuz für sichtbar, Leer für unsichtbar)</p>
</li>
<li>
<p>Änderungen - Gibt es momentan ungespeicherte Änderungen?</p>
</li>
<li>
<p>ID - Ein eindeutiges Kürzel mit dem man auch mehrere Instanzen des gleichen Programmes auseinander halten kann</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Alle weiteren Funktionen sind durch das Menü oder Kontextmenü zugänglich. Ein Klick auf ein Programm
wählt es aus, und das Clientmenü in der Menüleiste gilt nun dafür. Alternativ kann mit Rechtsklick
auf den Eintrag das Kontextmenü geöffnet werden, das identisch ist.</p>
</div>
<div class="paragraph">
<p>Neben den selbsterklärenden Funktionen gibt es noch:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Das Standardprefix is /usr/local</p>
<p>Umbenennen gibt dem Programm einen selbstgewählten Namen, besonders um seinen Zweck deutlich zu machen und es besser von anderen zu unterscheiden. Diese Funktion steht nur zur Verfügung, wenn <code>nsm-data</code> in der Session läuft.</p>
</li>
<li>
<p>Speichern weist nur dieses Programm an abzuspeichern</p>
</li>
<li>
<p>Entfernen nimmt das Programm aus der Session. Dabei werden jedoch keine Dateien gelöscht. Zur Zeit muss leider noch von Hand im Dateimanager "aufgeräumt" werden.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Befindet sich der Client "nsm-data" in der Session (das ist Voreinstellung) steht im unteren
Bereich ein großes Textfeld für Notizen zur Verfügung. Es ist dasselbe wie in der schnellen
Ansicht. Schreiben Sie was Sie möchten: TODO-Listen, Liedtexte, Credits und Quellen von externen
Samples etc.</p>
</div>
</div>
<div class="sect3">
<h4 id="_das_session_menü">3.2.2. Das Session Menü</h4>
<div class="paragraph">
<p>Im Gegensatz zur schnellen Ansicht stehen hier weitere Menüs zur Verfügung, die auch über die
üblichen Tastaturkürzel zu erreichen sind (Strg+S für Speichern etc.).</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Speichern weist alle Programme an zu speichern, die Session läuft weiter</p>
</li>
<li>
<p><code>make</code></p>
<p>Speichern und Schließen beendet die Session, vorher speichern alle Programme noch einmal ab</p>
</li>
<li>
<p><code>sudo make install</code></p>
<p>Abbrechen beendet die Session, ohne dass die Programme abspeichern</p>
</li>
<li>
<p>Speichern Unter speichert die Session unter einem anderen Namen und schließt die laufende ohne abzuspeichern. Ab nun arbeitet man in der neuen Session.</p>
</li>
<li>
<p>Client Hinzufügen bietet die Option ein beliebiges Programm hinzuzufügen, egal ob es in der Programmdatenbank ist, oder nicht.</p>
</li>
<li>
<p>Es werden alle installierten Programme vorgeschlagen. Argodejo überprüft diese nicht auf Sinnhaftigkeit für eine Musik-Session, oder auch nur auf Lauffähigkeit. Sie finden hier <code>ls</code> wie auch <code>argodejo</code> selbst.</p>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_programm_datenbank">4. Programm-Datenbank</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejos Programmstarter basiert auf einer Programmdatenbank, die sich teilweise selbst erstellt,
teilweise von Hand eingepflegt wurde. Das bedeutet nichts anderes, als das alle installieren
Programme in ihrem System überprüft werden (wie ein Startmenü) und Ihnen im Argodejo-Starter nur
das angeboten wird, was Sie auch tatsächlich installiert haben.</p>
</div>
<div class="paragraph">
<p>Beim ersten Start wird daher die Programmdatenbank erstellt. Je nach System kann dies einige
Augenblicke bis einige Minuten dauern.</p>
</div>
<div class="paragraph">
<p>Wenn Sie Audio-Programme neu installieren, oder deinstallieren müssen Sie die Datenbank selbst
aktualisieren. Im Steuerungsmenü gibt es den Befehl. Programminstallationen sind sogar möglich
während Argodejo läuft (auch in einer Session). Nach einem DB-Update stehen Ihnen sofort alle
neuen Programme zur Verfügung.</p>
</div>
<div class="paragraph">
<p>Wenn Sie ein installiertes Programm nicht in unserer Liste sehen, aber von dem Sie sicher sind,
dass es Session Management unterstützt melden Sie es bitte an <a href="mailto:info@laborejo.org">info@laborejo.org</a> oder unter
<a href="https://laborejo.org/bugs" class="bare">https://laborejo.org/bugs</a> .</p>
</div>
<div class="paragraph">
<p>Darüberhinaus können Sie (in der vollen Ansicht) Programme hinzufügen, die nicht in der Datenbank
sind. Siehe dort.</p>
</div>
<div class="sect2">
<h3 id="_für_fortgeschrittene">4.1. Für Fortgeschrittene</h3>
<div class="paragraph">
<p>Die eiserne Regel ist, dass nur Programme im $PATH in die Datenbank aufgenommen werden. Absolute
Pfade sind unzulässig, selbst wenn man den Programmnamen selbst durch das Menü eingibt. Allerdings
möchte man manchmal Software nur ausprobieren, oder ist selbst Entwickler und möchte ohne
systemweite Installation testen.</p>
</div>
<div class="paragraph">
<p>In den Einstellungen im Steuerungsmenü gibt es einen Tab "Programm-PATH", wo Sie eigene Suchpfade
hinzufügen können. Ein absoluter Pfad pro Zeile, keine Wildcards, Trailing Slash spielt keine
Rolle.</p>
</div>
<div class="paragraph">
<p>Zum Beispiel: <code>/home/myuser/sources/newsequencer/bin/</code></p>
</div>
<div class="paragraph">
<p>Diese Suchpfade werden nicht in der Session gespeichert sondern lokal in ihrem <code>~/.config</code>
Verzeichnis.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_tray">5. Tray</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo verfügt über ein Tray-Icon, sofern ihr Windowmanager das unterstüzt. Ein Klick auf das
Trayicon zeigt oder versteckt Argodejo.</p>
</div>
<div class="paragraph">
<p>Schließt man Argodejo über die normale Windowmanagerfunktion, etwa ein Klick auf das [X], wird das
Programm und die Session nicht beendet, sondern in den Tray minimiert.</p>
</div>
<div class="paragraph">
<p>Ist das Argodejofenster versteckt und wird über das Traymenü geschlossen (s.u.) wird Argodejo beim
nächsten Start auch als Trayicon gestartet. Somit ist es möglich weiter zu arbeiten ohne sich mit
dem Programmfenster befassen zu müssen.</p>
</div>
<div class="paragraph">
<p>Ein Rechtsklick auf das Icon bietet Schnellzugriff auf häufige Funktionen:</p>
</div>
<div class="paragraph">
<p>Sie können hier die zuletzt benutzen Sessions direkt starten.</p>
</div>
<div class="paragraph">
<p>Läuft bereits eine Session können Sie speichern, abbrechen etc.</p>
</div>
<div class="paragraph">
<p>Argodejo kann hier auch komplett beendet werden.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_netzwerk_sessions">6. Netzwerk-Sessions</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Die Funktionalität Sessions im lokalen Netzwerk zu verteilen ist für eine spätere Programmversion
vorgesehen.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_programmparameter">7. Programmparameter</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Als fortgeschrittener Benutzer können Sie Argodejo im Terminal starten und dort einige Parameter
angeben. Für eine vollständige Liste benutzen Sie bitte den --help Parameter.</p>
</div>
<div class="paragraph">
<p>Eine Auswahl:</p>
</div>
<div class="ulist">
<div class="title">argodejo im Non Session Manager (NSM) starten</div>
<ul>
<li>
<p>Starten Sie <code>non-session-manager</code></p>
<p><code>--session-root /home/benutzer/produktion2020</code> setzt das Wurzelverzeichnis. Nur Sessions in diesem Verzeichnis werden angezeigt, alles wird doch gespeichert.</p>
</li>
<li>
<p>Knopf <code>New</code>, geben Sie einen Namen für das Musikstück ein.</p>
<p><code>--session neuesAlbum/meinLied</code> startet direkt die angegebene Session.</p>
</li>
<li>
<p>Knopf <code>Add Client to Session</code>, geben Sie hier <code>argodejo</code> ein, kleingeschrieben.</p>
<p><code>--url osc.udp://myhost.localdomain:14294/</code> verbindet sich zu diesem Server, falls vorhanden, oder startet den internen Session-Server unter dieser Adresse. Dies ist eine sehr technische Option und wird wahrscheinlich nicht benötigt.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_verschiedenes_erklärungen_faq">8. Verschiedenes / Erklärungen / FAQ</h2>
<div class="sectionbody">
<div class="paragraph">
<p><strong>Session Speichern und Beenden reagiert langsam</strong>:
Argodejo ist kein Einzelprogramm wie ein Office-Writer. Die teilnehmenden Programme in der Session
sind auch keine Plugins. Wenn Sie die Session beenden wird ein Signal an alle teilnehmenden
Programm gesendet, dass sie speichern sollen. Das kann ein paar Momente dauern, in denen Sie "live"
sehen, wie die einzelnen Programme sich beenden und aus der Session verschwinden. Es ist alles in
Ordnung.</p>
</div>
<div class="paragraph">
<p><strong>Ich habe ein Programm hinzugefügt aber es speichert nicht mit der Session</strong>:
Unterstützt das Programm Session Management? Wenn nicht, kann Argodejo nichts tun.
Aber Sie können die Programmentwickler bitten mit uns Kontakt aufzunehmen (<a href="mailto:info@laborejo.org">info@laborejo.org</a>)
und wir können zusammen an der Unterstützung arbeiten.</p>
</div>
<div class="paragraph">
<p><strong>Die Programme hängen beim Beenden</strong>:
Das tut uns leid. Eigentlich sind die Programme selbst schuld, aber auch wir sind daran
interessiert die Situation zu verbessen, indem wir in Zukunft zumindest eine Notlösung anbieten.</p>
</div>
<div class="paragraph">
<p><strong>Argodejo startet nicht mehr! Ich starte das Programm aber ich sehe nichts.</strong>: Wahrscheinlich ist
Argodejo unsichtbar, weil Sie es aus dem Tray heraus beendet hatten. Ist es im Tray? Eigentlich
hätte ein kleines Nachrichtenfenster aufpoppen sollen. Falls in ihrem Window-Manager kein Tray
vorhanden ist sollte das Programm immer sichtbar sein. Bei besonderen Window-Managern (bei der
großen Auswahl in Linux) kann es sein, dass die Tray-Erkennung nicht richtig funktioniert hat.
Notfallplan ist es <code>~/.config/LaborejoSoftwareSuite/argodejo</code> zu löschen. Dabei werden KEINE
Sessions gelöscht, sondern nur lokale Einstellungen wie die Sichtbarkeit des Programmfensters. Beim
nächsten Start wird Argodejo sich verhalten wie beim allerersten.</p>
</div>
<div class="paragraph">
<p><strong>JACK ist abgestürzt. Viele Programme hängen. Was tun um Datenverlust zu vermeiden?</strong>:
Vermutlich sind bereits viele Programme der Session nicht mehr richtig lauffähig und reagieren
nicht mehr. Am besten benutzen Sie die <code>Session Abbrechen</code> Funktion und starten alles neu. Wenn die
Daten tatsächlich schon lange ungespeichert waren kann man auch ein Speichern/Beenden wagen. Dann
kann es aber sein, dass man beim nächsten Start einige Jack connections von Hand neu ziehen muss.
Wer extrem sicher gehen möchte kann vor dem Beenden der Session (mit unweigerlichen abstürzen)
manuell im Dateimanager eine Kopie des Session-Verzeichnisses machen.</p>
</div>
<div class="paragraph">
<p><strong>Ein Programmupdate hat meine Session kaputtgemacht, weil es seine Dateien nicht mehr laden kann.</strong>:
Das ist leider ein Problem, dass auch Argodejo nicht lösen kann. Es passiert mit LV2-Plugins ebenso
wie mit alle anderen Software, etwa Officeprogramme. Falls Sie befürchten, dass ein Programm in
Zukunft inkompatibel wird notieren Sie sich dessen Versionsnummer in den Session-Notizen, damit Sie
zumindest zur Not die alte Programmversion wieder installieren können (auch wenn das sehr
umständlich ist).</p>
</div>
<div class="paragraph">
<p><strong>Was ist besser? Monolithische DAW oder Session Management?</strong>:
Warum nicht beides? Es gibt keinen Konflikt.
Session Management lohnt sich ab zwei teilnehmenden Programmen, und auf die kommt man so gut wie
immer.</p>
</div>
<div class="paragraph">
<p>Sie sollten sich nicht genötigt fühlen plötzlich alles modular mit Einzelprogrammen zu machen, nur
weil Sie einen Session Manager benutzen.
Argodejo ist dafür da, ihre Musikproduktion einfacher zu machen. Wenn es schneller und bequemer ist
alle Plugins und Effekte z.B. in einer einzelnen Carla-Instanz zu verwalten dann sollten Sie genau
das machen.
Wenn Sie prinzipiell alles in Ardour machen wollen, machen Sie das, aber starten Sie Ardour trotzdem
im Session Management, denn kein Programm kann alles alleine, und der Zeitpunkt wird kommen, an dem
Sie ein weiteres hinzufügen.</p>
</div>
<div class="paragraph">
<p>Session Management ist andere Hirarchieebene. So sind Sequencer oder DAWs selbst keine Plugins.
Patroneo gehört nicht "in" Ardour und Ardour gehört nicht "in" Laborejo. Und schon in diesem Beispiel
erfüllt jedes der Programme eine Rolle, die die anderen beiden nicht leisten können, da sie einer
anderen Design-Philosophie folgen. Und mehr:</p>
</div>
<div class="paragraph">
<p>Manche Programme können keine Plugins hosten, manche können keine Audiodateien exportieren. Das
sind deswegen keine schlechten Programme, sondern welche, die sich auf eine Aufgabe konzentrieren.
Darüberhinaus gibt es eine Menge Software, die nicht direkt Musikproduktion ausübt,
aber trotzdem inhaltlich dazu gehört: Open Broadcast Studio (OBS), Musikplayer, Schreib-
und Grafikprogramme etc.</p>
</div>
<div class="paragraph">
<p><strong>Argodejo beinhaltet Funktionalität, die nicht seine Aufgabe ist</strong>: Musikproduktion ist sehr komplex
und Komplexität ist unvermeidlich. Sie ist wie ein Wasserbett: Drückt man die auf der einen Seite
runter, muss etwas an einen anderen Stelle hochdrücken. Macht man ein programm "clean and lean",
und implementiert damit nur einen Teil des kompletten Arbeitsablaufs, dann kommt der fehlende Teil
woanders wieder hoch. Ein minimalistischer Session Manager provoziert Plugins (nicht LV2),
Helper-Scripts, Workarounds und Hacks. z.B. Dateiverwaltung nicht mit einzuschließen provoziert
Anwender-Fehler im Dateimanager (wie das Löschen der falschen Dateien). Wenn der SM weiß was zu tun
ist, und er es tun kann, dann soll er es machen.</p>
</div>
<div class="paragraph">
<p>Oder Abstürze: Technisch gesehen sind abstürzende Programme nicht das "Problem" des Session
Managers, aber sie sind Teil der Softwarewirklichkeit. Abstürze passieren jeden Tag und nun muss
man damit umgehen. Kann Argodejo die Arbeit vereinfachen und helfen den guten Zustand wieder
herzustellen? Dann sollte das geschehen.</p>
</div>
<div class="paragraph">
<p>Session Management ist außerdem eine Chance auch komplexe technische Szenarios zu vereinfachen, z.B.
Sessions über das Netzwerk zu verteilen.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_installation_und_start">9. Installation und Start</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Argodejo ist exklusiv für Linux. Am besten installieren Sie Argodejo über deinen Paketmanager.
Falls es dort nicht vorhanden ist, oder nur in einer veralteten Version, bitten sie ihre
Linuxdistribution Argodejo bereitzustellen.</p>
</div>
<div class="paragraph">
<p>Falls nicht in den Paketquellen vorhanden kann man Argodejo auch selbst "bauen".</p>
</div>
<div class="ulist">
<div class="title">Abhängigkeiten*</div>
<ul>
<li>
<p>Nochmal Add Client, diesmal <code>jackpatch</code>.</p>
<p>Eine Liste der Abhängigkeit befindet sich in der README.md</p>
</li>
<li>
<p>Fügen Sie beliebige kompatible Programme hinzu, z.B. Synthesizer.</p>
<p>Kompilieren und Installieren geht entweder mit einem Releasedownload oder mit der Git-Version:</p>
<div class="ulist">
<ul>
<li>
<p>Siehe auch das NSM Handbuch: <a href="http://non.tuxfamily.org/nsm/" class="bare">http://non.tuxfamily.org/nsm/</a></p>
<p>Lade von <a href="https://www.laborejo.org/downloads" class="bare">https://www.laborejo.org/downloads</a> die aktuelle Version herunter und entpacke sie.</p>
</li>
<li>
<p><code>git clone <a href="https://git.laborejo.org/lss/argodejo.git" class="bare">https://git.laborejo.org/lss/argodejo.git</a></code></p>
</li>
</ul>
</div>
</li>
<li>
<p>Und die Liste der NSM kompatiblen Programme: <a href="http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm" class="bare">http://non.tuxfamily.org/wiki/ApplicationsSupportingNsm</a></p>
<p>Wechseln Sie in das neue Verzeichnis und benutzen diese Befehle:
*<code>./configure --prefix=/usr</code></p>
<div class="ulist">
<ul>
<li>
<p>Das Standardprefix is /usr/local</p>
</li>
</ul>
</div>
</li>
<li>
<p><code>make</code></p>
</li>
<li>
<p><code>sudo make install</code></p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Nun ist das Programm durch <code>argodejo</code> in ihrem Terminal oder Programmstarter vorhanden.</p>
</div>
<div class="paragraph">
<p>In der Datei README.md befinden sich weitere Möglichkeiten argodejo zu starten. Diese sind zum
Musikmachen nicht praktikabel, aber nützlich für Tests und Entwicklung.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_helfen_und_entwicklung">2. Helfen und Entwicklung</h2>
<h2 id="_helfen_und_entwicklung">10. Helfen und Entwicklung</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Sie können Argodejo auf viele Arten und Weisen helfen: Testen und Fehler melden, übersetzen, marketing,
anderen Nutzern helfen und schließlich programmieren.</p>
</div>
<div class="sect2">
<h3 id="_testen_und_programmfehler">2.1. Testen und Programmfehler</h3>
<h3 id="_testen_und_programmfehler">10.1. Testen und Programmfehler</h3>
<div class="paragraph">
<p>Falls Sie einen Fehler im Programm entdecken (oder es zu langsam läuft) melden Sie diese bitte auf
eine Art und Weise, die ihnen am besten passt.</p>
@ -590,31 +1145,21 @@ eine Art und Weise, die ihnen am besten passt.</p>
</div>
</div>
<div class="sect1">
<h2 id="_entwicklung">3. Entwicklung</h2>
<h2 id="_entwicklung">11. Entwicklung</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Falls Sie an der Entwicklung interessiert sind, melden Sie sich am besten direkt bei uns (s.o.)
Kurzversion: clone git, programmieren, einen git-patch erstellen oder uns eine git URL zukommen lassen.</p>
</div>
<div class="sect2">
<h3 id="_übersetzungen">3.1. Übersetzungen</h3>
<h3 id="_übersetzungen">11.1. Übersetzungen</h3>
<div class="paragraph">
<p>Argodejo ist mit Hilfe der Qt-Toolchain sehr einfach zu übersetzen, ohne, dass man dafür Programmieren muss.
Die einfachste Variante ist es einfach die Entwickler anzusprechen und sie werden die neue Sprache einrichten.</p>
</div>
<div class="paragraph">
<p>Hier ist dennoch die komplette Anleitung, um eine Übersetzung komplett alleine anzufertigen und in
das Programm einzubinden. Das Programm ist in zwei Teile aufgeteilt: Ein gemeinsames "Template"
(für alle Laborejo Software Suit Programme) sowie das eigentliche Programm.</p>
</div>
<div class="paragraph">
<p>Der Übersetzungsprozess ist der gleiche für beide Teile, man muss ihn jedoch in unterschiedlichen
Verzeichnissen durchführen:
<code>template/qtgui</code> und nur <code>/qtgui</code>, relativ zum Stammverzeichnis, wo sich die ausführbare Datei
argodejo befindet.</p>
</div>
<div class="paragraph">
<p>Jedes "template/qtgui" hier kann durch nur "qtgui" ersetzt werden um den zweiten Teil zu übersetzen.</p>
das Programm einzubinden.</p>
</div>
<div class="paragraph">
<p>So fügt man eine neue Sprache hinzu:</p>
@ -622,7 +1167,7 @@ argodejo befindet.</p>
<div class="ulist">
<ul>
<li>
<p>Öffnen Sie ein Terminal und navigieren zu template/qtgui/resources/translations</p>
<p>Öffnen Sie ein Terminal und navigieren zu qtgui/resources/translations</p>
</li>
<li>
<p>Bearbeiten Sie die Datei <code>config.pro</code> in einem Texteditor.</p>
@ -659,13 +1204,13 @@ argodejo befindet.</p>
</ul>
</div>
<div class="paragraph">
<p>Die Übersetzung können Sie auch selbst, zum Testen, in Patroneo einbinden. Dafür sind rudimentäre
<p>Die Übersetzung können Sie auch selbst, zum Testen, einbinden. Dafür sind rudimentäre
Python Kentnisse nötig.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Im Qt Linguist "Datei" Menü ist eine "Release" Option. Das erstellt eine <code>.qm</code> Datei im gleichen Verzeichnis wie die <code>.ts</code> Datei.* Bearbeiten Sie <code>template/qtgui/resources/resources.qrc</code> und kopieren die Zeile <code>&lt;file&gt;translations/de.qm&lt;/file&gt;</code> . Dabei das Länderkürzel zum Neuen ändern.</p>
<p>Im Qt Linguist "Datei" Menü ist eine "Release" Option. Das erstellt eine <code>.qm</code> Datei im gleichen Verzeichnis wie die <code>.ts</code> Datei.* Bearbeiten Sie <code>qtgui/resources/resources.qrc</code> und kopieren die Zeile <code>&lt;file&gt;translations/de.qm&lt;/file&gt;</code> . Dabei das Länderkürzel zum Neuen ändern.</p>
</li>
<li>
<p>Führen Sie <code>sh buildresources.sh</code> aus</p>
@ -703,7 +1248,7 @@ Ansonsten starten Sie argodejo mit diesem Befehl, Sprachcode ändern, vom Termin
</div>
<div id="footer">
<div id="footer-text">
Last updated 2020-05-07 12:06:57 +0200
Last updated 2020-05-16 15:36:57 +0200
</div>
</div>
</body>

Loading…
Cancel
Save