Pext

Pext logo

Pext Logo by White Paper Fox under Creative Commons Attribution-ShareAlike 4.0, graciously donated by Peers.

ReadTheDocs latest

Introduction

Pext stands for Python-based extendable tool. It is built using Python 3 and Qt5 QML and intended to have 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.

Much like the leoger (a mix between a tiger and a leopard) in the logo, Pext modules can turn Pext into a completely different beast. From password management to weather information, modules can harness the full power of Python to turn the simple user interface into an useful and powerful application.

Pext Pext running the pass and emoji modules

Dependencies

Arch

sudo pacman -S git python-pip libnotify python-pyqt5 qt5-quickcontrols

Debian (Stretch and later, no Jessie, sorry!)

sudo apt-get install git libnotify-bin python3-pyqt5.qtquick qml-module-qtquick-controls

Fedora

sudo dnf install git libnotify python3-qt5 qt5-qtquickcontrols

macOS

Before running the Install Certificates command, which is only necessary to be able to retrieve the online module list, please read https://bugs.python.org/msg283984.

brew install python3 qt5 git libnotify
pip3 install pyqt5 urllib3 certifi
/Applications/Python\ 3.6/Install\ Certificates.command

Installation (optional)

Pext does not need to be installed to run. However, if you prefer to install it, you can do so:

# pip3 install . --upgrade

Usage

Simply start Pext with Python 3. If you have installed Pext using the above command, simply start pext. Otherwise, go to the project’s root directory and run python3 pext.

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

For command line options, use --help.

Hotkeys

Entry management

  • Escape: Go one level up
  • 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: Tab-complete the current input
  • Enter: Select entry or run command

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

License

GPLv3+.

Related Repositories

Pext

Pext

Python-based extendable tool ...

pext

pext

Promise Extensions ...

pext_module_launcher

pext_module_launcher

Allows Pext to launch applications ...

pext_module_radio

pext_module_radio

Allows Pext to play internet radio ...

Website

Website

A simple website for Pext ...