Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | add more debug logging | Jesse Luehrs | 2019-11-13 | 1 | -9/+31 |
| | |||||
* | bump down the logging priority here | Jesse Luehrs | 2019-11-13 | 1 | -14/+14 |
| | | | | so that apps can more easily compile these out | ||||
* | docs | Jesse Luehrs | 2019-11-13 | 1 | -2/+21 |
| | |||||
* | split formatted calculations into multiple methods | Jesse Luehrs | 2019-11-12 | 1 | -25/+128 |
| | | | | | different applications want to be able to apply different things, so this gives more control | ||||
* | make contents_diff include bell state | Jesse Luehrs | 2019-11-12 | 1 | -2/+16 |
| | | | | i don't think it makes sense for contents_formatted to include this | ||||
* | remove parser.screen_mut | Jesse Luehrs | 2019-11-12 | 1 | -48/+26 |
| | | | | | | it's easier to reason about if you are only able to get an immutable reference to the internal screen. this also required changing the api for bells. | ||||
* | remove comment | Jesse Luehrs | 2019-11-11 | 1 | -1/+0 |
| | |||||
* | preserve all text attributes on cleared cells | Jesse Luehrs | 2019-11-11 | 1 | -14/+14 |
| | | | | | | | 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 | -13/+4 |
| | | | | they are too slow | ||||
* | docs | Jesse Luehrs | 2019-11-10 | 1 | -8/+23 |
| | |||||
* | optimize attribute setting a bit | Jesse Luehrs | 2019-11-10 | 1 | -2/+8 |
| | |||||
* | optimize cursor movement a bit | Jesse Luehrs | 2019-11-10 | 1 | -3/+11 |
| | |||||
* | implement scrolling back | Jesse Luehrs | 2019-11-09 | 1 | -15/+25 |
| | |||||
* | optionally save scrollback rows | Jesse Luehrs | 2019-11-09 | 1 | -4/+7 |
| | |||||
* | another micro-optimization | Jesse Luehrs | 2019-11-09 | 1 | -1/+1 |
| | |||||
* | refactor terminal writing | Jesse Luehrs | 2019-11-09 | 1 | -22/+46 |
| | |||||
* | remove unnecessary accessors | Jesse Luehrs | 2019-11-08 | 1 | -52/+0 |
| | | | | nobody should be caring about the terminal state internals | ||||
* | stop treating soft hyphen specially | Jesse Luehrs | 2019-11-08 | 1 | -1/+2 |
| | |||||
* | don't leave old character data in the second cell of a wide character | Jesse Luehrs | 2019-11-08 | 1 | -1/+7 |
| | | | | | | otherwise it might confuse the diffing algorithm if a non-wide character is written there and then it goes back to being the second cell of a wide character | ||||
* | clearing cells sets the background color | Jesse Luehrs | 2019-11-08 | 1 | -8/+12 |
| | |||||
* | actually, we do need to always reset the hide cursor state | Jesse Luehrs | 2019-11-06 | 1 | -3/+5 |
| | |||||
* | also add a rows_diff method | Jesse Luehrs | 2019-11-06 | 1 | -0/+27 |
| | |||||
* | docs | Jesse Luehrs | 2019-11-06 | 1 | -1/+11 |
| | |||||
* | stop pretending to support left/right scroll regions | Jesse Luehrs | 2019-11-06 | 1 | -22/+9 |
| | |||||
* | contents_formatted and contents_diff should also restore the cursor | Jesse Luehrs | 2019-11-06 | 1 | -3/+17 |
| | | | | since the cursor is a visible part of the terminal | ||||
* | add functionality for diffing two terminal screens | Jesse Luehrs | 2019-11-05 | 1 | -0/+4 |
| | |||||
* | adjust the way window contents are reported | Jesse Luehrs | 2019-11-05 | 1 | -19/+46 |
| | | | | | | | | | | | | | | | | 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. | ||||
* | contents_formatted should return a Vec<u8> | Jesse Luehrs | 2019-11-05 | 1 | -1/+1 |
| | | | | | the overall terminal escape sequence byte stream is not necessarily utf8-safe, even if individual cell contents are | ||||
* | formatting | Jesse Luehrs | 2019-11-05 | 1 | -2/+4 |
| | |||||
* | docs | Jesse Luehrs | 2019-11-05 | 1 | -0/+1 |
| | |||||
* | add Clone and Debug to Screen | Jesse Luehrs | 2019-11-05 | 1 | -0/+1 |
| | |||||
* | expose the screen separately from the parser | Jesse Luehrs | 2019-11-05 | 1 | -203/+171 |
| | |||||
* | docs | Jesse Luehrs | 2019-11-04 | 1 | -0/+82 |
| | |||||
* | stop reallocating vecs so much | Jesse Luehrs | 2019-11-04 | 1 | -6/+2 |
| | |||||
* | decsc should also save graphic rendition and origin mode | Jesse Luehrs | 2019-11-03 | 1 | -2/+14 |
| | |||||
* | rename some methods | Jesse Luehrs | 2019-11-03 | 1 | -6/+6 |
| | |||||
* | actually, i do want to default to resetting everything | Jesse Luehrs | 2019-11-03 | 1 | -9/+11 |
| | | | | | the stuff that survives across a reset should be the special case, handled specially | ||||
* | clean up public api a bit | Jesse Luehrs | 2019-11-03 | 1 | -53/+35 |
| | |||||
* | fmt | Jesse Luehrs | 2019-11-03 | 1 | -4/+2 |
| | |||||
* | alternate screen can just be a normal mode now | Jesse Luehrs | 2019-11-03 | 1 | -8/+6 |
| | |||||
* | simplify | Jesse Luehrs | 2019-11-03 | 1 | -12/+12 |
| | |||||
* | no reason to use references here | Jesse Luehrs | 2019-11-03 | 1 | -3/+3 |
| | |||||
* | use a bitset for text modes too | Jesse Luehrs | 2019-11-03 | 1 | -12/+12 |
| | |||||
* | use iterators in more places instead of raw indexing | Jesse Luehrs | 2019-11-02 | 1 | -20/+11 |
| | |||||
* | simplify, and fix some more warnings | Jesse Luehrs | 2019-11-02 | 1 | -65/+52 |
| | |||||
* | fixup! fix some warnings, and make str_width a bit more efficient | Jesse Luehrs | 2019-11-02 | 1 | -2/+2 |
| | |||||
* | fix screen resizing | Jesse Luehrs | 2019-11-02 | 1 | -1/+2 |
| | |||||
* | simplify | Jesse Luehrs | 2019-11-02 | 1 | -27/+28 |
| | |||||
* | these can just return directly | Jesse Luehrs | 2019-11-02 | 1 | -6/+6 |
| | |||||
* | add some logging | Jesse Luehrs | 2019-11-02 | 1 | -10/+79 |
| |