Add --log-append option which makes tio append to any existing log file.
This also changes the default behaviour of tio from appending to
overwriting any existing log file. Now you have to use this new option
to make tio append.
Add key command 'ctrl-t f' which will toggle log on/off.
If no log filename has been specified via the 'log-filename' option then
tio will automatically generate a new log filename every time the log
feature is toggled on. Meaning, when toggled multiple times, multiple
log files will be generated.
However, if a log filename has been specified, tio will only write and
append to that same file.
Replace flushing/writing of log at every log write operation with line
buffering, meaning log will be written line by line to make it more I/O
friendly but still update frequently.
Clean up so that only the following error related printing functions are
used: tio_error_printf(), tio_error_printf_silent(),
tio_warning_printf().
A session mode switch is introduced for error printing so that it will
print error messages with better formatting depending on in or out of
session.
Logfiles are important to see what happend, in particular if something
unexpected happened; so we want to make sure that the logfile is flushed
to disk.
Before this change, the logfile was typically written at the end in
a large chunk as the default (large) buffering applied. Now, characters are
written out ASAP, so it is possible to get a live-view with a
tail -f <logfile>
Renamed to "tio" because it is shorter and this new name also more
precisely reflects what the program is - a simple TTY terminal I/O
application.
"tio" can be considered short for terminal I/O or TTY I/O or a
combination of the two, whichever you prefer.
Also, wanted to avoid naming conflicts with other projects.