Can you then detach it to make it "non-quick", if you want to keep working on that separate context thing?
What I find annoying with my workflow (linux) is that starting a terminal and shell takes a lot of time. I wonder if it's possible to have a terminal always loaded so that my keybinding for creating a terminal would actually: move terminal in current workspace, focus it, then spawn another invisible terminal in the background.
I kind of use tmux for this, to have a persistent session. Even if my desktop manager (Gnome3) crashes, which happens sometimes when I run a bazillion VMs and run out of memory, my tmux session still survives and I can `tmux attach` once logged in again.
So the idea would be that you start tmux somehow/somewhere, then in your new shell you can do `tmux attach` to get into that session from anywhere, and if you close this new shell, you can still do `tmux attach` to get back to where you were.
Yakuake supports invoking the terminal in windowed-mode, if that's the profile you choose for it. I don't follow the purpose served by spawning an invisible background terminal; that doesn't seem to be common workflow, but I suspect you could wrangle it in your shell startup file so that the terminal self-invokes in hidden mode - but having 2 running copies (invisible and windowed) may result in both appearing when you press your global shortcut.
> I wonder if it's possible to have a terminal always loaded so that my keybinding for creating a terminal would actually: move terminal in current workspace, focus it, then spawn another invisible terminal in the background.
Use rxvt-unicode or another terminal that has a client/server mode. Start up a server in the background on boot or login (e.g. as a systemd user service), and make your keybind launch a new client process. Should be pretty much instant.
What I find annoying with my workflow (linux) is that starting a terminal and shell takes a lot of time. I wonder if it's possible to have a terminal always loaded so that my keybinding for creating a terminal would actually: move terminal in current workspace, focus it, then spawn another invisible terminal in the background.