Skip to content

Releases: openstenoproject/plover

weekly-v3.0.0+93.gb7a630a

02 Jun 14:42
Compare
Choose a tag to compare
Pre-release

Enhancements

  • More detailed runtime logging, more detailed machine traces

Fixes

  • Fix TX Bolt slowdown on Mac OS X (thanks @stanographer for lending me his LightSpeed)
  • OSX key combos now use the cross-platform list
  • Fix retro currency formatting with decimal (e.g. formatting 1.20 to $1.20)

Download & Install

Windows

Download and run the .exe below. Alternatively, if you're suffering from the 'executable not working after reboot' issue on Windows, download the win32 zip instead.

Mac OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

Arch

Use AUR package plover-git

Other

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

weekly-v3.0.0+80.gdc7ccc3

26 May 03:39
Compare
Choose a tag to compare
Pre-release

Hi all,

I've been taking things slow lately to get rested up, but in my absence @benoit-pierre has been active as ever, making some great changes to Plover.

Features

  • Key combos have been reworked! It should be easier to make key combos now, especially for beginners.
    • Warnings are shown when you try to use keys that don't exist, like {#inventedkey}.
    • Keys are case-insensitive, meaning {#up} and {#Up} both hit your up arrow key.
    • Modifiers will implicitely use the left modifier, e.g. {#control(c)} is equivalent to {#Control_L(c)} from previous versions.
    • A common confusion for users of different platforms is our Linux-centric key names. Now you can use {#Windows} or {#Command} instead of {#Super} and {#Option} instead of {#Alt} if you are more comfortable with those key names.

Enhancements

  • Plover log is more verbose to make debugging easier.
  • Stroke normalization has been optimized, which should speed up dictionary loading and reduce startup time.
  • The configuration file should no longer change section orders on save.
  • Unicode characters are no longer escaped while saving JSON dictionaries.

Fixes

  • Mac OS X output should no longer occasionally stop when using the keyboard as your machine (thank you @jeremy-w)

Download & Install

Windows

Download and run the .exe below.

Mac OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

Arch

Use AUR package plover-git

Other

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

weekly-v3.0.0+31.g703baba

07 May 16:10
Compare
Choose a tag to compare
Pre-release

Features

  • Plover now supports \n (or \r) and \t as alternatives to {#Return} and {#Tab},
    which can be "undone" with the asterisk key
    • E.g. "R-R": "{^\n^}{-|}"
  • Plover can now start with its main window minimized (Configuration... > Display > Start Plover minimized)

Enhancements

  • Stroke logging is now turned off by default

Fixes

  • Fix entries starting with 6, 7, 8, or 9 without explicit hyphen not working
  • Fix edge-case crashes from retro delete space
  • On Windows, Alt-codes now work while Plover is running

Download & Install

Windows

Download and run the .exe below.

Mac OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

Arch

Use AUR package plover-git

Other

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

Version 3.0.0

30 Apr 17:36
Compare
Choose a tag to compare

Plover has its first stable release in over 2 years today.

So much work and love went into this, and we're looking forward to much more frequent releases in the future. Read on below for changes, fun facts, install instructions, and download links.

Plover version 3.0.0

  • New icon
  • Full unicode support across Windows, Linux, and Mac OS X
  • Updated homepage

Tools

  • Suggestions window training tool, shows alternate ways to write a word or phrase
  • Lookup window, invoke with {PLOVER:LOOKUP}
  • Dictionary Editor
  • Translation window has a configurable transparency
  • In Stroke Display, user can save and clear strokes

Configuration

Layout

  • Remap keyboard keys that correspond to steno, also add to list of suppressed keys to prevent accidental key presses

Output

  • Space placement before or after written words
  • First stroke after startup can be capitalized and without space
  • Configure Plover's buffer "memory"

Translation Control

Text formatting:

  • Capitalize next letter {-|}
  • Capitalize first letter of last word: {*-|}
  • Attach / delete space {^}, {^word}, {word^}
  • Carry capitalization {~|x}, where x is a character or symbol, with attach: {^~|x}, {~|x^}, {^~|x^}
    • {-|}{~|'^}em'Em
    • {-|}'em'em
  • Force lowercase next letter {>}
  • Lowercase first letter of last word: {*>}
  • Repeat last stroke {*+}
  • CAPS next word {<}
  • CAPS last word {*<}
  • Toggle asterisk in last stroke {*}
  • Separate last two strokes {*?}
    • KAT/HROGKAT and HROG
  • Remove space between last two strokes {*!}
  • Format currency on number {*($c)}, {*(€c)}, {*(£c)}, {*(c USD)}
    • 1234{*($c)}$1,234

Output Modes

  • Reset to default: {MODE:RESET}
  • CAPS: {MODE:CAPS}
  • Title Case: {MODE:TITLE}
  • lower case: {MODE:LOWER}
  • Snake_case: {MODE:SNAKE}
  • camelCase: {MODE:CAMEL}
  • Custom modes:
    • Change-space-character: {MODE:SET_SPACE:-}
    • Or eliminate spaces: {MODE:SET_SPACE:}
    • You can logically combine the above: {MODE:SNAKE}{MODE:CAPS}

Sample dictionary:

{
 "KA*PS": "{MODE:CAPS}",
 "T-LT": "{MODE:TITLE}",
 "HR*R": "{MODE:LOWER}",
 "STPH-BG": "{MODE:SNAKE}",
 "R-FT": "{MODE:RESET}",
 "KHRAO*ER": "{MODE:RESET}",
 "TK-RBS": "{MODE:SET_SPACE:-}",
 "K-BGS": "{MODE:CAMEL}",
 "TPH-FPS": "{MODE:SET_SPACE:}"
}

Media Key Support

Control volume and media playback

  • Windows
    • AudioRaiseVolume
    • AudioLowerVolume
    • AudioMute
    • AudioNext
    • AudioPrev
    • AudioStop
    • AudioPlay / AudioPause (Toggles)
    • Standby
    • Browser commands:
      • Back
      • Forward
      • Refresh
      • Stop
      • Search
      • Favorites
      • HomePage / WWW
    • MyComputer*
    • Calculator*
    • Mail*
    • *Sometimes won't work
  • Mac OS X
    • AudioRaiseVolume
    • AudioLowerVolume
    • AudioMute
    • AudioNext
    • AudioPrev
    • AudioStop
    • AudioPlay / AudioPause (Toggles)
    • Eject
    • MonBrightnessUp
    • MonBrightnessDown
    • KbdBrightnessUp
    • KbdBrightnessDown
  • Linux
    • All of the above, plus whatever is in your XF86keysym.h You can optionally include the XF86_ prefix

Sample strokes:

{
"SR*UP": "{#AudioRaiseVolume}",
"SR*D": "{#AudioLowerVolume}",
"PHAO*UT": "{#AudioMute}",
"TPH*EGT": "{#AudioNext}",
"PR*EF": "{#AudioPrev}"
}

Dictionary Updates

  • Plover ships with 3 default dictionaries:
    • main.json: Plover's StenEd-Mirabai-extended modern dictionary
    • commands.json: Commands, like arrow keys, copy & paste, and line returns
    • user.json: Blank dictionary that newly entered strokes will be added to
  • Many new strokes were added to main.json to since v2.5.8, medical terms, modern words, tech words, animals, and misstrokes. Many invalid entries were also pruned.

Fixes

  • All platforms suppress keyboard input when using it as a steno machine
  • Plover doesn't get lost off screen on startup
  • Mac OS X runs with retina support
  • Windows and Mac OS X compatibility across programs and websites was increased

Special Thanks

  • Thanks to our developer emeritus, @balshetzer
  • @mighele for the dictionary editor, retrospective strokes, spaces-after output
  • @Balthamos for the suggestions window
  • @rbrewer123 for fixes
  • @jeremy-w for translation transparency, documentation, contributing.md, PR & issue templates
  • @Avalai for the new Plover icon and help with the homepage layout
  • @benoit-pierre for doing so much work to make Plover better at its core, countless bug fixes, internal refactoring, new features, and great code reviews, literally hundreds of commits!
  • ...and all the other developers and users who submitted PRs and took part in issue discussion
  • @stenoknight for making steno free for everyone

Fun Facts

The last release, Plover v2.5.8:

  • Was released over 840 days ago
  • Was downloaded over 23,000 times

This release:

  • Adds 578 commits
  • Has received help from over 20 contributors

Download & Install

Windows

Download and run the .exe below.

Mac OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

Ubuntu

See Benoit Pierre's Plover PPA

Arch

Use AUR packages plover and plover-git

Other

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

weekly-v2.5.8+576.ga90528e

23 Apr 18:40
Compare
Choose a tag to compare
Pre-release

This release features fixes:

  • Fix edge cases in formatting where you could lose letters, e.g. when set spaces after and setting the space character to nothing.
  • Fix lost child process error which could suppress keyboard output on Windows, even after Plover was quit.

Windows

Download and run the .exe below.

OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

weekly-v2.5.8+567.g52ebe0b

03 Apr 19:14
Compare
Choose a tag to compare
Pre-release

Fixes

  • Keyboard mode on Windows: should no longer occasionally stop working, where Plover would seem functional but typing yielded no stenography.
  • Remove many invalid entries from main.json with feedback from #400
  • Revert change that made long strings on OSX cause slowdowns
  • Improve handling of TX Bolt protocol on a particular edge case
  • Use English Stenography system for orthography

Development

  • Tests are now run with ./setup.py test and tests have their own directory

Windows

Download and run the .exe below.

OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Additional instructions for various repos can be found in the Linux README

weekly-v2.5.8+529.gfbbc1f7

23 Mar 00:55
Compare
Choose a tag to compare
Pre-release

Weekly Pre-release

Features

Media keys have been added! For Linux, this means hundreds of new keys with an optional XF86_ prefix. All the keys below should function, though you may have to hook up global handlers depending on your distribution. See a list of XF86_ keys taken from XF86keysym.h

As for OSX and Windows, these are the possible media keys, which you can use such as:

{
"SR*UP": "{#AudioRaiseVolume}",
"SR*D": "{#AudioLowerVolume}",
"PHAO*UT": "{#AudioMute}"
}
Name OSX Windows
AudioRaiseVolume
AudioLowerVolume
MonBrightnessUp
MonBrightnessDown
AudioMute
Eject
AudioPause­ Play/Pause Play/Pause
AudioPlay Play/Pause Play/Pause
AudioNext
AudioPrev
AudioRewind
AudioStop
KbdBrightnessUp
KbdBrightnessDown
Standby
MyComputer*
Calculator*
Mail*

*Depending on your version of Windows and your keyboard driver, the application launching keys may not work.

Browser Action OSX Windows
Back
Forward
Refresh
Stop
Search
Favorites
HomePage
WWW

Fixes

  • Only save changed dictionaries with dictionary editor, add translation dialog
  • Internally handle read-only dictionaries
  • Use pkg_resources on Windows and OS X (previously only Linux)
  • Fix crash when opening Plover using some OS X key layouts
  • Catch exceptions on reconnect

Download & Install

Windows

Download and run the .exe below.

OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Ubuntu users may need to use a backport to get the latest version of wxPython:

sudo apt-add-repository -y ppa:adamwolf/kicad-trusty-backports
sudo apt-get update
sudo apt-get install python-wxgtk3.0

weekly-v2.5.8+487.g9d3cd22

19 Mar 18:16
Compare
Choose a tag to compare
Pre-release

Weekly Pre-release

Features

  • Stroke Display / Paper Tape now has a clear button, a save button to export to a text file, and scrolls forever. Thanks to @timthelion
  • Treal TR now automatically reconnects if the machine is disconnected during use
  • Running Plover from the command-line now supports --help, --version, --log-level

Fixes

  • Optimize Mac dmg size
  • Fix a doubled-notification when using native wx notifier
  • Windows output now sends the correct symbols even as the user changes keyboard layout (e.g. Qwerty, Azerty, Qwertz, Dvorak, Colemak, etc.)
  • "Add dictionary" file dialog can now be controlled by the steno machine

Download & Install

Windows

Download and run the .exe below.

OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Ubuntu users may need to use a backport to get the latest version of wxPython:

sudo apt-add-repository -y ppa:adamwolf/kicad-trusty-backports
sudo apt-get update
sudo apt-get install python-wxgtk3.0

weekly-v2.5.8+456.g56f1410

12 Mar 18:21
Compare
Choose a tag to compare
Pre-release

Weekly Pre-release

Fixes

  • Fix bug where retro delete space wouldn't work for punctuation and numbers
  • Fix "space-after" fingerspelling problem that caused spacing
  • Attempt to fix transposition errors on OS X, also improve reliability of extended characters
  • Add missing import; last week's builds didn't work on Linux

Documentation

There's now a Linux readme for users looking to get set up for development

Download & Install

Windows

Download and run the .exe below.

OS X

Download the .dmg file, drag Plover to your Applications folder, then go to System Preferences > Security & Privacy > Privacy > Accessibility > "+" Button > Select Applications/Plover. Now, run Plover.

Linux

You can pip install the wheel file. You can chmod +x the egg if you have all dependencies installed. Ubuntu users may need to use a backport to get the latest version of wxPython:

sudo apt-add-repository -y ppa:adamwolf/kicad-trusty-backports
sudo apt-get update
sudo apt-get install python-wxgtk3.0

Plover-2.5.8.317.gced379f

05 Mar 19:10
Compare
Choose a tag to compare
Pre-release

With this new "weekly" build of Plover, we hope to start a trend of rapid releases. We'll try to push a new weekly every time there's a new feature, so you might see weekly builds on a daily or biweekly basis, depending on how much actual development gets done. One thing is for sure, though, we won't wait another 2 years (!!!) before getting improvements into your hands.

This is a "pre-release", not quite a version 3.0.0 just yet, we want to have the brave among you try it out and let us know if anything broke in a major way.

Special Thanks

This release has been a huge team effort, and I'd like to thank many people and give some credit, where due. Firstly, thanks to @balshetzer for bringing Plover to its current state, and leaving a wonderful project with consistent style to take over. It's been a joy following in your footsteps. Thanks also to @mighele for work on many features, including the dictionary editor, the retrospective commands, and the lookup window. Another huge thanks is due for @Balthamos, who created the suggestions window in this release. @rbrewer123 also submitted some useful pull requests to improve the Stentura machine. @jeremy-w revived the translation transparency issue and got us set up with awesome contributing guidelines to help curious developers get started.

And in the last few months, since October, I've been hard at work with @benoit-pierre, who has been wonderful to work with. Benoit has done so much work on Plover, attacking core problems and making sweeping internal changes. He kept making pull requests and pushing for a release, he helped set up continuous integration, performed many code reviews, refactored the development environment on all systems, changed the core of Plover's steno engine, and made countless bug fixes. I can't summarize just how much he has done, you'll just have to review the commit history to see all the incredible work.

Finally, I'd like to thank @stenoknight. Without her, we wouldn't be all be stenoing together on the Discord chat, I wouldn't be stenoing my code, life would be very different. I've been overjoyed to be put in the position as lead dev for Plover, even though I'm not a Python expert like some of our other developers. I've really enjoyed getting things organized and I'm immensely proud of where the Open Steno community has managed to get Plover for this release; it's amazing to use and I hope that everyone enjoys all the new stuff! Speaking of new stuff, here's the changelog:

Features

  • New icon
    Plover icon 128x128 2x
  • Full Unicode support on Windows, OS X, and Linux. Now you can use a non-Latin alphabet, including extended symbols such as emoji 💥
  • New lookup window to look up strokes for a word. Use {PLOVER:LOOKUP}
    Lookup window
  • Configure whether space is outputted at the beginning or end of the current stroke (default/current is " add", new option outputs "add ")
  • New option to configure whether Plover's first stroke after being turned on is capitalized and has a space.
  • New option to change the number of undos that Plover remembers. The default is 100 up from 10.
  • New Dictionary Editor that lets you view and edit strokes in your dictionaries. You can filter by stroke or definition, and add, edit, and delete entries in your JSON and RTF dictionaries.
    Dictionary editor
  • New Suggestions window, a training tool that watches what you are writing, and gives other strokes that have the same output. It's great for discovering briefs, suffixes, prefixes, and alternative strokes.
    Suggestions Window
  • "Add Translation" Transparency option to make your dictionary updates more subtle in case you have clients who get distracted by it.
  • New commands:
    • Repeat last stroke: repeats the last stroke exactly, useful for things like arrow keys to avoid having to do a complex stroke multiple times: {*+}
    • Uppercase next word, turns "word" into "WORD": {<}
  • New retrospective commands:
    • Retrospective capitalize

      Capitalize last word: {*-|}

    • Retrospective uppercase

      Uppercase last word: {*<}

    • Retrospective lowercase last word

      Lower the first letter of the last word: {*>}

    • Retrospective toggle asterisk

      Change whether the last stroke did or didn't have an asterisk: {*}.

    • Retrospective insert space

      "Split" the last two strokes, turning KAT/LOG, "catalogue", into "cat log": {*?}

    • Retrospective delete space

      Remove a space between the last two words, turning "break off" into "breakoff": {*!}

    • Retrospective currency formatting

      Using a stroke of the form {*($c)}, where you can replace "$" with your own currency symbol, Plover will adjust your last stroke, if it's a number, optionally with two decimal places, (e.g. 123412.34) into currency format (in this case, $123,412.34)

  • Delete words on empty buffer. When Plover runs out of asterisk-undos, it will start to try to delete a word at a time instead of doing nothing.
  • Add remapping of the keyboard's layout through the configuration dialog, so that users can change which keys are suppressed and which suppressed keys correspond to steno keys. For example, you can suppress the spacebar, or set "Tab" to act as S-.

Keyboard config

- **Notifications!** Information and errors are now displayed in your system's notifications system. - **New error log**. `strokes.log` now shows strokes and translation output, `plover.log` shows errors and logged information. - **Better portable mode**. Configuration file (`plover.cfg`) and dictionaries can be stored relatively, so Plover should work portably. - **Carry capitalization across characters** with a new command: `~|`. Useful for quotations, like an opening quote: `{~|\"^}` - **Radio buttons instead of red/green P for output enabled/disabled**. Tweak main user interface window to be a little more accessible for users who may have difficult distinguishing between red and green.

Plover main interface

- **Add multiple dictionaries at once**. You can now add multiple dictionaries at once instead of one at a time in the "Add Dictionary" file selector. - **Add output modes** (manage case and space character)

Introduce a new breed of meta command, "MODE". Now Plover has persistent "modes" that affect the output of the text. The core of the functionality comes from controlling just:

  • The text case
  • The space character

For the text case, users can use "CAPS", "TITLE", "LOWER". This lets the text come out IN ALL CAPS, In Title Case, and, in all lowercase.

For the space character, using "SET_STRING", users can effectively replace Plover's built in "space" character with any of their choosing. For example, youcouldsetthecharacter to nothing, or-to-the-dash, or-ow-to-ow-any-ow-arbitrary-ow-string.

Then, to disable the functionality, users can use "MODE:RESET_SPACE" to reset to the default space, "MODE:RESET_CASE" to reset to the default case, and "MODE:RESET" to clear the space character and the case.

Finally, Plover ships with some special mode names to help out programmers: "SNAKE" and "CAMEL". Snake just sets the space character to underscores,_like_this_if_you_will, and Camel sets the next character to lowercase (using "{>}"), sets the case to Title case, and sets the space character to none, thus resulting inThisOutputStyle.

Example dictionary for most of the strokes (reset space and case aren't useful to me personally):

{
 "KA*PS": "{MODE:CAPS}",
 "T-LT": "{MODE:TITLE}",
 "HR*R": "{MODE:LOWER}",
 "STPH-BG": "{MODE:SNAKE}",
 "R-FT": "{MODE:RESET}",
 "KHRAO*ER": "{MODE:RESET}",
 "TK-RBS": "{MODE:SET_SPACE:-}",
 "K-BGS": "{MODE:CAMEL}",
 "TPH-FPS": "{MODE:SET_SPACE:}"
}

Dictionary

  • Split default dictionary into 3 default dictionaries. New Plover users (or users without any dictionaries configured) will find 3 dictionaries set up in their dictionary list by default: main.json, commands.json, and user.json. "Main" contains all the words, numbers, prefixes, and suffixes from the default dictionary, whereas "commands" is just the commands, such as copy, paste, add dictionary translation, toggle Plover, et cetera. The "user" dictionary is a blank dictionary that new strokes will automatically be added to, alleviating one of the struggles of starting out learning steno and not realizing that it's important to separate your own strokes from the default strokes.
  • Add more time increments (1:05 through to 1:55) to the default dictionary, using the K- and -BG strokes.
  • Add symbols to the dictionary to match Learn Plover!
  • Roughly 20,000 entries added to the main dictionary, mainly from Mirabai's and Ted's personal dictionaries. Includes some fixes, lots of new words, and steno-specific terminology.
  • New strokes using the carry capitalize meta: update quotation strokes to better handle words starting with apostrophes, like 'cause or 'em. The default quotation mark and parentheses strokes (KW-GS, KR-GS; PREPB and PR*EPB) also should no longer force lowercase, making them better for use in your text.

Fixe...

Read more