Command Line File Watcher for Qt ui file to python file.
Project description
pyuiw
Command Line Watcher for auto compile Qt ui to python file.
Original Tool Source from pyside2-tools pyside2uic
I modified some code for customization.
Install pyuiw
pip install pyuiw
How to Use
python -m pyuiw
pyuiw
two command run the same alternatively.
pyuiw -h
run this command can show up the help documentation.
usage: pyuiw [-h] [-p] [-o FILE] [-x] [-d] [-i N] [--from-imports] [-nq] [--QtModule module] [-nb] [-ni] [-ts TS] [-w WATCH [WATCH ...]] [-e EXCLUDE [EXCLUDE ...]] [-c FILE]
Qt User Interface Compiler version , running on PySide2 5.15.2.
Command Line Watcher for auto compile Qt ui to python file.
Usage Example:
optional arguments:
-h, --help show this help message and exit
-p, --preview show a preview of the UI instead of generating code
-o FILE, --output FILE
write generated code to FILE instead of stdout
<EXP> to define a output expression (default: <${ui_dir}/${ui_name}_ui.py>)
${ui_dir} - input python directory path
${ui_name} - input python file name
-x, --execute generate extra code to test and display the class
-d, --debug show debug output
-i N, --indent N set indent width to N spaces, tab if N is 0 (default: 4)
Code generation options:
--from-imports generate imports relative to '.'
-nq, --no-useQt ignore Qt.py module for Qt compat
--QtModule module customize import Qt module name (default: Qt) | only work in --no-useQt flag set
-nb, --no-black ignore black format code
-ni, --no-isort ignore isort format code
-ts TS, --gen-ts TS generate ts file for i18n | support <EXP> like --output
Watcher options:
-w WATCH [WATCH ...], --watch WATCH [WATCH ...]
watch files or directories
-e EXCLUDE [EXCLUDE ...], --exclude EXCLUDE [EXCLUDE ...]
exclude files glob expression
-c FILE, --config FILE
read specific config file
Configuration
pyuiw
would read the pyproject.toml
by default or you can set the --config
flag to read specific config file.
here is the default options in config file.
[tool.pyuiw]
QtModule = "Qt"
exclude = [] # using glob pattern for exclude
useQt = true
watch = []
execute = true
debug = false
from_imports = false
preview = false
indent = 4
output = "<${ui_dir}/${ui_name}_ui.py>"
black = true
isort = true
here is a example setup.
[tool.pyuiw]
exclude = ["*launcher*"] # exclude file contain `launcher`
watch = ["./tests/ui","./test2/test.ui"] # read the file or directory get all the `.ui` file for watch
TodoList
- import code to the top (implement isort)
- black format code
- poetry pypi python package
- poetry command line tool
- add pytest
- auto create ts file
- shield.io icon
- add sphinx docs
uic enhance
- implement Qt.py for
QApplication.translate
- customize import
- modern signal connections
- designer theme to standard icon set
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
pyuiw-0.2.4.tar.gz
(68.9 kB
view details)
Built Distribution
pyuiw-0.2.4-py3-none-any.whl
(53.8 kB
view details)
File details
Details for the file pyuiw-0.2.4.tar.gz
.
File metadata
- Download URL: pyuiw-0.2.4.tar.gz
- Upload date:
- Size: 68.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.12 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c752a4035eafa065081a0d1ea5976aaf463f8895305bb24080c6fab2dc49fd12 |
|
MD5 | 5f8918622350d58044da9e0542ef09e0 |
|
BLAKE2b-256 | 0aab6050c3d46d219465fe8a029fa144081d57f46db935fd1cf598952c49958b |
File details
Details for the file pyuiw-0.2.4-py3-none-any.whl
.
File metadata
- Download URL: pyuiw-0.2.4-py3-none-any.whl
- Upload date:
- Size: 53.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.12 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e744207fb2cba78ea67eb2227a99dca5b25fcebd68489537edc7d3cd61f37eb |
|
MD5 | d245106f6179d3d98f0541c8d360d7c2 |
|
BLAKE2b-256 | e49dab3230f90cbb1ad228f782b7ef413cdafabb1482357dbf9e1d3a8c022a85 |