Python-based extendable tool

Sylvia van Os 4ed9e90bff Show dialog box on critical error 4 days ago
.github 7ede4c5ae5 Delete old template 1 month ago
docs 72cd81803e Fix license text 1 month ago
pext 4ed9e90bff Show dialog box on critical error 4 days ago
pext_dev b0575c5172 Update pext_dev to current standards 1 month ago
screenshots e1f31166f1 Fix docs 8 months ago
test 669305a260 Update modules automatically together with core 1 week ago
travis 27722ec1f0 Take macOS' accessibility API into account 1 week ago
.appveyor.yml 69191e2db1 Try to make AppVeyor deploy to GitHub releases too 4 days ago
.gitignore d020278113 Ignore compiled QML 6 months ago
.travis.yml f3c976559a Fix typo 1 week ago
CHANGELOG.md 4ed9e90bff Show dialog box on critical error 4 days ago
CODE_OF_CONDUCT.md 0fafc15359 Adding CoC (#68) 4 months ago
CONTRIBUTING.md da47228763 Add CONTRIBUTING.md 11 months ago
INSTALL_FROM_SOURCE.md 490af3c745 Windows! 4 days ago
Info.plist 49dbc238b2 Release Pext v0.15 1 week ago
LICENSE a07e0ae0b0 Initial commit 2 years ago
LICENSE-CCBYSA a6ec5ec726 Relicense documentation under CC BY-SA 4.0 5 months ago
README.md 69191e2db1 Try to make AppVeyor deploy to GitHub releases too 4 days ago
RELEASE_STEPS.md 49dbc238b2 Release Pext v0.15 1 week ago
logo.png b8244a6dbf Added white stroke to text. 2 months ago
pext.appdata.xml b99099ea5a Rename appdata file to make it noticed by AppImage 2 months ago
pext.desktop 61e1dc4163 AppImage packaging (#31) 2 months ago
setup.py 8fbf3608a1 Fix build 1 week ago
tox.ini 864c78edfc Initial implementation of typing output 1 week ago
workflow_graph.dot 72f4cd7988 Try to explain Pext better 11 months ago
workflow_graph.png 72f4cd7988 Try to explain Pext better 11 months ago

README.md

Pext

Lilly the leoger

Windows Build status ReadTheDocs Translation status Code Health

Contents

Community

If you need support or just want to chat with our community, we have the following options:

All these channels are linked to each other, so there is no need to worry about missing out.

We can also be reached on Twitter: @PextTool

Introduction

Pext stands for Python-based extendable tool. It is built using Python 3 and Qt5 QML and has its behaviour decided by modules. Pext provides a simple window with a search bar, allowing modules to define what data is shown and how it is manipulated.

For example, say you want to use Pext as a password manager. You load in the pass module, and it will show you a list of your passwords which you can filter with the search bar. When you select a password in the list, it will copy the password to your clipboard and Pext will hide itself, waiting for you to ask for it again.

Depending on the module you choose, what entries are shown and what happens when you select an entry changes. So choose the module appropriate for what you want to do, and Pext makes it easy.

Several modules are available for effortless install right within Pext.

Pext running the radiobrowser module with info panel Pext running the openweathermap module with context menu Pext running the emoji module

How it works

Pext is designed to quickly pop up and get out of your way as soon as you're done with something. It is recommended to bind Pext to some global hotkey, or possibly run multiple instances of it with different profiles under multiple hotkeys. Example Pext workflows look as follows:

Pext workflow graph

Simply put:

  • Open (Pext)
  • Search (for something)
  • Select (with Enter)
  • Hide (automatically)

Installation

Note: If you run into any issues, please check out the troubleshooting section near the end of this document before reporting a bug.

GNU/Linux

Arch

Pext is available as pext and pext-git. These packages are maintained by Ivan Semkin.

Other distros

We recommend the AppImages under GitHub releases, but you can also install from PyPI.

For the stable version (PyPI):

pip3 install pext --user

For the git version (PyPI):

pip3 install git+https://github.com/Pext/Pext.git --user

On some systems, you may need to use pip instead of pip3.

Alternatively, you can install Pext from source (not recommended and unsupported)

macOS

A macOS .dmg file is available in the releases section on GitHub.

Alternatively, see Installing Pext from source (not recommended and unsupported)

Windows

A Windows installer is available in the releases section on GitHub.

Alternatively, see See Installing Pext from source (not recommended and unsupported)

Usage

To actually use Pext, you will first have to install one or more modules. Check out the Pext organisation on GitHub or use Module -> Install module -> From online module list in the application for a list of modules.

After installating at least one module, you can load it from the Module -> Load module menu. After that, experiment! Each module is different.

For command line options, use --help.

Hotkeys

Entry management

  • Escape: Go one level up
  • Tab: Tab-complete the current input
  • Enter / Left mouse button: Select entry or run command
  • Ctrl+Shift+. / Right mouse button on header: Open state menu
  • Ctrl+. / Right mouse button on any item: Open context menu
  • Ctrl+J / Down arrow: Go one entry down
  • Ctrl+H / Up arrow: Go one entry up
  • Ctrl+F / Page down: Go one page down
  • Ctrl+B / Page up: Go one page up

Tab management

  • Ctrl+T: Open new tab
  • Ctrl+W: Close current tab
  • Ctrl+Tab: Switch to next tab
  • Ctrl+Shift+Tab: Switch to previous tab
  • Alt+<number>: Switch to tab <number>
  • F5: Reload tab, including code changes to the module

Session management

  • Ctrl+Q: Quit and save the currently loaded modules and settings to the profile
  • Ctrl+Shift+Q: Quit without saving to the profile

Troubleshooting

GNU/Linux

Installing module dependencies fails

Your distribution may ship with an outdated version of pip. Run pip install --upgrade pip (possibly as root) in a terminal.

Pext's window is completely white

The proprietary NVIDIA driver is known to cause this issue on at least Ubuntu. You can work around this by running sudo apt-get install python3-opengl.

Pext user report: https://github.com/Pext/Pext/issues/11 Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/python-qt4/+bug/941826

License

Pext is licensed under the GNU GPLv3+, with exception of artwork and documentation, which are licensed under the Creative Commons Attribution Share-Alike 4.0 license.

Under artwork and documentation fall:

  • All files in the following directories:
    • docs/
    • pext/images/
    • screenshots/
    • .github/
  • All Markdown files in the root directory.
  • logo.png

When attributing the logo (which was donated by vaeringjar), it should be attributed as Lilly the leoger by White Paper Fox. Alternatively, it may be referred to as the Pext logo. Please link to Pext with https://github.com/Pext/Pext or https://pext.hackerchick.me/ and to White Paper Fox with http://www.whitepaperfox.com/ where possible.