schlipak / nozzle Goto Github PK
View Code? Open in Web Editor NEWVersatile scriptable launcher
License: MIT License
Versatile scriptable launcher
License: MIT License
When searching for an application for example, it would be easier if we could just press enter to launch the first proposition
Allow to run multiple backend scripts at once and get mixed results (eg. list applications, search the web, do math...)
The backend script and worker should be started just after starting nozzle, so to give them a change to do any expensive initialization before using them.
Nozzle appears on the left monitor, it would be nice if we could choose on which monitor it appears (or at least the distance from the left border).
Instead of an array of result, return an object with results as a property. This allows to define other properties and makes the protocol more flexible.
{"backend": "math", "version": "1.0.0", "priority": 9, "results": ["..."]}
Also define priority, which allows backend to specify how important their results are. (For example, the math backend and specify a high priority, so that if a math expression is entered in the panel, the result appears on top)
Currently does not work at all, emitting signals to another thread isn't as simple.
EDIT : Workers work since the bulk of them runs on separate processes, but IO can be blocking an slow the UI thread.
Make the updates easier on the eyes, especially when going from no entries to displaying entries --> The first entry selection rectangle briefly overlaps the input.
Extract stylesheet, add more options and use setStylesheet with template QString.
QString(stylesheet).arg(settings.value("style/something", "default").toString());
Move styling options from panel
to style
.
Nozzle should create a config file and fill it with default values on first launch. Or, use a template file and copy it to settings.fileName()
if it does not exist.
Add the ability to customize the font, separately for the input and entry names and description.
This issue can technically arise with any backend script, but Applications is the most problematic. Some applications specify a shell command as a start command, which fails currently with Nozzle.
Such applications include Steam, which starts up with the following command:
sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U
EDIT: Also add support for starting an application in a terminal (Terminal=true
)
Right now long result lists overflow the window. Make the panel not able to expand more, and let the QListWidget scroll instead.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.