Autolookup GUI Plugin for Plover

Overview

Word Tray for Plover

PyPI GitHub

Word Tray is a GUI plugin that automatically looks up efficient outlines for words that start with the current input, much like autocomplete suggestions. It is heavily inspired by StenoTray, which was a widget made before Plover's plugin system was implemented.

Installation

Install Word Tray using the Plugin Manager!

Usage Notes

Pseudosteno & Tolerance

In the settings page, you may turn on Display Pseudosteno to show hidden sounds in the list of outlines, such as PLOFR instead of PHROFR.

Tolerance determines the maximum outline length above the minimum length the widget will list. For instance, if the minimum number of strokes required to stroke the word "sample" is 2, setting Tolerance = 3 will display all outlines with 2 to 5 strokes.

Macro Strokes & Shortcuts

To scroll between pages in the widget, you may use the following dictionary definitions. Note that these don't come with the plugin itself and you'll have to add them manually! Feel free to use the recommended strokes, or don't.

Action Dictionary Definition Recommended Stroke
Next Page =wt_next_page #-GS
Previous Page =wt_prev_page #-RB
Reload Suggestions =wt_reload #-RBGS

The plugin keeps an internal copy of your dictionaries to load suggestions faster. If you edit the dictionaries, this plugin might not respond immediately; you may force it to reload using the Reload Suggestions stroke.

Display Order Types

Display Order Explanation
Length Order by shortest word first
Frequency Order by most frequent word first, if the current system provides a frequency table.
Stroke Count Order by lowest stroke count first.
Alphabetical Order by translation alphabetically.
System Defined Order defined by the system. The default English stenotype system doesn't have a defined display order. Defaults to Length.

System-defined functions

If you're designing a language system for Plover and you'd like to customize the display order and format, you may do so by including these functions in your system file:

def WT_STROKE_FORMATTER(stroke: str) -> str:
    """Formats single strokes, such as STROEBG"""
    return ...

def WT_TRANSLATION_FORMATTER(translation: str) -> str:
    """Formats the translated string, such as 'stroke'"""
    return ...

def WT_SORTER(entry: Tuple[str, Tuple[str, ...]]) -> int:
    """
    Scores translation-outline pairs, such as ("translate", ("TRAPBS", "HRAEUT"))
    Note that the order of the tuples here are reversed from plover-next-stroke.

    Pairs are ordered from smallest to biggest;
    it need not be an int - anything that can be compared
    works, including strings or tuples of ints.
    """
    translation, outline = entry
    return ...

All suggestions will be run through the two formatters (if available) before being sorted. If the user chooses to turn on pseudosteno formatting, the pseudo conversion will happen first before that is passed to the sorter. The sorter will only be used if the user changes their display order to "System Defined".

License & Credits

This plugin is licensed under the MIT license.

The icons used in this plugin are taken from Icons8 Flat Color Icons.

Much of the UI in this plugin is taken from the Plover Next Stroke plugin.

Of course, it goes without saying that this plugin owes its existence to the original StenoTray, made by @brentn, with contributions from @Mqrius, @morinted, @seebs, and @David-Allison.

Owner
Kathy
CS Student, Steno Enthusiast.
Kathy
This is a small project written to help build documentation for projects in less time.

Documentation-Builder This is a small project written to help build documentation for projects in less time. About This project builds documentation f

Tom Jebbo 2 Jan 17, 2022
Feature Store for Machine Learning

Overview Feast is an open source feature store for machine learning. Feast is the fastest path to productionizing analytic data for model training and

Feast 3.8k Dec 30, 2022
Automatic links from code examples to reference documentation

sphinx-codeautolink Automatic links from Python code examples to reference documentation at the flick of a switch! sphinx-codeautolink analyses the co

Felix Hildén 41 Dec 17, 2022
EasyModerationKit is an open-source framework designed to moderate and filter inappropriate content.

EasyModerationKit is a public transparency statement. It declares any repositories and legalities used in the EasyModeration system. It allows for implementing EasyModeration into an advanced charact

Aarav 1 Jan 16, 2022
The tutorial is a collection of many other resources and my own notes

Why we need CTC? --- looking back on history 1.1. About CRNN 1.2. from Cross Entropy Loss to CTC Loss Details about CTC 2.1. intuition: forward algor

手写AI 7 Sep 19, 2022
DeltaPy - Tabular Data Augmentation (by @firmai)

DeltaPy⁠⁠ — Tabular Data Augmentation & Feature Engineering Finance Quant Machine Learning ML-Quant.com - Automated Research Repository Introduction T

Derek Snow 470 Dec 28, 2022
The OpenAPI Specification Repository

The OpenAPI Specification The OpenAPI Specification is a community-driven open specification within the OpenAPI Initiative, a Linux Foundation Collabo

OpenAPI Initiative 25.5k Dec 29, 2022
A hack to run custom shell commands when building documentation on Read the Docs.

readthedocs-custom-steps A hack to run custom steps when building documentation on Read the Docs. Important: This module should not be installed outsi

Niklas Rosenstein 5 Feb 22, 2022
NetBox plugin for BGP related objects documentation

Netbox BGP Plugin Netbox plugin for BGP related objects documentation. Compatibility This plugin in compatible with NetBox 2.10 and later. Installatio

Nikolay Yuzefovich 133 Dec 27, 2022
[Unofficial] Python PEP in EPUB format

PEPs in EPUB format This is a unofficial repository where I stock all valid PEPs in the EPUB format. Repository Cloning git clone --recursive Mickaël Schoentgen 9 Oct 12, 2022

layout-parser 3.4k Dec 30, 2022
The purpose of this project is to share knowledge on how awesome Streamlit is and can be

Awesome Streamlit The fastest way to build Awesome Tools and Apps! Powered by Python! The purpose of this project is to share knowledge on how Awesome

Marc Skov Madsen 1.5k Jan 07, 2023
Sphinx Theme Builder

Sphinx Theme Builder Streamline the Sphinx theme development workflow, by building upon existing standardised tools. and provide a: simplified packagi

Pradyun Gedam 23 Dec 26, 2022
YAML metadata extension for Python-Markdown

YAML metadata extension for Python-Markdown This extension adds YAML meta data handling to markdown with all YAML features. As in the original, metada

Nikita Sivakov 14 Dec 30, 2022
An MkDocs plugin to export content pages as PDF files

MkDocs PDF Export Plugin An MkDocs plugin to export content pages as PDF files The pdf-export plugin will export all markdown pages in your MkDocs rep

Terry Zhao 266 Dec 13, 2022
Showing potential issues with merge strategies

Showing potential issues with merge strategies Context There are two branches in this repo: main and a feature branch feat/inverting-method (not the b

Rubén 2 Dec 20, 2021
Documentation generator for C++ based on Doxygen and mosra/m.css.

mosra/m.css is a Doxygen-based documentation generator that significantly improves on Doxygen's default output by controlling some of Doxygen's more unruly options, supplying it's own slick HTML+CSS

Mark Gillard 109 Dec 07, 2022
Literate-style documentation generator.

888888b. 888 Y88b 888 888 888 d88P 888 888 .d8888b .d8888b .d88b. 8888888P" 888 888 d88P" d88P" d88""88b 888 888 888

Pycco 808 Dec 27, 2022
sphinx builder that outputs markdown files.

sphinx-markdown-builder sphinx builder that outputs markdown files Please ★ this repo if you found it useful ★ ★ ★ If you want frontmatter support ple

Clay Risser 144 Jan 06, 2023
Docov - Light-weight, recursive docstring coverage analysis for python modules

docov Light-weight, recursive docstring coverage analysis for python modules. Ov

Richard D. Paul 3 Feb 04, 2022