diff --git a/docs/Chords.rst b/docs/Chords.rst index f8a37ff..e0efa2e 100644 --- a/docs/Chords.rst +++ b/docs/Chords.rst @@ -289,3 +289,157 @@ We have added a compound chord: .. note:: Compound chords aren't limited to just two in a row. + +Dynamic Libraries +~~~~~~~~~~~~~~~~~ + +Dynamic Libraries are a way with which you can store multiple different chord libraries on a device. You can switch between the different libraries by using a pre-defined chord. With Dynamic Libraries, you can use the same chord to produce different outputs, depending on what library is currently active. + +For example, the chord: ``r+a+l`` can output: + +* ``really`` in the base library +* ``algorithm`` in a school library +* ``realtor@email.com`` in a work library + +``t+n+o+e`` can output: + +* ``note`` in the base library +* ``Eneot of Draconia`` in a library for Novel writing +* ``OnePlus`` in a library for Cell Phone blogging + +Add Dynamic Toggle Chords +^^^^^^^^^^^^^^^^^^^^^^^^^ + +To switch between Dynamic libraries, we add Dynamic Toggle Chords by using the device manager's chord editor: https://charachorder.io/config/chords/ + +First, we add a Dynamic Toggle that will return us to the base library. + +* chord: ``b+a+l+i`` +* output: + + Add the action: Base Library + + .. figure:: /assets/images/BaseLibraryAction.png + :alt: Base Library Action + + Then type the dynamic library name: ``base`` + +Then, we add a Dynamic Toggle for a library used at work. + +* chord: ``w+l+i+b`` +* output: + + Add the action: Dynamic Library + + .. figure:: /assets/images/DynamicLibraryAction.png + :alt: Dynamic Library Action + + Then type the dynamic library name: ``wlib`` + +The Dynamic Toggle chords look like this: + + .. image:: /assets/images/Dynamic-Toggle-Chords.png + :alt: Dynamic Toggle Chords + +.. note:: + + The chords we used in the examples above (``b+a+l+i`` and ``w+l+i+b``) and their outputs (``base`` and ``wlib``) are merely examples; they don't have to be exactly that. You can make the chord inputs and their outputs whatever you want, as long as you include the dynamic library action in the chord output. + +Add a chord in a dynamic library +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +#. Switch to the work library, by chording: ``w+l+i+b`` +#. It switches to the work library and outputs its name in plain text: ``wlib`` +#. You can ignore the name, erase it or just press ``ENTER`` to continue + on a new line. We'll get rid of the printed library name in the + :ref:`next section ` +#. Open the impulse chord menu: ``i+DUP`` +#. At the impulse output prompt, type your desired output: + ``realtor@email.com`` +#. Press: ``ENTER`` +#. At the impulse input prompt, chord: ``r+a+l`` +#. Press: ``ENTER`` + + .. note:: + + Adding a chord in a dynamic library doesn't overwrite an existing + chord on the base library because it adds the Dynamic Toggle + chord as a prefix. + + This is what the chords look like in the device manager's chord editor. The impulse prompt added the keys/actions that were pressed: + + .. _Dynamic Library Chord With Pressed Keys Num and Shift: + .. figure:: /assets/images/Dynamic-Library-Chord-With-Pressed-Keys-Num-And-Shift.png + :alt: Dynamic Library Chord With Pressed Keys Num and Shift + + * `(2)` with a thicker left line, is the left number layer key (left pinky west) + * Arrow down with a bottom line, is the action: Press and do not release the next key/action + * Arrow up with a thicker right line, is right shift (right pinky west) + * 2 can be typed on the number layer with either ``e`` (left index south) or ``t`` (right index south) + * Arrow up with a bottom line, is the action: Release the next key/action in the sequence + * Arrow up with a thicker right line, is right shift (right pinky west) + + The chord works fine: ``realtor@email.com`` + but if you want it to look like what it outputs, then you can replace the keys/actions, with an @ symbol, in the device manager's chord editor: https://charachorder.io + + .. _Dynamic Library Chord: + .. image:: /assets/images/Dynamic-Library-Chord.png + :alt: Dynamic Library Chord + + Now, while we're in the dynamic library: ``wlib`` + + * when we chord: ``r+a+l`` + * it outputs: ``realtor@email.com`` + +#. Switch to the base library by using the base Dynamic Toggle that we + created earlier: ``b+a+l+i`` +#. It switches to the base library and outputs its name: ``base`` + + Now, while we're on the base library: ``base`` + + * when we chord: ``r+a+l`` + * it outputs: ``really`` + +Select the dynamic library name automatically +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This step isn't required, but it's a convenience. + +When we switch between dynamic libraries, the Dynamic Toggle chord outputs the library name. It's an extra step to erase the name manually. + +Instead, let's select the dynamic library name automatically by adding +these actions to the end of the Dynamic Toggle chord output. + +.. note:: + + The actions below are on the same line in the device manager's chord editor, they are on separate lines here to make them easier to read. + +.. code-block:: + + {press_next}{left_shift} + {arrow left}{arrow left}{arrow left}{arrow left} + {release_next}{left_shift} + +The number of ``{arrow left}`` actions should match the number of +characters in the dynamic library's name; in this case, we used four characters for both: ``base`` and ``wlib`` + +The ``base`` and ``wlib`` Dynamic Toggle chords look like this: + +.. _Dynamic Toggle Chords Select Library Name: +.. image:: /assets/images/Dynamic-Toggle-Chords-Select-Library-Name.png + :alt: Dynamic Toggle Chords Select Library Name + +Now the library name will be selected automatically. + +Pressing the chord: ``w+l+i+b`` + +* Switches to the dynamic library +* outputs the library name: ``wlib`` +* and selects the name + +Now, it's easy to erase the name by: + +* Pressing: ``BACKSPACE`` +* or typing a character +* or pressing a chord + diff --git a/docs/assets/images/BaseLibraryAction.png b/docs/assets/images/BaseLibraryAction.png new file mode 100644 index 0000000..bb4395a Binary files /dev/null and b/docs/assets/images/BaseLibraryAction.png differ diff --git a/docs/assets/images/Dynamic-Library-Chord-With-Pressed-Keys-Num-And-Shift.png b/docs/assets/images/Dynamic-Library-Chord-With-Pressed-Keys-Num-And-Shift.png new file mode 100644 index 0000000..f0fbd41 Binary files /dev/null and b/docs/assets/images/Dynamic-Library-Chord-With-Pressed-Keys-Num-And-Shift.png differ diff --git a/docs/assets/images/Dynamic-Library-Chord.png b/docs/assets/images/Dynamic-Library-Chord.png new file mode 100644 index 0000000..14c7731 Binary files /dev/null and b/docs/assets/images/Dynamic-Library-Chord.png differ diff --git a/docs/assets/images/Dynamic-Toggle-Chords-Select-Library-Name.png b/docs/assets/images/Dynamic-Toggle-Chords-Select-Library-Name.png new file mode 100644 index 0000000..3c3bf8a Binary files /dev/null and b/docs/assets/images/Dynamic-Toggle-Chords-Select-Library-Name.png differ diff --git a/docs/assets/images/Dynamic-Toggle-Chords.png b/docs/assets/images/Dynamic-Toggle-Chords.png new file mode 100644 index 0000000..09de15c Binary files /dev/null and b/docs/assets/images/Dynamic-Toggle-Chords.png differ diff --git a/docs/assets/images/DynamicLibraryAction.png b/docs/assets/images/DynamicLibraryAction.png new file mode 100644 index 0000000..3e10856 Binary files /dev/null and b/docs/assets/images/DynamicLibraryAction.png differ