Yakuake terminal manager
Project description
yaman - Yakuake terminal manager
Manager for Yakuake, a drop-down, tabbed & tiled terminal emulator.
What?
You know how working on a project you often need, besides an open IDE and browser, a number of separate terminals (npm, git, docker environment, ... ). You also need to run some scripts before you start and after you finish (e.g. docker containers). It's a hassle, right? Everything just becomes a nightmare when working on multiple projects.
Well, no more. Now you can setup your project environment with a single command.
What isn't covered?
The only thing I have not figured out how is to automate Tab Session Manager - i.e. the browser tabs.
Everything else - docker, vscode, yakuake can be handled by this tool.
PS: This is obviously a solution for a very specific set of tools. It's not meant to be a general purpose tool.
Features
- Define tabs and terminals to open as part of a profile
- Open, close and switch profiles
- Tabs can define custom tiling per tab
- Each created terminal can run any predefined set of commands
- Run predefined commands when opening and when closing a profile (i.e. start/stop dockers)
How does it work?
You define a profile config file where you define the tabs, how they are split and what commands should be run (cd-ing into folders, tailing logs, starting file watchers, sshing into a server etc.) that looks like this:
version: 1
variables:
path: /your/path
pre:
- cd %path%
- docker-compose start
tabs:
yourTabName:
- "cd %path%"
- "git status"
htop:
- "htop"
splitTab:
left:
top:
- "ls -la"
bottom:
- "ll"
right:
- "ps faux"
server:
- ssh server
down:
- cd %path%
- docker-compose stop
How do I use it?
Create a new profile
This creates a config file and opens it in your default editor.
yaman create <profileName>
List all profiles
yaman list
Open a profile
yaman open <profileName>
Stop a profile
yaman close <profileName>
Switch profile
This will close the open profile(s) and open the specified one.
yaman switch <profileName>
Edit profile
yaman edit <profileName>
How to install
Required
You'll need qdbus found in the following packages:
- Arch: qt5-tools
- Debian/Ubuntu: qttools5-dev-tools (not tested!)
Development
git clone <path>
poetry install
poetry run yaman
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 yaman-0.1.0.tar.gz.
File metadata
- Download URL: yaman-0.1.0.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.10.10 Linux/6.2.16-1-MANJARO
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c91237600fa563b38fe0d0d4394e389e36c69ad1234edbae31c4b21072631a2
|
|
| MD5 |
2809bc7bb661dcbf9fb0ba72d36840c6
|
|
| BLAKE2b-256 |
4734ee2d334b481be2cf0cf822b73aa29ac9bd97329ed3b4037038907d772e4b
|
File details
Details for the file yaman-0.1.0-py3-none-any.whl.
File metadata
- Download URL: yaman-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.10.10 Linux/6.2.16-1-MANJARO
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
afb99765cbf6486aa55ca2b3ba8e9382a34512fb6ea2632e5415867b700621af
|
|
| MD5 |
8b50eeac427fb0e0b850d0cdc6036faf
|
|
| BLAKE2b-256 |
c4bcebff51e16af12f87b3a7229ed6b7464695c5b22d8cd64a9132965fb3c6e8
|