Wez Furlong
fe7502fc0b
implement coarse tab data rpc PoC
...
This required switching away from Rc to Arc so that the data in the
client can transit between threads.
This isn't useful yet.
2019-03-22 20:41:50 -07:00
Wez Furlong
7cdd1876d1
Enable serializing various Line and Cell related structs
2019-03-22 20:41:50 -07:00
Wez Furlong
86ed003428
factor out diff state local vars, add diff_lines method
...
The intent is to use this together with the terminal emulator;
when running the mux we'd like to use the Surface change stream.
2019-03-22 20:41:50 -07:00
Wez Furlong
ab0c5a8017
whoops, fully undo the half-hearted attempt to address the todo in here
...
The saturating_sub was going to be an attempt at the look-back alluded
to in the TODO comment, but I decided not to implement that in this
iteration.
The effect of this was that double clicking the `m` in a sequence like
` master` would only select the `m` instead of the `master` string.
2019-02-24 13:17:42 -08:00
Wez Furlong
184befae09
adjust double-click selection class
...
previously this just used unicode word segmentation rules, but that
is insufficient for most technical users.
Change this to look for sequences that are non-whitespace and not
enclosed by bracket/quote delimiters. This allows selecting file names
with a double click, which was my main issue.
2019-02-24 13:13:35 -08:00
Wez Furlong
dba88d2102
clippy
2019-02-24 12:01:08 -08:00
Wez Furlong
819bc247a0
micro optimize clearing a line
...
Turns out to be faster to clear and then resize than it is to
resize down and manually assign the elements
2019-02-22 21:52:18 -08:00
Wez Furlong
a022d3856a
micro optimize setting up the storage length
...
SmallVec::resize showed up as a hot spot in the profiler
2019-02-22 21:14:37 -08:00
Wez Furlong
7e38628486
update termwiz to 2018 edition
2019-02-18 23:26:41 -08:00
Wez Furlong
cd9c6ad5d1
fixup compilation on windows
2019-02-16 00:09:30 -08:00
Wez Furlong
2db17562a6
rustfmt
2019-02-16 00:08:38 -08:00
Wez Furlong
61fec42216
cargo fmt with current stable rustfmt
2018-09-19 20:06:31 -07:00
Wez Furlong
9219dbb327
We can now take iterm images into the wezterm terminalstate
...
We don't yet have any code to render them, and the vte parser seems
to truncate incoming image sequences ~1kb in size, so more work is
needed to make this useful.
2018-08-08 09:00:07 -07:00
Wez Furlong
a267ebb576
add theoretical support for storing Images in the Surface
...
There's basic rendering also, but it is not complete.
Needs more tests; will come back to those once more scaffolding
is in place.
2018-08-08 07:07:31 -07:00
Wez Furlong
5d27265b7c
add some structs for holding image data
2018-08-06 21:54:17 -07:00
Wez Furlong
2f8ffab213
parse and encode some iTerm specific escape sequences
2018-08-06 01:23:25 -07:00
Wez Furlong
60c24a9e41
consolidate on one set of input keycodes and modifiers
2018-08-05 14:28:29 -07:00
Wez Furlong
cee63e74e1
consolidate term::Line -> termwiz::Line
2018-08-05 12:37:01 -07:00
Wez Furlong
2c7a27c42a
move CellCluster to termwiz
2018-08-05 12:10:50 -07:00
Wez Furlong
d7943681de
add check for lines with hyperlinks
2018-08-05 09:49:47 -07:00
Wez Furlong
12db6e4629
add implicit hyperlink creation to termwiz
2018-08-05 09:36:29 -07:00
Wez Furlong
18f34545b3
rustfmt
2018-08-05 09:14:40 -07:00
Wez Furlong
e2461b2380
add concept of implicit hyperlink to termwiz
...
Moves that functionality from wezterm+term into termwiz
2018-08-05 09:13:55 -07:00
Wez Furlong
92f59f243e
add state bits to surface::Line
...
Starting to migrate term::Line functionality over
2018-08-05 08:45:36 -07:00
Wez Furlong
cbe4a2e3bc
move surface::Change to its own module
2018-08-05 08:26:06 -07:00
Wez Furlong
e781fdd43b
move surface::Line into its own module
2018-08-05 08:25:42 -07:00
Wez Furlong
72d88091bc
move surface in preparation for splitting it up
2018-08-05 08:08:39 -07:00
Wez Furlong
8a188cfd74
tweak manifest to point to in-tree termwiz
2018-08-05 08:00:45 -07:00
Wez Furlong
376da31ee4
restructure termwiz tree prior to merging into wezterm repo
2018-08-05 07:55:30 -07:00