Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Diagnose missing argument in :w, :a and :!. | Kaz Kylheku | 2022-04-28 | 1 | -2/+8 |
| | |||||
* | No kbd_result state for commands with no result string. | Kaz Kylheku | 2022-04-27 | 1 | -3/+5 |
| | |||||
* | kbd_result falls through to kbd_cmd to avoid consuming command. | Kaz Kylheku | 2022-04-27 | 1 | -5/+5 |
| | |||||
* | Simplify status line clearing in quit command. | Kaz Kylheku | 2022-04-27 | 1 | -4/+2 |
| | |||||
* | Avoid calling poll or gettimeofday for 1000 line bursts. | Kaz Kylheku | 2022-04-27 | 1 | -24/+31 |
| | |||||
* | On auto-exit, clear status line of all content. | Kaz Kylheku | 2022-04-27 | 1 | -4/+4 |
| | |||||
* | Redesign poll structure to avoid one byte reads from stdin. | Kaz Kylheku | 2022-04-27 | 1 | -56/+85 |
| | | | | | | | | | | | | We keep stdin fully buffered, but switch the descriptor to nonblocking. We then try to accumulate a line of input above the poll() call. We only poll stdin's descriptor if we hit EOF while trying to read a line, and errno indicates EAGAIN or EWOULDBLOCK. In cases when we know that there is more data in stdin, we poll with an interval of 0, because only the TTY is being polled. When we know that there is no more data in stdin (actual EOF), we now poll with an infinite interval. | ||||
* | Fix getopt problem: colon missing on n. | Kaz Kylheku | 2022-04-27 | 1 | -1/+1 |
| | | | | Reported by konsolebox at gmail com. | ||||
* | Workaround: fix for issue reported by a user. | Kaz Kylheku | 2022-04-27 | 1 | -0/+1 |
| | | | | | | | | | | | | | | We are wrongly combining poll operations with buffered reading from stdin. This means we call poll to wait for input while ignoring data already buffered in the stdio stream. When this happens at the end of a pipe, we ignore the last bit forever. The workaround is to switch stdin to unbuffered; but this means that it issues one byte read operations (inefficient) and risks blocking on partial lines. Reported by konsolebox at gmail com. | ||||
* | Regex matching for trigger mode. | Kaz Kylheku | 2022-04-27 | 1 | -9/+26 |
| | |||||
* | New feature: trigger mode. | Kaz Kylheku | 2022-04-27 | 1 | -27/+91 |
| | | | | Prototype: does substring searching only: no regex. | ||||
* | man page: fix small mistakes and improve wording. | Kaz Kylheku | 2022-04-27 | 1 | -3/+1 |
| | |||||
* | Redraw bugfix: redraw from snapshot when suspended. | Kaz Kylheku | 2022-04-27 | 1 | -1/+3 |
| | | | | | | | Without this, we cannot move horizontally while suspended, because the display refuses to refresh. Suspend mode means that we still refresh the display, but using the current snapshot data, rather than replacing that snapshot from the FIFO. | ||||
* | Rename clear_cur_line to consistently cryptic name. | Kaz Kylheku | 2022-04-27 | 1 | -8/+8 |
| | |||||
* | Rethink suspend mode: FIFO always freewheels. | Kaz Kylheku | 2022-04-27 | 1 | -29/+20 |
| | |||||
* | Colon is part of command string. | Kaz Kylheku | 2022-04-27 | 1 | -10/+11 |
| | |||||
* | Snapshot what is displayed. | Kaz Kylheku | 2022-04-27 | 1 | -13/+37 |
| | |||||
* | Switch to refcounted strings. | Kaz Kylheku | 2022-04-26 | 1 | -15/+67 |
| | |||||
* | Add a vi-like colon mode with :w, :a and :! commands. | Kaz Kylheku | 2022-04-26 | 1 | -14/+147 |
| | |||||
* | New project, Pipe Watch. | Kaz Kylheku | 2022-04-26 | 1 | -0/+365 |