Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | preserve wrapping state when possible | Jesse Luehrs | 2019-12-06 | 1 | -0/+34 |
| | |||||
* | handle wide char wrapping correctly | Jesse Luehrs | 2019-12-05 | 1 | -2/+6 |
| | | | | | wrapping a wide char should set the wrapping state of the line even if it wrapped before the last column | ||||
* | track fullwidth continuation cells explicitly | Jesse Luehrs | 2019-12-05 | 1 | -6/+18 |
| | | | | this makes the logic a bit easier to follow | ||||
* | optimize erases a bit more | Jesse Luehrs | 2019-11-11 | 1 | -34/+92 |
| | |||||
* | actually, this method isn't necessary at all | Jesse Luehrs | 2019-11-11 | 1 | -22/+13 |
| | |||||
* | actually remove the last bgcolor special case | Jesse Luehrs | 2019-11-11 | 1 | -2/+2 |
| | |||||
* | factor out cursor movement logic | Jesse Luehrs | 2019-11-11 | 1 | -27/+11 |
| | |||||
* | comment | Jesse Luehrs | 2019-11-11 | 1 | -0/+3 |
| | |||||
* | stop special-casing bgcolor in one more place | Jesse Luehrs | 2019-11-11 | 1 | -3/+2 |
| | |||||
* | preserve all text attributes on cleared cells | Jesse Luehrs | 2019-11-11 | 1 | -22/+10 |
| | | | | | | | some terminals require it (alacritty wants to render underline and inverse state of cleared cells, for instance, so we have to be sure that the diff algorithm will properly reset the cursor attributes before clearing cells) | ||||
* | stop using formats at all | Jesse Luehrs | 2019-11-11 | 1 | -55/+15 |
| | | | | they are too slow | ||||
* | simplify | Jesse Luehrs | 2019-11-10 | 1 | -57/+41 |
| | |||||
* | optimize attribute setting a bit | Jesse Luehrs | 2019-11-10 | 1 | -8/+20 |
| | |||||
* | optimize cursor movement a bit | Jesse Luehrs | 2019-11-10 | 1 | -49/+122 |
| | |||||
* | missed one | Jesse Luehrs | 2019-11-09 | 1 | -1/+4 |
| | |||||
* | use a fixed size buffer for cell data | Jesse Luehrs | 2019-11-09 | 1 | -1/+1 |
| | | | | this dramatically speeds things up | ||||
* | refactor terminal writing | Jesse Luehrs | 2019-11-09 | 1 | -38/+69 |
| | |||||
* | fix wide character handling in contents_formatted and contents_diff | Jesse Luehrs | 2019-11-08 | 1 | -8/+22 |
| | |||||
* | clearing cells sets the background color | Jesse Luehrs | 2019-11-08 | 1 | -4/+8 |
| | |||||
* | also add a rows_diff method | Jesse Luehrs | 2019-11-06 | 1 | -2/+9 |
| | |||||
* | make row.contents_diff not require the row index | Jesse Luehrs | 2019-11-06 | 1 | -9/+5 |
| | |||||
* | contents_formatted and contents_diff should also restore the cursor | Jesse Luehrs | 2019-11-06 | 1 | -9/+8 |
| | | | | since the cursor is a visible part of the terminal | ||||
* | fix erasing cells in diff | Jesse Luehrs | 2019-11-05 | 1 | -1/+1 |
| | | | | also add more comprehensive tests | ||||
* | add functionality for diffing two terminal screens | Jesse Luehrs | 2019-11-05 | 1 | -0/+40 |
| | |||||
* | adjust the way window contents are reported | Jesse Luehrs | 2019-11-05 | 1 | -59/+57 |
| | | | | | | | | | | | | | | | | contents and contents_formatted now only allow getting the entire terminal contents, and for any other uses we now provide rows and rows_formatted. the reasoning here is that it wasn't particularly useful to return newline (or crlf) separated lines when not drawing the full terminal, since it's not like you can send those to the terminal in any meaningful way anyway (like, if you wanted to draw a subset of the terminal state, you'll almost certainly need to be doing explicit positioning on your own, since crlf is only actually correct if you're drawing the screen subset in the upper left hand corner of the screen). with this, you can draw each (subset of a) line individually, and reposition the cursor in whatever way makes sense in between drawing the lines. | ||||
* | preserve the state of empty cells in contents_formatted | Jesse Luehrs | 2019-11-05 | 1 | -1/+1 |
| | |||||
* | contents_formatted should return a Vec<u8> | Jesse Luehrs | 2019-11-05 | 1 | -5/+5 |
| | | | | | the overall terminal escape sequence byte stream is not necessarily utf8-safe, even if individual cell contents are | ||||
* | add Clone and Debug to Screen | Jesse Luehrs | 2019-11-05 | 1 | -1/+1 |
| | |||||
* | stop reallocating vecs so much | Jesse Luehrs | 2019-11-04 | 1 | -1/+4 |
| | |||||
* | more useful contents/contents_formatted behavior | Jesse Luehrs | 2019-11-04 | 1 | -1/+1 |
| | |||||
* | simplify | Jesse Luehrs | 2019-11-03 | 1 | -0/+4 |
| | |||||
* | use iterators in more places instead of raw indexing | Jesse Luehrs | 2019-11-02 | 1 | -0/+6 |
| | |||||
* | simplify | Jesse Luehrs | 2019-11-02 | 1 | -2/+2 |
| | |||||
* | fix one more warning | Jesse Luehrs | 2019-11-02 | 1 | -1/+3 |
| | |||||
* | implement window_contents_formatted | Jesse Luehrs | 2019-10-31 | 1 | -8/+52 |
| | |||||
* | implement zero-width and wide character handling | Jesse Luehrs | 2019-10-31 | 1 | -2/+16 |
| | |||||
* | implement ascii text wrapping | Jesse Luehrs | 2019-10-31 | 1 | -0/+4 |
| | |||||
* | more passing tests | Jesse Luehrs | 2019-10-30 | 1 | -0/+16 |
| | |||||
* | more passing tests | Jesse Luehrs | 2019-10-30 | 1 | -4/+13 |
| | |||||
* | more passing tests | Jesse Luehrs | 2019-10-29 | 1 | -0/+40 |