From 4d4e538ecfef9458f6a70001d53428ba1e94ad74 Mon Sep 17 00:00:00 2001 From: Benjamin Klum Date: Mon, 21 Oct 2024 12:42:25 +0200 Subject: [PATCH] #1256 Docs: Improve introduction and partially key concepts --- .../modules/ROOT/pages/introduction.adoc | 24 +++--- .../modules/ROOT/pages/key-concepts.adoc | 81 +++++++++---------- .../mapping-panel/glue-section.adoc | 8 +- 3 files changed, 52 insertions(+), 61 deletions(-) diff --git a/doc/realearn/modules/ROOT/pages/introduction.adoc b/doc/realearn/modules/ROOT/pages/introduction.adoc index 4dc76eb87..0a772c5e6 100644 --- a/doc/realearn/modules/ROOT/pages/introduction.adoc +++ b/doc/realearn/modules/ROOT/pages/introduction.adoc @@ -1,23 +1,19 @@ = Introduction +|=== +|Last update of text: |`2024-10-20 (v2.16.10)` +|Last update of relevant screenshots: |`2024-10-20 (v2.16.10)` +|=== + link:https://www.helgoboss.org/projects/realearn[ReaLearn] is a versatile controller integration tool for REAPER. -It is part of link:https://www.helgoboss.org/projects/helgobox[Helgobox]. +It comes as a core part of the link:https://www.helgoboss.org/projects/helgobox[Helgobox] suite. -This reference describes each user interface element, each concept and each feature of ReaLearn in detail. -You should use it whenever you want to know more about a specific user interface element or if you want to take a deeper dive into a specific functionality of ReaLearn. -**If you have never used ReaLearn before, please start with the link:https://github.com/helgoboss/helgobox/wiki/ReaLearn-Home[Wiki] instead! -It's much more beginner-friendly.** +This reference provides a detailed description of ReaLearn's user interface, concepts, and functionalities. Use it whenever you need an in-depth exploration of a specific feature or functionality in ReaLearn. [IMPORTANT] -.This document is the reference of ReaLearn. ==== -It is targeted at users who are already familiar with the ReaLearn basics and want to look up specific information. -**If you are a beginner, please use the link:https://github.com/helgoboss/helgobox/wiki/ReaLearn-Home[Wiki] instead! -It contains practical tutorials.** -==== +**If you are a beginner, please use the link:https://github.com/helgoboss/helgobox/wiki/ReaLearn-Home[Wiki] instead!** -|=== -|Last update of text: |`2024-10-20 (v2.16.10)` -|Last update of relevant screenshots: |`2024-10-20 (v2.16.10)` -|=== +This reference is targeted at users who are already familiar with the ReaLearn basics and want to look up specific information. The Wiki is perfect if you are just starting off. It guides you through the very basics and contains links to easily digestable video tutorials. +==== diff --git a/doc/realearn/modules/ROOT/pages/key-concepts.adoc b/doc/realearn/modules/ROOT/pages/key-concepts.adoc index 14d23846f..4047682ea 100644 --- a/doc/realearn/modules/ROOT/pages/key-concepts.adoc +++ b/doc/realearn/modules/ROOT/pages/key-concepts.adoc @@ -1,81 +1,77 @@ - = Key concepts -This section provides short descriptions of ReaLearn's key concepts. -A good understanding of those concepts is key to use ReaLearn effectively, no matter which of its many features you are going to use. +This section offers brief descriptions of ReaLearn's key concepts. +A solid understanding of these concepts is essential for effectively using ReaLearn, regardless of which features you plan to utilize. [[control]] == Control -In ReaLearn, the word _control_ most of the time refers to the process of triggering or adjusting something in REAPER (e.g. triggering an action or adjusting a FX parameter). +In ReaLearn, the term _control_ typically refers to the process of triggering or adjusting something in REAPER, such as executing an action or modifying an FX parameter. [[feedback]] == Feedback -In ReaLearn, the word _feedback_ refers to the process of controlling LEDs, motor faders or displays on your device, in response to events in REAPER (e.g. a track volume change). +In ReaLearn, the term _feedback_ refers to controlling LEDs, motorized faders, or displays on your device in response to events in REAPER, such as a track volume change. [[controller]] == Controller -A controller is the device that you want to use for controlling REAPER. -Most of the time, it's a hardware device, for example a MIDI keyboard or control surface. -But it could just as well be a software, for example an OSC app. +A _controller_ is the device you use to control REAPER. +It is usually a hardware device, such as a MIDI keyboard or control surface, but it can also be software, like an OSC app. [[control-element]] == Control element -A control element is anything that you can use to control something. -In most cases, it's a piece of plastic on your hardware controller. +A control element is any component you can use to control something. +In most cases, it's a physical part of your hardware <>. -Examples: Knobs, encoders, faders, buttons, keys, pads, pitch wheels, acceleration sensors. +Examples include knobs, encoders, faders, buttons, keys, pads, pitch wheels and acceleration sensors. [[control-element-interaction]] == Control element interaction -A control element interaction is the action of using a <>. +A control element _interaction_ is the act of using a <>. -Most often, there's exactly one type of interaction you can do with a certain control element: +Typically, each control element has one primary interaction type: * _Turning_ a knob * _Pressing/releasing_ a button * _Moving_ a fader -But sometimes, one <> can be used in multiple ways: +However, some control elements allow multiple interactions: * _Moving_ a touch-sensitive fader * _Touching/releasing_ a touch-sensitive fader -In this reference, when we write <>, we often actually mean <>. -Because most of the time, they are essentially the same. +In this reference, <> often implies <>, as they are usually synonymous. [[feedback-element]] == Feedback element -A feedback element is anything on your controller that can indicate or display something. +A _feedback element_ is any part of your <> that can indicate or display information. -Examples: LEDs, motor faders, displays. +Examples includes LEDs, motor faders and displays. Very frequently, control elements and feedback elements are combined: - Button with an integrated LED -- Encoder with am LED ring -- Motor fader +- Encoder with an LED ring +- Motorized fader -That's why this reference sometimes uses the term <> even if it's referring to the corresponding <>, too. +For this reason, this reference sometimes uses <> to refer to both the <> and the corresponding <>. [[input-port]] == Input port -For letting you control things, ReaLearn somehow needs to react to events coming from your <>. -It does so by listening to events from an input port, which can be a MIDI input device port, an OSC port or your computer keyboard. +To enable control, ReaLearn needs to respond to events from your <>. +It achieves this by listening to events from an _input port_, which can be a MIDI device port, an OSC port or your computer keyboard. You can change the input port using the xref:user-interface/main-panel/inputoutput-section.adoc#input-menu[]. [[output-port]] == Output port -For sending <> back to your controller, ReaLearn needs to somehow send instructions back to your <>. -It does so by connecting to an output port, which can be a MIDI output device port or an OSC port. +To send <> back to your <>, ReaLearn transmits instructions through an _output port_, which can be a MIDI device port or an OSC port. You can change the output port using the xref:user-interface/main-panel/inputoutput-section.adoc#output-menu[]. @@ -89,48 +85,45 @@ For example, one instance could be on the monitoring FX chain and two instances [[unit]] == Unit -Each ReaLearn <> contains at least one unit, the so-called _main unit_. -But it may contain an arbitrary number of additional units. +Each ReaLearn <> contains at least one _unit_, known as the _main unit_, but it can also contain an arbitrary number of additional units. -Units are like "mini instances" within one real ReaLearn <>. -They make it possible that one ReaLearn <> can deal with many controllers at the same time. -Each unit has its own <>, <>, <>, <>, xref:further-concepts/compartment-concepts.adoc#controller-preset[], xref:further-concepts/compartment-concepts.adoc#main-preset[], and so on. +Units function like "mini instances" within a single ReaLearn <>, allowing that instance to manage multiple controllers simultaneously. +Each unit has its own <>, <>, <>, <>, xref:further-concepts/compartment-concepts.adoc#controller-preset[], xref:further-concepts/compartment-concepts.adoc#main-preset[], and more. [[compartment]] == Compartment -Each unit consists of exactly two compartments. -A compartment is a self-contained list of mappings that can be saved as independent preset. -The two compartments available in each unit are: +Each unit consists of two compartments. +A compartment is a self-contained list of mappings that can be saved as an independent preset. +The two compartments in each unit are: [[main-compartment]] Main compartment:: -This compartment is the most important compartment. -Its purpose is to define what the controller device should do, e.g. letting a fader control the volume of a track or projecting the name of an FX parameter to a hardware display. +This is the primary compartment. +Its purpose is to define what the controller device should do, e.g., allowing a fader to control track volume or displaying the name of an FX parameter on a hardware display. + -We call the mappings in this compartment [[main-mapping,Main mapping]] _main mappings_ and the presets _main presets_. +We refer to the mappings in this compartment [[main-mapping,Main mapping]] _main mappings_ and the presets _main presets_. [[controller-compartment]] Controller compartment:: -Usage of the controller compartment is optional. -It has two main purposes: Describing all control elements which a controller has, giving them descriptive names and enabling xref:further-concepts/compartment-concepts.adoc#virtual-control[]. +The controller compartment is optional and serves two main purposes: Describing all control elements of the controller, assigning them descriptive names and enabling xref:further-concepts/compartment-concepts.adoc#virtual-control[]. + -We call the mappings in this compartment [[controller-mapping,Controller mapping]] _controller mappings_ and the presets _controller presets_. +We refer to the mappings in this compartment [[controller-mapping,Controller mapping]] _controller mappings_ and the presets _controller presets_. [#mapping] == Mapping -Each compartment consists of a list of mappings. -A mapping is arguably the most important concept in Realearn. +Each compartment contains a list of mappings. +A mapping is one of the most important concepts in ReaLearn. It connects a <> and/or <> on your <> with an action or parameter in REAPER. === Anatomy of a mapping -Each mapping in ReaLearn is composed of 3 elements: +Each mapping in ReaLearn consists of three elements: <>:: Describes the <> and/or <> on the <>. -<>:: Something in REAPER that wants to be controlled and/or provides feedback, e.g. track volume or cursor position or an action. +<>:: Something in REAPER that is to be controlled or provides feedback, such as track volume, cursor position or an action. -<>:: A processor that sits between <> and <> and filters or transforms <> and <> streams. +<>:: A processor that sits between <> and <>, filtering and transforming <> and <> streams. [[source]] == Source diff --git a/doc/realearn/modules/ROOT/pages/user-interface/mapping-panel/glue-section.adoc b/doc/realearn/modules/ROOT/pages/user-interface/mapping-panel/glue-section.adoc index ad78f2e4d..fc069087c 100644 --- a/doc/realearn/modules/ROOT/pages/user-interface/mapping-panel/glue-section.adoc +++ b/doc/realearn/modules/ROOT/pages/user-interface/mapping-panel/glue-section.adoc @@ -10,7 +10,6 @@ :encoder: Rotary endless encoder :led: LED :value-indicator: Value indicator (LED ring, motor fader, ...) -:usage-dependent: Depending on the context, this can have different effects: image:realearn/screenshots/mapping-panel-glue.png[Screenshot] @@ -186,19 +185,21 @@ include::partial$glue/usage-dependent-effect.adoc[] |If min > 0 and <> is <>, button releases are ignored. Because this also affects {feedback}, it's usually better to use the <> instead! + |{velocity-sensitive-button} |{control} |Defines the observed velocity range, for example to react to only the lower velocity layer of a key press. + |{range-element} |{control} -|Defines the observed value range. -For example to react only to the upper half of a fader. +|Defines the observed value range. For example to react only to the upper half of a fader. |{led} |{feedback} |On many controllers which support colored LEDs, *Min* sets the *off* color and *Max* sets the *on* color. + |{value-indicator} |{feedback} |Sets the lowest/highest indicated value. @@ -470,6 +471,7 @@ include::partial$glue/usage-dependent-effect.adoc[] |=== + [#speed-min-max] == Speed Min/Max controls