Simple application launcher for Linux
Ir para arquivo
Albert S 65b044e618 Begin SpecialCommand handling
Introduce SpecialCommand handling. Currently,
we block until the command finishes. SettingsProvider
provides a few example, but needs implementation to
read this from config.
2021-05-08 20:54:35 +02:00
screenshots added screenshot 2018-01-03 10:16:44 +01:00
.gitignore added .gitignore 2019-09-08 17:11:24 +02:00
calculationengine.cpp formating fixes / copyright update... 2019-09-30 21:58:11 +02:00
calculationengine.h formating fixes / copyright update... 2019-09-30 21:58:11 +02:00
entryprovider.cpp Fix some Qt deprication warnings 2021-04-29 09:33:57 +02:00
entryprovider.h Introduce new button type 'DYNAMIC' for PATH suggestions 2020-10-19 21:45:33 +02:00
entrypushbutton.cpp EntryPushButton: Hardcode max 256x256 icon size for now 2021-03-19 12:00:40 +01:00
entrypushbutton.h implement deletion of entries 2020-10-04 21:48:35 +02:00
LICENCE added licence 2018-01-05 15:52:11 +01:00
main.cpp main: don't ignore config value for single instance mode. allow override using cli param 2020-10-10 21:58:37 +02:00
qsrun.pro Begin SpecialCommand handling 2021-05-08 20:54:35 +02:00
README.md Update README.md to document inheritance 2020-09-06 21:45:43 +02:00
settingsprovider.cpp Begin SpecialCommand handling 2021-05-08 20:54:35 +02:00
settingsprovider.h Begin SpecialCommand handling 2021-05-08 20:54:35 +02:00
singleinstanceserver.cpp Added basic single instance functionality 2019-06-03 07:42:54 +02:00
singleinstanceserver.h reformating (no functional change) 2019-08-24 09:19:49 +02:00
textoutputlabel.cpp Introduce TextoutputLabel: Resizes automatically with text 2021-05-08 20:54:35 +02:00
textoutputlabel.h Introduce TextoutputLabel: Resizes automatically with text 2021-05-08 20:54:35 +02:00
window.cpp Begin SpecialCommand handling 2021-05-08 20:54:35 +02:00
window.h Begin SpecialCommand handling 2021-05-08 20:54:35 +02:00

qsrun

qsrun is a launcher. It contains user defined entries for applications and also searches system-applications. Using libcalculate, it can also be used as a calculator.

If you run a desktop environment like KDE it is questionable whether you will find this useful, since they usually bring applications that are more or less comparable to qsrun, although much more powerful (like KRunner). It can be useful for users running a window manager like fluxbox etc.

Dependencies

Qt >=5.7.

For the calculation engine, libqalculate is needed.

Currently no conditional compile flags are supported...

Building

Assuming the necessary dependencies are installed:

qmake 
make

Getting started

$HOME/.config/qsrun In this folder user-defined entries should be put (See "Entry format").

Config format

Path: $HOME/.config/qsrun/qsrun.config

Example:

[General]
sysAppsPaths = "/usr/share/applications/", "/var/lib/snapd/desktop/applications/"

sysAppsPaths will default to "/usr/share/applications/" if no value is given.

Entry format

It rudimentary supports .desktop files, but for user entries, the own format should be preferred.

It's a simple format: [key] [value].

Example: quasselclient.qsrun:

command quasselclient
name Quassel
icon /usr/share/icons/hicolor/128x128/apps/quassel.png
row 1
col 0
key I

Example with inheritance: qsrun will search for "vlc.desktop" inside the paths defined in sysAppsPaths:

inherit vlc.desktop
row 3
col 1

Therefore, there is no need to explicitly the entry a name or icon etc. However, values given here will overwrite the inherited values.

"key" means a shortcut key, you can launch those by pressing Ctrl + "key", so in the example above: CTRL + I.

Simply pressing Ctrl will show you the associated shortcuts on each individual button.

General usage

Starting to type will search user defined entries first, followed by system entries. Then the PATH variable will be searched, if there is a single match you can also press TAB for auto completion.

In general it will launch anything once you press enter, however it won't open a terminal.

Calculator

Start by typing "=", followed by your expression, e. g: "=(2+3)^2"