finalterm
finalterm copied to clipboard
tmux-like functionality
A feature I would be very much looking forward to in a future version is screen/tmux like functionality. I'm not sure what that would involve technically (and if it's at all possible) but functionality-wise one should be able to run one or multiple FT sessions on a server and (re-)attach to a running session from a remote client (i.e. an ssh login shell). Given that FT has extensive keyboard shortcut support and tab/split-screen functionality there is already considerable overlap with tmux. Adding this missing piece ("the marriage of terminal, shell and terminal multiplexing") would finally let us ditch screen and tmux.
Of course this would be something for a later version after the core functionality is working.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Final Term's data structures should make implementing session persistence very easy in the future :)
I don't mean to spam, but the iTerm2 project for OS X is an example that has this sort of tmux integration feature; although it doesn't ditch tmux, rather it takes advantage of it in a way optimized for GUI (it still requires logging into ssh
and running tmux -CC
though). Due to the current license (GPLv2), I'm not sure if FT can reuse its implementation right away.
What does this look like in practice? Menu bar integration? Key bindings? Or do you just want to expand upon the tabbing and split window features already in place?
On Mon, Mar 23, 2015, 12:31 AM Christopher Chavez [email protected] wrote:
I don't mean to spam, but the iTerm2 project for OS X is an example that has this sort of tmux integration feature; although it doesn't ditch tmux, rather it takes advantage of it in a way optimized for GUI (it still requires logging into ssh and running tmux -CC though). Due to the current license (GPLv2), I'm not sure if FT can reuse its implementation right away.
— Reply to this email directly or view it on GitHub https://github.com/p-e-w/finalterm/issues/308#issuecomment-84802276.
This announcement explains most of the features and limitations:
https://code.google.com/p/iterm2/wiki/TmuxIntegration
In practice this means that the user does not interact with the tmux
session manager directly; rather, there is a session management GUI in
iTerm2 to manage tmux sessions, windows, etc., e.g. allowing multiple
"logical" windows through a single ssh session that behave almost the same
as real windows/tabs.
Further, in the case of iTerm2, I would think that because the tmux -C
windows/tabs behave like real ones, it hides the much of the usual CLI tmux
functionality, including key bindings; it's not strictly taking tmux pane
content and putting it in pretty GUI widgets nor acting like tmux CLI at
the same time. tmux -C
in this use tries to only provides session
management rather than windows, panes, status bars, key bindings etc. as in
the CLI; tmux is merely a backend.
I doubt that the iTerm2-side functionality is written in Vala, but most of
the magic is probably in tmux -C
control mode (tmux 1.8+) that was
designed for this sort of application, and would allow terminal emulators
to use it (iTerm2 is probably the only application taking advantage of it
so far).
On Mon, Mar 23, 2015 at 2:40 PM Nick Ashley [email protected] wrote:
What does this look like in practice? Menu bar integration? Key bindings? Or do you just want to expand upon the tabbing and split window features already in place?
On Mon, Mar 23, 2015, 12:31 AM Christopher Chavez < [email protected]> wrote:
I don't mean to spam, but the iTerm2 project for OS X is an example that has this sort of tmux integration feature; although it doesn't ditch tmux, rather it takes advantage of it in a way optimized for GUI (it still requires logging into ssh and running tmux -CC though). Due to the current license (GPLv2), I'm not sure if FT can reuse its implementation right away.
— Reply to this email directly or view it on GitHub https://github.com/p-e-w/finalterm/issues/308#issuecomment-84802276.
— Reply to this email directly or view it on GitHub https://github.com/p-e-w/finalterm/issues/308#issuecomment-85163135.