Open SoniEx2 opened 2 years ago
We've had various versions of requests for per-terminal settings before. Guake already has a hooks system for running scripts on startup, but as with the rest of our settings it's not on a per-terminal basis. The feature once we finally get around to doing it might need some UI shuffling, there's a lot of things in separate tabs in the preferences dialog that would collected into the settings that would be set per terminal.
Deprecating stuff tends to be disruptive so I'd rather avoid that unless we're making actual semantic changes.
A kv-store would suit everyone's needs, particularly with shell integration. Because that stuff is just hard. (Honestly doubt it can be done any other way.) Yeah there's a lot you can do in guake that would be per-terminal but, how do you extend that to the shell, y'know?
As for GUAKE_TAB_UUID
... it's already reflecting the terminal UUID: different terminals in the same tab have different GUAKE_TAB_UUID
. It should definitely be renamed GUAKE_TERMINAL_UUID
, and have the tab be implicitly referred when changing tab name through terminal UUID. Edit: In fact, renaming tabs by UUID might even be currently broken with split terminals? oh okay that does work properly. interesting...
Still need a UI, kinda don't want to make the feature have people editing text files per tab.
Breaking scripts is really annoying, there should be an actual functional change to justify doing it, not just the name fits better
The idea is to have an API. And guake should discard the kv-store when the terminal is closed. It's for scripts and shells to use, altho for data transparency reasons a read-only UI might still be nice to have.
If GUAKE_TAB_UUID gets used to manage per-terminal kv-stores, then it should be called GUAKE_TERMINAL_UUID. Personally would recommend introducing GUAKE_TERMINAL_UUID with the kv-stores, without removing GUAKE_TAB_UUID, and recommend using the new name when dealing with the new API.
(if GUAKE_TAB_UUID weren't the terminal UUID today, it'd be really useful to detect multiple terminals in a tab, but anyway too late to change that now.)
We use this script:
and it'd be great if we could integrate it with guake. The main thing would be some way of storing
HISTFILE
in guake's session file, or some way to attach userdata to guake terminals. Guake already hasGUAKE_TAB_UUID
(which should be deprecated and renamedGUAKE_TERMINAL_UUID
, given tab splitting features), so it makes sense to be able to have a datastore attached to the terminal.Note that, at least for bash, the
HISTFILE
isn't inherited/exported by default, so this should NOT be done through some sort of environment-based mechanism.feathub is kinda... bad. but here's the link back to it: https://feathub.com/Guake/guake/+94