
On Saturday, 12 January 2019 5:04:17 PM AEDT Craig Sanders via luv-main wrote:
I'd forgotten that screen could even do that. It's been years since I even used zmodem, possibly decades.
Seems you're not the first to miss it:
If you're going to send a patch, I'd suggest making two generic features rather than hard-coding support for zmodem.
1. Add an ability to allow tmux to run a program and pipe the output into the terminal. e.g. run "rz" inside the terminal and then have tmux run "sz filename" to upload a file. This would have many other uses, like running "vi" in the terminal and typing "i" or "o" in vi, then having tmux run "cat filename".
That is appealing.
2. Add an ability to pipe all input from the terminal into a command until that command terminates. e.g. run "sz filename" in the terminal and then have "tmux" run "rz".
For programs like rz that are able to detect the end of their input, this isn't terribly complicated, but it would be much more complicated for programs that just keep on hoovering up stdin until stdin closes - e.g. "cat filename" inside the terminal while tmux runs "xsel -i". Another tmux command to manually close the input to the running external program would be clumsy but workable.
3. An obvious third feature would be programmable triggers to run commands. e.g. if tmux sees a particular sequence of characters, then run a particular program. e.g. "**B00000000000000" could trigger running "rz". I expect that this would probably be quite difficult, and would probably have a noticable impact on tmux's performance.
I expect that in the common case of running screen/tmux on the same system as an X term the X display would use more CPU time anyway. I just did a quick test of running top while doing a fairly verbose compile with screen and couldn't see screen in top output. I did see konsole (the KDE X-term) taking up to 18% CPU time. I think there's plenty of scope to have a program like screen or tmux do pattern matching on output without comparing to the CPU use of konsole. I anticipate that someone might be about to say "but konsole sucks it uses too much CPU time". However konsole generally works well enough for me and many other people. -- My Main Blog http://etbe.coker.com.au/ My Documents Blog http://doc.coker.com.au/