Skip to main content

No project description provided

Project description

kvix

kvix provides mouseless quick actions for desktop, like Double Shift in Intellij IDEA or ctrl+shift+P in VSCode. It can be used to quickly perform frequently used actions which are too numerous to configure hot keys for them.

Usage

By default, kvix is configured to activate on Ctrl+; hotkey. kvix also runs embedded web-server on default port 23844 and can be activated by curl -X POST http://127.0.0.1:23844/activate

Build on Linux

`cd kvix && sh run pyproject pyinstaller`

Build on Windows

The procedure is awfull, sorry for that.

  • install msys2 and open "MSYS2 MINGW64" command prompt

  • install `pacman -S --noconfirm python mingw-w64-x86_64-python-pip mingw-w64-x86_64-python-gobject mingw-w64-x86_64-python-cairo mingw-w64-x86_64-python-pillow' (when installing pygobject with pacman in msys2, set pygopject version in pyproject.toml equal to actually installed, sorry for that)

  • do cd kvix; CREATE_VENV=false sh run pyinstaller (this article can be helpfull for understanding)

If errors, the following can be helpful.

  • do pacman -S mingw-w64-x86_64-pkg-config mingw-w64-x86_64-python3-cairo mingw-w64-x86_64-toolchain mingw-w64-x86_64-python-cairo gcc mingw-w64-x86_64-python-pillow

  • If got error somethins like this:

    Package glib-2.0 was not found in the pkg-config search path.
    Perhaps you should add the directory containing `glib-2.0.pc'
    to the PKG_CONFIG_PATH environment variable
    

    then do PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/mingw64/lib/pkgconfig:

  • do export SETUPTOOLS_USE_DISTUTILS=stdlib as in tutorial

  • this tutorial

    pacman -S --needed --noconfirm base-devel mingw-w64-x86_64-toolchain git \
    	mingw-w64-x86_64-python3 mingw-w64-x86_64-python3-cairo \
    	mingw-w64-x86_64-gobject-introspection mingw-w64-x86_64-libffi
    

Development

Visual Studio Code configuration

Use launch configuration .vscode/launch.json:

{
	"version": "0.2.0",
	"configurations": [
		
		{
			"name": "debug kvix gui",
			"type": "python",
			"request": "launch",
			"code": "import sys; sys.path.insert(0,'./src'); import kvix.app; kvix.app.main()",
			"justMyCode": false
		}
	]
}

todo

fix paste into selection query entry bug
folders
obsidian daily note
Read the SSL Certificate information from a remote server
save action selector query in cache
save selectors between activations
ctrl+home & ctrl+end
restart action
rename kvix.Selector.go to activate
rename kvix.Ui.destroy to stop?
rename kvix.ui.Selector.go to show
--collect-data TKinterModernThemes
if activation event fired when window already on screen, activate it and bring to foreground
fix freeze when interrupt signal received (Ctrl+C in shell)
on windows set focus when show window
https://stackoverflow.com/questions/22751100/tkinter-main-window-focus
fix new case action if clipboard is empty
hide kvix after all windows loose focus

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

kvix-0.1.0.tar.gz (91.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kvix-0.1.0-py3-none-any.whl (96.9 kB view details)

Uploaded Python 3

File details

Details for the file kvix-0.1.0.tar.gz.

File metadata

  • Download URL: kvix-0.1.0.tar.gz
  • Upload date:
  • Size: 91.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for kvix-0.1.0.tar.gz
Algorithm Hash digest
SHA256 58e125b17281897b8eac377764f24fe78c94ea81718cc01d7a587117a26a59ce
MD5 9bd643c31a0fb3871a7b7b09dbc85610
BLAKE2b-256 12649426d10f2576688070d0676c10ae41266cc8964da8d5b532b1dc73a7bc4e

See more details on using hashes here.

File details

Details for the file kvix-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kvix-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 96.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for kvix-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9debb4ec2feb1fe7aa7ed0bd19c4c7438e81e80d8efb38c46a676b8713d07c34
MD5 4b33fba7e448115b844efcc26d174a0c
BLAKE2b-256 004e82d3c2d2e5318f78387a62adf1db94be593dfd684e5b2c60c85e43a22da4

See more details on using hashes here.

Supported by

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