plover-controller


Nameplover-controller JSON
Version 0.0.18 PyPI version JSON
download
home_pagehttps://github.com/tadeokondrak/plover_controller
SummaryController support for Plover
upload_time2024-04-26 20:40:57
maintainerNone
docs_urlNone
authorTadeo Kondrak
requires_pythonNone
licenseGNU General Public License v2 or later (GPLv2+)
keywords plover plover_plugin
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🎮 plover_controller

This plugin was designed for use with [Open Steno Project's Plover](https://openstenoproject.org).
With only a video game controller, you can harness the power of machine stenography, a shorthand writing system that's been proven effective since its inception in 1879.
To this day, stenography is trusted for use in live captioning and court reporting, due to its high speed and accuracy.


> [!WARNING]
> plover_controller may not work on macOS. Only Windows and Linux have been tested successfully.

## Table of Contents

1. [Learning Resources](#learning-resources)
1. [Installation](#installation)
1. [Usage](#usage)
    1. [Examples](#examples)
1. [Setup](#setup)
    1. [Mapping Buttons](#mapping-buttons)
1. [The Default Map](#the-default-map)
    1. [Left Joystick](#left-joystick)
    1. [Right Joystick](#right-joystick)
    1. [Buttons](#right-joystick)
1. [Default mapping image](#default-mapping-image)

## Learning resources

To get started with controller steno, check out these fantastic [learning resources on the Plover wiki](https://github.com/openstenoproject/plover/wiki/Learning-Stenography)!
Need assistance or just want to chat about steno? Join the lively steno community on the [Plover Discord](https://discord.com/invite/0lQde43a6dGmAMp2)

## Installation

We recommend installation via Plover's built-in Plugins Manager.
For manual installation, follow [the step-by-step guide in the Plover documentation](https://plover.readthedocs.io/en/latest/cli_reference.html#plugin-installer).

## Usage

Stenography is a phonetic/mnemonic shorthand writing system.
It is predominantly written based on sound in Plover theory.

Plover processes the keys in the following order, known as "steno order":
`STKPWHRAO*EUFRPBLGTSDZ`.

In the default configuration:

- The left joystick handles the beginning consonants `STKPWHR-`
- The shoulder buttons and triggers handle the vowels `AOEU`
- The right joystick and ABXY buttons handle `*` and the ending consonants `-FRPBLGTSDZ`.

To see which characters are being registered, open the **Paper Tape** window in Plover.

### Examples

Let's say you wanted to write the word "cat".
In Plover theory, cat is written like `KAT`.
To write "cat" with your controller, do the following simultaneously:

1. Move the left joystick down and to the left for the starting consonant `K-`
2. Press the left trigger button for the vowel `A`
3. Press the X button for the ending consonant `-T`

Finally, release the joystick, trigger, and X button, which should output "cat".

Here's a slightly more difficult one, "straps".
Do the following, keeping at least one button pressed or joystick moved before releasing to end the stroke:

1. Press the left joystick for `S-`
2. Move the left joystick up and to the left for `T-`
3. Move the left stick to the bottom right for `R-`
4. Press the left trigger for `A`
5. Move the right joystick to the top for `-P`
6. Press the A button (Xbox layout A) for `-S`

Release to end the stroke, and you should get the output `straps`.

## Setup

Once the plugin is installed and Plover has been restarted, Plover's **Machine** select box should now have a **Controller** option.

The settings for **plover_controller** can be found in the Plover Configuration under the **Machine** tab.

### Mapping buttons

The default configuration was created for use with an Xbox Elite controller.
If you are using any other controller, you will likely have to change the default key mapping in the Plover Machine settings.

Any problems will most likely be due to your button map. The best way to resolve these issues is to:

- Open the Plover **Machine** Configuration menu.
- Move the joystick or press the button causing problems
- Observe the text output in the **Last axis event** and **Last other event** fields at the bottom of the **Options** section, and compare it to the text in the **Mapping** field. Make changes as needed.

## Default mapping

### Left joystick

```
         -----------------
      /   \             /   \
     /     \    P-     /     \
    /       \         /       \
   /   T-    \_______/    H-   \
  /          /       \          \
 /          /         \          \
 +---------|     S-    |---------+
 \          \         /          /
  \          \       /          /
   \   K-     \_____/     R-   /
    \        /       \        /
     \      /    W-   \      /
      \    /           \   /
         -----------------
```
### Right joystick

```
         -----------------
      /   \             /   \
     /     \    -P     /     \
    /       \         /       \
   /   -F    \_______/    -L   \
  /          /       \          \
 /          /         \          \
 +---------|     *     |---------+
 \          \         /          /
  \          \       /          /
   \   -R     \_____/     -G   /
    \        /       \        /
     \      /   -B    \      /
      \    /           \    /
         -----------------
```

### Buttons

| Button (Xbox Labels)     | Maps To  |
|--------------------------|----------|
| Left Trigger / Paddle 4  | A        |
| Left Bumper / Paddle 3   | O        |
| Right Bumper / Paddle 1  | E        |
| Right Trigger / Paddle 2 | U        |
| Select                   | *        |
| Start                    | #        |
| X Button                 | -T       |
| A Button                 | -S       |
| Y Button                 | -D       |
| B Button                 | -Z       |

## Default mapping image

![Default mapping](https://github.com/tadeokondrak/plover_controller/assets/4098453/f2883413-c177-4c0c-80aa-778b11a5173b)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/tadeokondrak/plover_controller",
    "name": "plover-controller",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "plover plover_plugin",
    "author": "Tadeo Kondrak",
    "author_email": "me@tadeo.ca",
    "download_url": "https://files.pythonhosted.org/packages/3d/ec/cdf06f4eede9369a80a30f0e763b183f0c63647f31dc97e2b1cd78dda1c9/plover-controller-0.0.18.tar.gz",
    "platform": null,
    "description": "# \ud83c\udfae plover_controller\n\nThis plugin was designed for use with [Open Steno Project's Plover](https://openstenoproject.org).\nWith only a video game controller, you can harness the power of machine stenography, a shorthand writing system that's been proven effective since its inception in 1879.\nTo this day, stenography is trusted for use in live captioning and court reporting, due to its high speed and accuracy.\n\n\n> [!WARNING]\n> plover_controller may not work on macOS. Only Windows and Linux have been tested successfully.\n\n## Table of Contents\n\n1. [Learning Resources](#learning-resources)\n1. [Installation](#installation)\n1. [Usage](#usage)\n    1. [Examples](#examples)\n1. [Setup](#setup)\n    1. [Mapping Buttons](#mapping-buttons)\n1. [The Default Map](#the-default-map)\n    1. [Left Joystick](#left-joystick)\n    1. [Right Joystick](#right-joystick)\n    1. [Buttons](#right-joystick)\n1. [Default mapping image](#default-mapping-image)\n\n## Learning resources\n\nTo get started with controller steno, check out these fantastic [learning resources on the Plover wiki](https://github.com/openstenoproject/plover/wiki/Learning-Stenography)!\nNeed assistance or just want to chat about steno? Join the lively steno community on the [Plover Discord](https://discord.com/invite/0lQde43a6dGmAMp2)\n\n## Installation\n\nWe recommend installation via Plover's built-in Plugins Manager.\nFor manual installation, follow [the step-by-step guide in the Plover documentation](https://plover.readthedocs.io/en/latest/cli_reference.html#plugin-installer).\n\n## Usage\n\nStenography is a phonetic/mnemonic shorthand writing system.\nIt is predominantly written based on sound in Plover theory.\n\nPlover processes the keys in the following order, known as \"steno order\":\n`STKPWHRAO*EUFRPBLGTSDZ`.\n\nIn the default configuration:\n\n- The left joystick handles the beginning consonants `STKPWHR-`\n- The shoulder buttons and triggers handle the vowels `AOEU`\n- The right joystick and ABXY buttons handle `*` and the ending consonants `-FRPBLGTSDZ`.\n\nTo see which characters are being registered, open the **Paper Tape** window in Plover.\n\n### Examples\n\nLet's say you wanted to write the word \"cat\".\nIn Plover theory, cat is written like `KAT`.\nTo write \"cat\" with your controller, do the following simultaneously:\n\n1. Move the left joystick down and to the left for the starting consonant `K-`\n2. Press the left trigger button for the vowel `A`\n3. Press the X button for the ending consonant `-T`\n\nFinally, release the joystick, trigger, and X button, which should output \"cat\".\n\nHere's a slightly more difficult one, \"straps\".\nDo the following, keeping at least one button pressed or joystick moved before releasing to end the stroke:\n\n1. Press the left joystick for `S-`\n2. Move the left joystick up and to the left for `T-`\n3. Move the left stick to the bottom right for `R-`\n4. Press the left trigger for `A`\n5. Move the right joystick to the top for `-P`\n6. Press the A button (Xbox layout A) for `-S`\n\nRelease to end the stroke, and you should get the output `straps`.\n\n## Setup\n\nOnce the plugin is installed and Plover has been restarted, Plover's **Machine** select box should now have a **Controller** option.\n\nThe settings for **plover_controller** can be found in the Plover Configuration under the **Machine** tab.\n\n### Mapping buttons\n\nThe default configuration was created for use with an Xbox Elite controller.\nIf you are using any other controller, you will likely have to change the default key mapping in the Plover Machine settings.\n\nAny problems will most likely be due to your button map. The best way to resolve these issues is to:\n\n- Open the Plover **Machine** Configuration menu.\n- Move the joystick or press the button causing problems\n- Observe the text output in the **Last axis event** and **Last other event** fields at the bottom of the **Options** section, and compare it to the text in the **Mapping** field. Make changes as needed.\n\n## Default mapping\n\n### Left joystick\n\n```\n         -----------------\n      /   \\             /   \\\n     /     \\    P-     /     \\\n    /       \\         /       \\\n   /   T-    \\_______/    H-   \\\n  /          /       \\          \\\n /          /         \\          \\\n +---------|     S-    |---------+\n \\          \\         /          /\n  \\          \\       /          /\n   \\   K-     \\_____/     R-   /\n    \\        /       \\        /\n     \\      /    W-   \\      /\n      \\    /           \\   /\n         -----------------\n```\n### Right joystick\n\n```\n         -----------------\n      /   \\             /   \\\n     /     \\    -P     /     \\\n    /       \\         /       \\\n   /   -F    \\_______/    -L   \\\n  /          /       \\          \\\n /          /         \\          \\\n +---------|     *     |---------+\n \\          \\         /          /\n  \\          \\       /          /\n   \\   -R     \\_____/     -G   /\n    \\        /       \\        /\n     \\      /   -B    \\      /\n      \\    /           \\    /\n         -----------------\n```\n\n### Buttons\n\n| Button (Xbox Labels)     | Maps To  |\n|--------------------------|----------|\n| Left Trigger / Paddle 4  | A        |\n| Left Bumper / Paddle 3   | O        |\n| Right Bumper / Paddle 1  | E        |\n| Right Trigger / Paddle 2 | U        |\n| Select                   | *        |\n| Start                    | #        |\n| X Button                 | -T       |\n| A Button                 | -S       |\n| Y Button                 | -D       |\n| B Button                 | -Z       |\n\n## Default mapping image\n\n![Default mapping](https://github.com/tadeokondrak/plover_controller/assets/4098453/f2883413-c177-4c0c-80aa-778b11a5173b)\n\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v2 or later (GPLv2+)",
    "summary": "Controller support for Plover",
    "version": "0.0.18",
    "project_urls": {
        "Homepage": "https://github.com/tadeokondrak/plover_controller"
    },
    "split_keywords": [
        "plover",
        "plover_plugin"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4275463dd648d2b25d70da85dc94189fcaf511573e54673880cd62f4b8d12bea",
                "md5": "fdafe4933c9ee1e1f5197a8523cdb84b",
                "sha256": "02fcbccc161be0ecfd7533afa4c9dd3b90a1df0fd567940711259b79fda55351"
            },
            "downloads": -1,
            "filename": "plover_controller-0.0.18-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fdafe4933c9ee1e1f5197a8523cdb84b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 21815,
            "upload_time": "2024-04-26T20:40:55",
            "upload_time_iso_8601": "2024-04-26T20:40:55.699240Z",
            "url": "https://files.pythonhosted.org/packages/42/75/463dd648d2b25d70da85dc94189fcaf511573e54673880cd62f4b8d12bea/plover_controller-0.0.18-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3deccdf06f4eede9369a80a30f0e763b183f0c63647f31dc97e2b1cd78dda1c9",
                "md5": "feca456eb8636f6c7c014d6bfac9fb7d",
                "sha256": "33aedaa9d551f7b79b60ad9caaff82fdaa5a9b8a476e75f613f1dd7ab20a2bf5"
            },
            "downloads": -1,
            "filename": "plover-controller-0.0.18.tar.gz",
            "has_sig": false,
            "md5_digest": "feca456eb8636f6c7c014d6bfac9fb7d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 22764,
            "upload_time": "2024-04-26T20:40:57",
            "upload_time_iso_8601": "2024-04-26T20:40:57.389983Z",
            "url": "https://files.pythonhosted.org/packages/3d/ec/cdf06f4eede9369a80a30f0e763b183f0c63647f31dc97e2b1cd78dda1c9/plover-controller-0.0.18.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-26 20:40:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "tadeokondrak",
    "github_project": "plover_controller",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "plover-controller"
}
        
Elapsed time: 0.25137s