Skip to main content

Command plugin for Plover to run an arbitrary shell command

Project description

Plover Run Shell

Command plugin for Plover to run an arbitrary shell command.

The package is available on GitHub and PyPI.

Common issues

The subprocess inherits Plover's environment, and some plugins might set some environment variables.

For instance, on some operating systems, plover-debugging-console may set PAGER environment variable. (see issue #2) You may want to unset them explicitly, for example on systems with env:

env -uPAGER -uGIT_PAGER xterm

Usage

In order to use this plugin in Plover you need to create a dictionary entry of the form:

{
    "example_stroke": "{PLOVER:SHELL:command}"
}

Note:

  • The command might be executed synchronously (so you can use & on Linux or start on Windows if you don't want Plover to freeze, in case the called process is long-running).
  • (on UNIX systems) The command may be executed by the sh shell. If you want to use another shell, you can call that shell explicitly: bash -c "command".

Example

These examples are only for X on GNU/Linux systems (it relies on many external tools).

You should be able to construct similar translations by searching for "how to do task X from console/command-line".

If there's none, you can still write an external program with other programming language and call it from Plover. (alternatively, write it in Python and make a command plugin)

Alternatively, if you already have a working binding in the windows manager, you don't have to use this plugin and use Plover's key combination syntax.

  • Shutting down the machine

    "{PLOVER:SHELL:\\{ sleep 2s;poweroff; \\}&}{PLOVER:QUIT}"
    
  • Restart Plover (console GUI, in a new terminal)

    "{PLOVER:SHELL:xterm -e bash -c \"sleep 0.5s; plover --gui console\" &}{PLOVER:QUIT}"
    
  • Change brightness

    "{PLOVER:SHELL:xbacklight -10}"
    "{PLOVER:SHELL:xbacklight +10}"
    
  • Change volume (note that the solution with pactl is not robust because it relies on the sink number being 0)

    "{PLOVER:SHELL:pactl set-sink-volume 0 -5%}"
    "{PLOVER:SHELL:pactl set-sink-volume 0 +5%}"
    "{PLOVER:SHELL:amixer -D pulse sset Master 5%+}"
    "{PLOVER:SHELL:amixer -D pulse sset Master 5%-}"
    
  • Suspend (depends on your GNU/Linux distribution)

    "{PLOVER:SHELL:systemctl suspend}"
    "{PLOVER:SHELL:pm-suspend}"
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plover_run_shell-0.0.3.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

plover_run_shell-0.0.3-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file plover_run_shell-0.0.3.tar.gz.

File metadata

  • Download URL: plover_run_shell-0.0.3.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.6.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.5

File hashes

Hashes for plover_run_shell-0.0.3.tar.gz
Algorithm Hash digest
SHA256 7441556aba96a395719d0fb023f6cb39fc7d36e2822898457204a06feb41604f
MD5 28a98e6e142ef2c9c9d8c1dea2f80aff
BLAKE2b-256 4b91158839b4914463e7efb6478a9ae033e39c538d825bb7925ff4390bd60300

See more details on using hashes here.

File details

Details for the file plover_run_shell-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: plover_run_shell-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.6.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.5

File hashes

Hashes for plover_run_shell-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 96a49cd9b7753e0f84cd6357fce0d959d50e60d4ae002fa4f89ad6e4a1cf53ed
MD5 a73cd42668d2f911786e3933827b37ef
BLAKE2b-256 2638be4704f428a264ddff091dd81f1db300cc90dc5efffc83413c5295410052

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page