Kovid Goyal
b5dff921c4
Start work on multicell support
2025-02-03 10:56:43 +05:30
Kovid Goyal
f6347ee1e2
Move more declarations out of data-types.h
2024-11-04 09:10:07 +05:30
Kovid Goyal
554a2b1811
Allow unfocused cursor shape to remain unchanged
...
Fixes #7728
2024-08-17 15:49:55 +05:30
Kovid Goyal
b560fe34c9
Give the functions for creating various objects unique names so they are easily recognized in macOS's non-fully-symolicated crash reports
2024-02-25 09:57:37 +05:30
Kovid Goyal
6205fb32fd
Refactor VT parser for more speed
...
No longer copy bytes into a separate buffer, instead parse them in place
in the read buffer
2024-02-25 09:57:23 +05:30
Kovid Goyal
88bd3ee9ca
New SGR codes to turn off bold/dim independently
...
Allows for robust patching of formatting into already formatted
text. Without this it is not possible to turn off bold without
affecting existing dim and vice versa.
2023-03-27 07:53:55 +05:30
Luofan Chen
130315ce8d
Use strict function prototypes
...
Fixes clang error:
error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
2023-02-09 13:16:00 +08:00
Joseph Adams
a2c4f830b3
Enable use of higher options for underlining text.
...
In `Colored and styled underlines` it's proposed that the SGR codes
\e[4:4m and \e[4:5m are used to add a dotted or dashed underline to the
rendering context respectively. This commit prepares the necessary
changes to add the two additional underline style, while still rendering
them as a normal underline and curly underline.
2022-01-13 17:27:02 +01:00
Kovid Goyal
ef76c075e0
Get rid of bits from CellAttrs
2021-08-18 10:06:08 +05:30
Kovid Goyal
780e526143
Use a union for cell attributes
...
Cleaner code, no performance impact
2021-08-18 10:06:08 +05:30
Kovid Goyal
be34af4555
Remove inline from .c files
...
It is ignored by compilers and hides unused static functions
2021-08-03 09:11:17 +05:30
Kovid Goyal
cd6b3da665
Fix turning off cursor blink via escape codes not working
...
Also fix cursor blink stopping after terminal reset. The default cursor
state should be blinking.
Fixes #3808
...
2021-07-07 20:45:46 +05:30
Kovid Goyal
f9844ba3b0
Allow negative numbers in CSI codes
2021-01-21 07:06:43 +05:30
Kovid Goyal
6a31909557
Make the MIN and MAX macros typesafe
2019-07-01 17:03:47 +05:30
Kovid Goyal
ee3ce3c7d8
Move cell_as_sgr to line.c
2018-09-30 08:58:33 +05:30
Dominique Martinet
cf51f80b79
cell_as_sgr: avoid unnecessary formatting functions
2018-09-22 19:10:37 +09:00
Dominique Martinet
2fe17aa889
cursor_as_sgr now works on GPUCells becomes cell_as_sgr
2018-09-22 19:10:09 +09:00
Dominique Martinet
1b64167a3e
cursor_as_sgr: fix bold/dim
...
The old code would print "\e[22m" if either bold or dim was unset, which
is the "normal, neither bold nor dim" control sequence.
Print that only if neither are set, and instead print "1" and "2" (bold,
dim) values individually.
2018-09-19 07:04:01 +09:00
Kovid Goyal
8dea5b3e3e
Reduce data sent to GPU per draw by 30%
...
Split up the Cell structure into a CPUCell and a GPUCell. Only the
GPUCell part needs to be sent to the GPU. Should make kitty use even
less system resources and make a performance difference on systems where
the GPU bandwidth is constrained.
Also allows adding more CPU only data in the future without affecting
GPU bandwidth. For example, hyperlinks or more combining characters.
2018-05-27 21:25:09 +05:30
Kovid Goyal
6f2d63eb87
Implement SGR dim
...
kitty now supports the SGR DIM escape code, which makes text fade into
the background. It works by alpha blending the text color into the
background color. Fixes #446
2018-05-20 10:43:26 +05:30
Kovid Goyal
527255e3a1
Fix compilation with gcc 8
...
Apparently some nitwit Linux distros have made an unreleased compiler
their default compiler. Fixes #376
Fixes various new warnings that GCC 8 issues
2018-03-12 10:38:12 +05:30
Kovid Goyal
0fcce6ec58
Remove trailing whitespace from native code files
2017-12-20 08:44:47 +05:30
Kovid Goyal
d48b76508b
Implement DECCARA
...
Ability to set text attributes/colors in arbitrary screen regions,
instead of working via the cursor. Note that kitty extends the original
DECCARA spec from the VT-510 to allow setting all supported SGR
attributes.
2017-12-17 18:03:39 +05:30
Kovid Goyal
ce7be5a05e
Fix #226
2017-12-14 06:42:52 +05:30
Kovid Goyal
346a9f68b1
Fix #227
2017-12-12 18:38:52 +05:30
Kovid Goyal
c17c6cae4c
Support S8C1T mode
...
That is, eight bit control codes. When in S8C1T mode, kitty will send
only eight bit control codes to the client.
2017-12-05 20:21:12 +05:30
Kovid Goyal
e81ba3b207
Change undercurl escape code to 4:x
...
See https://github.com/neovim/neovim/issues/7479
for discussion. Also implement double underline.
2017-12-04 12:26:50 +05:30
Kovid Goyal
27cd303a05
Centralize code to convert to SGR
...
Conversion from formatting attributes to SGR now always goes through a
Cursor.
2017-12-04 10:51:06 +05:30
Kovid Goyal
b9798c74d4
Support for DCS status and capabilities reporting codes
2017-12-02 14:35:06 +05:30
Kovid Goyal
573dd8c99e
...
2017-09-15 10:45:24 +05:30
Kovid Goyal
13ac050bf8
Move cursor render call to C
2017-09-15 10:45:24 +05:30
Kovid Goyal
b58ecde740
Track cursor color as a property of Screen not Cursor
...
This means that the savepoint functionality will not restore
cursor color
2017-05-17 09:27:38 +05:30
Kovid Goyal
b4af2ff314
The cursor visible (DECTCEM) property should be global, not affected by save/restore of cursor or alternate screens
2017-01-04 10:02:39 +05:30
Kovid Goyal
e3b9bfd4bb
Use a circular buffer for the savepoints
...
Avoids mallocs during normal operation.
2016-11-19 11:03:21 +05:30
Kovid Goyal
4624525419
Use unsigned int for cursor pos
2016-11-17 08:56:26 +05:30
Kovid Goyal
f56da9392c
Implement SGR
2016-11-17 08:34:55 +05:30
Kovid Goyal
fa106c2585
More work on migrating Screen
2016-11-13 16:51:14 +05:30
Kovid Goyal
fab2213c25
More work on native streams
2016-11-13 10:24:00 +05:30
Kovid Goyal
71640aefb2
Cursor.reset_display_attrs()
2016-11-10 11:12:20 +05:30
Kovid Goyal
d9daca8e36
Use stdbool
2016-11-08 11:03:47 +05:30
Kovid Goyal
30128043d2
Fix allocation of cursor objects
2016-11-07 12:40:49 +05:30
Kovid Goyal
d324baf979
__eq__ for Line
2016-11-04 14:56:31 +05:30
Kovid Goyal
38e8462277
Get rid of more boilerplate
2016-11-02 11:48:52 +05:30
Kovid Goyal
c0d5719eb4
Reduce the size of the boilerplate
2016-11-02 11:26:36 +05:30
Kovid Goyal
c2af0bceeb
...
2016-11-02 09:37:28 +05:30
Kovid Goyal
3f87bfd64a
Cursor.copy
2016-11-01 23:31:47 +05:30
Kovid Goyal
1566407c3d
...
2016-10-31 23:41:25 +05:30
Kovid Goyal
6f20b880f3
Implement __repr__ for Cursor
2016-10-31 23:37:46 +05:30
Kovid Goyal
8dda11bee9
Implement __eq__ for Cursor
2016-10-31 23:23:40 +05:30
Kovid Goyal
3d13ad3411
The Cursor object
2016-10-31 22:48:36 +05:30