Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-08-21 | separate write-tty command | Andrew Cady | |
2024-08-20 | fix all problems with signals? | Andrew Cady | |
2024-08-20 | many changes basically working | Andrew Cady | |
the problem is that when the top pane sends SIGUSR1 it does not quit the bottom in the right order and an extra character ends up being read from the terminal in the bottom before a write error signals the end of the connection. Our signal of termination from the top is not reaching the right pid, the pid of the socat inside of the read_char needs to be reached by SIGUSR1, instead of $$ the outermost shell, where killing the job in job control should be enough to break the connection to the tty, it remains probably as long as socat remains running, we need to kill the whole process group of read-tty when killing the main process or when it exits | |||
2024-08-20 | "new" backgrounding code | Andrew Cady | |
2024-08-20 | avoid eval | Andrew Cady | |
2024-08-20 | remove comments | Andrew Cady | |
2024-08-20 | factor | Andrew Cady | |
2024-08-20 | soft cursor | Andrew Cady | |
2024-08-19 | read-tty: line-wrap based on window size | Andrew Cady | |
2024-08-19 | new command: read-tty | Andrew Cady | |
2024-08-19 | reading characters is working! it's really working!!!!! | Andrew Cady | |
2024-08-19 | finally working: code to read characters from terminal | Andrew Cady | |
2024-08-19 | almost working | Andrew Cady | |
2024-08-19 | trivial | Andrew Cady | |
2024-08-19 | trivial | Andrew Cady | |
2024-08-15 | automatically install dependencies | u | |
moved source to src/ | |||
2024-08-15 | replace "cat -v" with pure bash implementation | Andrew Cady | |
2024-08-14 | minor bash cleanups | Andrew Cady | |
2024-08-14 | silence more job control messages | Andrew Cady | |
2024-08-14 | use block syntax for temporarily redirecting stderr | Andrew Cady | |
2024-08-14 | hide background jobs from user output | Andrew Cady | |
also, using kill -TERM to kill the input forwarding socat, whereupon it will be restarted as necessary. there is no reason to leave it running stopped in the background, i guess. | |||
2024-08-14 | implement pause/resume for input forwarding | Andrew Cady | |
2024-08-14 | set /proc/$$/comm | Andrew Cady | |
2024-08-14 | improve error reporting | Andrew Cady | |
2024-08-14 | unused | Andrew Cady | |
2024-08-14 | forward() will restart top process if necessary | Andrew Cady | |
it issues a warning if so | |||
2024-08-14 | control codes shown in bold | Andrew Cady | |
The 'soft_cursor' function is now somewhat mis-named, since it also handles putting bold on the control codes. This is because the stream input to soft_cursor is a stream of single characters. Putting bold on the control codes creates multi-byte sequences that must be treated as single characters on the display. Soft_cursor could read one line per displayed character and an input_filter could output line delimiters -- if it was needed to have composability here. A functor on the stream is needed, changing its type. Its current type cannot represent multi-byte characters (except Unicode characters). An extra pipe layer would make the innermost loop slower, though. A more efficient alternative is to rename the function. | |||
2024-08-14 | use namerefs in disconnect() args | Andrew Cady | |
2024-08-13 | use abbreviations | Andrew Cady | |
2024-08-13 | up-to-date bash can choose a new fd automatically! | Andrew Cady | |
2024-08-13 | move restart handling code to more natural spot | Andrew Cady | |
2024-08-13 | cfmakeraw instead of rawer | Andrew Cady | |
not sure if it does anything different, but only cfmakeraw is documented. | |||
2024-08-13 | start_top() will do nothing if already started | Andrew Cady | |
2024-08-13 | Fixed bug in soft cursor that was already fixed | Andrew Cady | |
Wrapping around the EOL with a background color would set the whole line's background color. Bug was coming back only when restarting and reconnecting to background. Something to do with the terminal state. Issuing 'reset' in-between would prevent the bug from surfacing. Fixed it even better, apparently, by always printing an uncolored space+backspace before printing the colored space+backspace. | |||
2024-08-12 | Makefile | Andrew Cady | |
2024-08-12 | restarting better | Andrew Cady | |
2024-08-12 | move wait call to disconnect() | Andrew Cady | |
2024-08-12 | use title from environment | Andrew Cady | |
2024-08-12 | improve restarts | Andrew Cady | |
2024-08-12 | implement soft cursor and helpful input filter | Andrew Cady | |
2024-08-12 | eliminate a socat | Andrew Cady | |
2024-08-12 | bidirectional coproc input filter! | Andrew Cady | |
2024-08-12 | two sockets one socat | Andrew Cady | |
2024-08-12 | two socat solution | Andrew Cady | |
2024-08-11 | all bugs have been removed | Andrew Cady | |
2024-08-02 | unused | Andrew Cady | |
2024-08-02 | rename the coproc | Andrew Cady | |
2024-08-01 | this fixes bug where e.g. "echo '$\003'" kills socat | Andrew Cady | |
2024-08-01 | much improved terminal and signal handling | Andrew Cady | |
2024-08-01 | use $BOT_CMD again | Andrew Cady | |