A small drop-down terminal for i3 and sway
Project description
i3-quickterm
A small drop-down terminal for i3wm and sway
Note this is a fork of lbonn/i3-quickterm. Upstream is still active and maintained, but the fork you're currently viewing has somewhat diverged in its architecture -- mainly started employing client-server paradigm.
Features
- use your favourite terminal emulator
- can select a shell with dmenu / rofi
- adapt to screen width
- multi-monitor aware
Installation
pipx install i3-qt
Usage
When launched, it will minimize the quickterm on the current screen if there is one. Otherwise, it will either prompt the user for the shell to open or use the one supplied in argument.
If the requested shell is already opened on another screen, it will be moved on the current screen.
First a daemon process needs to be started:
exec_always --no-startup-id i3-quickterm --daemon
It is recommended to map it to an i3 binding:
# with prompt:
bindsym $mod+p exec --no-startup-id i3-quickterm
# ...or always pop standard shell, without the selection menu:
bindsym $mod+b exec --no-startup-id i3-quickterm shell
Configuration
The configuration is read from ~/.config/i3-quickterm/config.json
menu: the dmenu-compatible application used to select the shellterm: the terminal emulator of choicehistory: a file to save the last-used shells order, last-used ordering is disabled if set to nullratio: the initial percentage of the screen height to useborderWidthPx: the window border width configured in i3pos: where to pop the terminal (toporbottom)shells: registered shells ({ name: command })
term can be either:
- a format string, like this one:
urxvt -t {title} -e {expanded}with the correct arguments format of your terminal. Some terminals - like xfce4-terminal - need the command argument to be passed as a string. In this case, replace{expanded}by{string} autoto select the first existing terminal of the list above (only to provide friendler defaults, not recommended otherwise)- a terminal name from the hardcoded list, which should work out of the box.
Right now, the only reference for the list is the source code
(search for
TERMS =). If you'd like to add another terminal (or correct an error), please open a pull request.
menu, term, history and shell can contain placeholders for environment
variables: {$var}.
Unspecified keys are inherited from the defaults:
{
"menu": "rofi -dmenu -p 'quickterm: ' -no-custom -auto-select",
"term": "auto",
"history": "{$HOME}/.cache/i3-quickterm/shells.order",
"socket": "/tmp/.i3-quickterm.sock",
"ratio": 0.25,
"borderWidthPx": 2,
"pos": "top",
"shells": {
"haskell": "ghci", # TODO: removed from upstream
"js": "node",
"python": "ipython3 --no-banner",
"shell": "{$SHELL}"
},
"signalToShellToggles": {
"SIGUSR1": "shell"
},
"envVarBlacklistPatterns": [],
"envVarBlacklist": []
}
Requirements
- python >= 3.8
- i3 >= v3.11 or sway >= 1.2
- i3ipc-python >= v2.0.1
- dmenu or rofi (optional)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file i3_qt-0.0.1.tar.gz.
File metadata
- Download URL: i3_qt-0.0.1.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
651ed776247c3fb5eb1da1d612daaa609c24bcdb338de6d07a9f196b6815835e
|
|
| MD5 |
aa8261beb40d908288b5e3d36fb8c945
|
|
| BLAKE2b-256 |
fff72f05ea9492d8ee44f1a7c441195c3b5a8c4ebbb1bf0c0a5c54d63977a42d
|
File details
Details for the file i3_qt-0.0.1-py3-none-any.whl.
File metadata
- Download URL: i3_qt-0.0.1-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d744c0ef65f258dff6575680ddd60bc54f288d4344128fec38e0550e0a3f714e
|
|
| MD5 |
55cd0136ce2b000f0a1b42539e8cee72
|
|
| BLAKE2b-256 |
3c5a25ba43e0165b91a5945827df6129fc6a47b393ed904bed11b07cb2af59e7
|