Mitchell Hashimoto
35a4427f54
input: 0x7F is a control character, use helper
...
Fixes #556
One check for control chars was missing 0x7F. Since we do this three
times, extract it to a helper and call that.
2023-09-27 07:57:21 -07:00
Mitchell Hashimoto
18b42ce6d5
Merge pull request #557 from rockorager/dev
...
terminfo: add bracketed paste entries BD, BE, PS, PE
2023-09-27 07:37:51 -07:00
Tim Culverhouse
fe0b93389e
terminfo: add bracketed paste entries BD, BE, PS, PE
...
Add terminal entries for bracketed paste mode and start/end signals
2023-09-27 09:20:13 -05:00
Mitchell Hashimoto
0c74d13958
Merge pull request #554 from mitchellh/terminfo
...
terminfo: advertise OSC 52 support
2023-09-26 22:09:26 -07:00
Mitchell Hashimoto
767a78020a
terminfo: add a few more missing entries from tmux(1)
2023-09-26 22:08:52 -07:00
Mitchell Hashimoto
ece4ddac81
terminfo: OSC 52 support
2023-09-26 21:56:22 -07:00
Mitchell Hashimoto
0ee0180032
Merge pull request #552 from rockorager/dev
...
terminal: rows created from IND should inherit the current bg attr
2023-09-26 21:39:05 -07:00
Tim Culverhouse
6b1d99dc6e
terminal: rows created from IND should inherit the current bg attr
...
Any row created from scrolling via IND ("\x1BD") should have it's
background set as the current background. This can be verified in any
terminal with
$ echo -e "\x1B[41m" && cat -v"
Followed by pressing enter to scroll the screen. We expect to see red
rows appear. Add test case to verify.
Fixes: alacritty/vim_large_screen_scroll
2023-09-26 22:10:05 -05:00
Mitchell Hashimoto
7d0d21fa07
Merge pull request #551 from mitchellh/shaper-alloc
...
font: shaper dynamically allocates cell buffer
2023-09-26 18:44:28 -07:00
Mitchell Hashimoto
5c1fbd09cd
font: shaper dynamically allocates cell buffer
...
Pathlogical grapheme clusters can use a LOT of memory, so we need to be
able to grow.
2023-09-26 17:59:16 -07:00
Mitchell Hashimoto
0c9799ba61
Merge pull request #549 from mitchellh/paste
...
core: normalize newlines in non-bracketed pastes
2023-09-26 14:42:35 -07:00
Mitchell Hashimoto
010338354a
core: normalize newlines in non-bracketed pastes
...
Fixes #547
For non-bracketed paste mode, "\r\n" => "\r" and "\n" => "\r". See the
issue for more supporting documentation.
2023-09-26 14:36:07 -07:00
Mitchell Hashimoto
7cb5c51be8
Merge pull request #546 from mitchellh/gtk-click-mods
...
apprt/gtk: detect keyboard modifier state for mouse events
2023-09-26 12:39:19 -07:00
Mitchell Hashimoto
8c4d25050a
apprt/gtk: detect keyboard modifier state for mouse events
2023-09-26 12:37:59 -07:00
Mitchell Hashimoto
8afed937d8
Merge pull request #541 from rockorager/dev
...
config: add term config option
2023-09-26 11:07:50 -07:00
Tim Culverhouse
c77f0dc6fc
terminfo: add cursor styles to terminfo
...
Add Ss and Se definitions
2023-09-26 12:53:41 -05:00
Tim Culverhouse
779186adc0
config: add term config option
...
Add a configuration key for the TERM environment variable. Default this
to "ghostty". Most TEs are using their name as the default TERM value.
Most modern termulators aren't even providing "xterm-" as an alias
anymore, after some drama between kitty / ncurses.
Notably, this also has issues for tcell-based applications (I've
submitted a PR to tcell to fix) because it fails if the TERM value
doesn't match the _primary_ name of the terminal in the terminfo file.
Providing a config option allows users to modify-with-persistence if
they have issues, but Ghostty should be known as Ghostty by default!
2023-09-26 12:53:41 -05:00
Mitchell Hashimoto
cbfcce755c
Merge pull request #544 from mitchellh/font-style-disable
...
Ability to disable font styles
2023-09-26 09:06:41 -07:00
Mitchell Hashimoto
db3053c17e
config: update docs
2023-09-26 08:53:57 -07:00
Mitchell Hashimoto
b1389cbbfe
renderer: support font style changing at runtime
2023-09-26 08:51:04 -07:00
Mitchell Hashimoto
08954feb59
cli: args can parse unions
2023-09-26 08:45:20 -07:00
Mitchell Hashimoto
57d81ba9e1
core: disable styles
2023-09-26 08:39:36 -07:00
Mitchell Hashimoto
6b913bc6bb
font: Group can enable/disable styles
2023-09-26 08:37:07 -07:00
Mitchell Hashimoto
4b791f3ee1
renderer: always reset font group on config change
2023-09-26 08:18:11 -07:00
Mitchell Hashimoto
17c0e7f75f
config: font style is a union
2023-09-26 08:13:11 -07:00
Mitchell Hashimoto
96f835b78b
core: shift does not send mouse events
...
Fixes #542
2023-09-26 07:52:22 -07:00
Mitchell Hashimoto
b5505d1f92
Merge pull request #543 from isinyaaa/push-lqtuszxmrkkp
...
quirks: CodeNewRoman should disable ligatures by default
2023-09-26 07:36:19 -07:00
Isabella Basso
28322ed304
quirks: CodeNewRoman should disable ligatures by default
2023-09-26 11:10:25 -03:00
Mitchell Hashimoto
6a863a7bbb
Merge pull request #539 from mitchellh/wrap-audit
...
Reset pending wrap state audit
2023-09-25 17:52:37 -07:00
Mitchell Hashimoto
3f48a43ba4
terminal: cursors must set pending wrap
2023-09-25 17:42:37 -07:00
Mitchell Hashimoto
2c26071332
terminal: eraseLine resets wrap
2023-09-25 17:32:51 -07:00
Mitchell Hashimoto
f4886bb80e
macos: read from clipboard uses UTF-8 encoded string, proper byte count
2023-09-25 17:26:23 -07:00
Mitchell Hashimoto
1f3138add7
terminal: eraseChars resets wrap
2023-09-25 16:23:29 -07:00
Mitchell Hashimoto
804d252787
terminal: deleteChars resets pending wrap state
2023-09-25 16:21:04 -07:00
Mitchell Hashimoto
27cc8e5529
terminal: insertLines resets wrap
2023-09-25 16:17:22 -07:00
Mitchell Hashimoto
961e836d67
terminal: DL should reset wrap
2023-09-25 16:13:07 -07:00
Mitchell Hashimoto
806ce6d399
Merge pull request #538 from rockorager/dev
...
Use bg attribute when erasing cells line-wise, or inserting new lines
2023-09-25 14:17:35 -07:00
Tim Culverhouse
cfdce572b9
screen: only use bg attr for inserted rows
...
When scrolling up or deleting lines (effectively the same operation),
the inserted lines should only inherit the bg attribute of the cursor.
This behavior is similar to erase display and erase line. Update tests
to reflect this behavior.
2023-09-25 16:07:48 -05:00
Tim Culverhouse
5d598e4e33
terminal: only use bg attr when erasing line
...
Similar to eraseDisplay semantics, erase line should only apply the bg
attr to erased cells.
2023-09-25 16:07:48 -05:00
Mitchell Hashimoto
42304ce733
Merge pull request #537 from rockorager/setulc
...
terminfo: add Setulc string for colored underlines
2023-09-25 13:59:00 -07:00
Tim Culverhouse
da6dfbbf3d
terminfo: add Setulc string for colored underlines
...
Add terminfo key 'Setulc' to enable colored underlines.
2023-09-25 15:54:03 -05:00
Mitchell Hashimoto
e1d66da1b6
Merge pull request #536 from mitchellh/protected-mode
...
DEC Protected Mode (DECSCA, DECSEL, DECSED)
2023-09-25 11:57:05 -07:00
Mitchell Hashimoto
35f89bd28c
terminal: eraseDisplay protected
2023-09-25 11:16:06 -07:00
Mitchell Hashimoto
e2a26106bb
Merge pull request #535 from rockorager/fix-xtversion
...
terminal: use ST instead of BEL terminator for XTVERSION
2023-09-25 11:11:03 -07:00
Tim Culverhouse
3d5180a177
terminal: use ST instead of BEL terminator for XTVERSION
...
The XTVERSION response should use a string terminator instead of a bell.
Most terminals can handle the bell, however specifically tmux does not
like it.
Fixes : #534
2023-09-25 13:08:31 -05:00
Mitchell Hashimoto
f1c771615f
terminal: eraseLine protected, tests
2023-09-25 10:56:59 -07:00
Mitchell Hashimoto
5528580a29
terminal: DECSED, DECSEL parsing, tests
2023-09-25 10:56:59 -07:00
Mitchell Hashimoto
8137a66ef6
terminal: CSI Ps " q for setting DEC protected mode
2023-09-25 10:56:59 -07:00
Mitchell Hashimoto
2a390785f5
terminal: add protected mode flag to cursor pen
2023-09-25 10:56:57 -07:00
Mitchell Hashimoto
b67922c8ff
Merge pull request #533 from rockorager/dev
...
Charset / cursor state saving and retaining in the alternate screen
2023-09-25 10:56:43 -07:00