Wez Furlong
4098931e62
improve rendering of emoji
...
We were scaling some of them down way too much, so use a simpler
scaling computation.
In addition, try to "crop" the glyph to the non-transparent bits.
This seems to improve the visible size of some single-width glyphs
that don't fully occupy the bitmap size.
2018-10-21 16:04:42 -07:00
Wez Furlong
ff20499a09
improve cell metrics for emoji font
...
Take the bitmap size for the metrics, rather than computing something
that has a 0 width.
2018-10-21 14:45:26 -07:00
Wez Furlong
ada197f94e
don't panic if we get confused by text char boundaries
...
This triggered for me when grepping a file containing various
foreign language translations (non UTF-8).
2018-10-21 14:45:26 -07:00
Wez Furlong
61fec42216
cargo fmt with current stable rustfmt
2018-09-19 20:06:31 -07:00
Wez Furlong
3090d5c6f4
update freetype and improve loading of emoji fonts on ubuntu 18.04
2018-09-19 17:53:13 -07:00
Wez Furlong
3d3a718182
Fixup phantom release mouse code when using mouse wheel
...
This was breaking scrolling in vim
2018-09-04 00:34:53 -07:00
Wez Furlong
62d43ddd63
avoid panic when some clients change scroll margins
2018-08-09 00:04:28 -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
dfa3ef5ae6
fix missing paren for the bell print
2018-08-05 17:22:46 -07:00
Wez Furlong
d3d11d629f
fix rendering of reverse video
...
This got broken when unifying the termwiz color type; we used to
have enum variants for background and foreground colors, but now
we just have Default and we need to resolve using helper methods
in the palette.
That means we need to resolve the colors before we swap them for
reverse video.
Bonus: we can lift this out of the loop for the cell cluster.
2018-08-05 17:19:58 -07:00
Wez Furlong
4601a4ecc9
simplify the readme
...
Now that we no longer require nightly rust, we can just run cargo.
2018-08-05 17:04:37 -07:00
Wez Furlong
a8ae14bb6b
fix panic when resizing smaller leaves the cursor off screen
2018-08-05 16:32:29 -07:00
Wez Furlong
60c24a9e41
consolidate on one set of input keycodes and modifiers
2018-08-05 14:28:29 -07:00
Wez Furlong
c0ea601645
add helper for managing primary and alt screen
2018-08-05 13:49:03 -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
f07761e1cd
Merge termwiz repo in as a subdir of wezterm
...
Merge commit '376da31'
2018-08-05 07:58:46 -07:00
Wez Furlong
376da31ee4
restructure termwiz tree prior to merging into wezterm repo
2018-08-05 07:55:30 -07:00
Wez Furlong
5482323be5
really fix the erase in display issue
...
We also need an implicit erase in line in the appropriate direction
2018-08-04 23:23:04 -07:00
Wez Furlong
fd148f33e9
allow cycling from tab 0 -> max when using hotkeys
...
We would allow wrapping around the top end of tabs, but not the bottom.
This fixes that.
2018-08-04 22:36:43 -07:00
Wez Furlong
899593745e
fix growing bounds for Line::set_cell
2018-08-04 20:18:02 -07:00
Wez Furlong
e0b6fbfb1f
fix off-by-one for EraseInDisplay
...
We were deleting the current row and below rather than the rows below.
This was the cause of lines going blank during `apt upgrade` runs;
the line just above the bottom would get erased instead of scrolling
up.
I found this by running the termwiz widget demo; the top line was being
erased by mistake.
2018-08-04 19:28:18 -07:00
Wez Furlong
6c1f089f13
buffer processing in Performer::print
...
This helps to accumulate multi-char grapheme sequences into a single
cell.
2018-08-04 19:02:46 -07:00
Wez Furlong
10f0403973
improve encapsulation of Line struct
2018-08-04 18:33:44 -07:00
Wez Furlong
14304a6bd7
skip on the codecov report, add travis badge
2018-08-04 16:12:53 -07:00
Wez Furlong
aac4c8acbe
add travis config
2018-08-04 16:00:51 -07:00
Wez Furlong
381e572700
relax some of the dep requirements
2018-08-04 15:35:38 -07:00
Wez Furlong
efb9acdc84
don't error out if we can't find a glyph
...
Could repro the issue with this little python script:
```
print(u"\ua123HELLO")
```
2018-08-04 15:06:16 -07:00
Wez Furlong
a597a23aef
fix cargo fmt
2018-08-04 14:30:34 -07:00
Wez Furlong
e0cc46fe4f
log unhandled cursor shape sequence
2018-08-04 12:43:15 -07:00
Wez Furlong
7291084a31
parse cursorstyle escape sequence
2018-08-04 12:42:44 -07:00
Wez Furlong
204d741be7
improve display for unhandled csi
2018-08-04 11:59:20 -07:00
Wez Furlong
95b4f57a5b
fixup handling of multiple decsets in a single csi
2018-08-04 11:51:57 -07:00
Wez Furlong
1a4eba3eb9
turns out that we weren't actually using linear rgb here
2018-08-04 11:09:54 -07:00
Wez Furlong
67128704ff
add helper to extract the srgba tuple without converting to linear
2018-08-04 11:07:27 -07:00
Wez Furlong
3252f3a99a
nth time is the charm
2018-08-04 10:58:31 -07:00
Wez Furlong
860cc60519
try again with the cargo fmt logic in travis
2018-08-04 10:51:08 -07:00
Wez Furlong
24207fa369
maybe fix quoting for travis
2018-08-04 10:41:49 -07:00