-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor!: delete duplicate utf8-functionality #31934
base: master
Are you sure you want to change the base?
Conversation
0b37b93
to
7c727d6
Compare
You are removing the SCS support from |
ca1bee8
to
7be80f1
Compare
src/nvim/vterm/encoding.c
Outdated
static const struct StaticTableEncoding encoding_DECdrawing = { | ||
{ .decode = &decode_table }, | ||
{ | ||
[0x60] = 0x25C6, // BLACK DIAMOND | ||
[0x61] = 0x2592, // MEDIUM SHADE (checkerboard) | ||
[0x62] = 0x2409, // SYMBOL FOR HORIZONTAL TAB | ||
[0x63] = 0x240C, // SYMBOL FOR FORM FEED | ||
[0x64] = 0x240D, // SYMBOL FOR CARRIAGE RETURN | ||
[0x65] = 0x240A, // SYMBOL FOR LINE FEED | ||
[0x66] = 0x00B0, // DEGREE SIGN | ||
[0x67] = 0x00B1, // PLUS-MINUS SIGN (plus or minus) | ||
[0x68] = 0x2424, // SYMBOL FOR NEW LINE | ||
[0x69] = 0x240B, // SYMBOL FOR VERTICAL TAB | ||
[0x6a] = 0x2518, // BOX DRAWINGS LIGHT UP AND LEFT (bottom-right corner) | ||
[0x6b] = 0x2510, // BOX DRAWINGS LIGHT DOWN AND LEFT (top-right corner) | ||
[0x6c] = 0x250C, // BOX DRAWINGS LIGHT DOWN AND RIGHT (top-left corner) | ||
[0x6d] = 0x2514, // BOX DRAWINGS LIGHT UP AND RIGHT (bottom-left corner) | ||
[0x6e] = 0x253C, // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL (crossing lines) | ||
[0x6f] = 0x23BA, // HORIZONTAL SCAN LINE-1 | ||
[0x70] = 0x23BB, // HORIZONTAL SCAN LINE-3 | ||
[0x71] = 0x2500, // BOX DRAWINGS LIGHT HORIZONTAL | ||
[0x72] = 0x23BC, // HORIZONTAL SCAN LINE-7 | ||
[0x73] = 0x23BD, // HORIZONTAL SCAN LINE-9 | ||
[0x74] = 0x251C, // BOX DRAWINGS LIGHT VERTICAL AND RIGHT | ||
[0x75] = 0x2524, // BOX DRAWINGS LIGHT VERTICAL AND LEFT | ||
[0x76] = 0x2534, // BOX DRAWINGS LIGHT UP AND HORIZONTAL | ||
[0x77] = 0x252C, // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL | ||
[0x78] = 0x2502, // BOX DRAWINGS LIGHT VERTICAL | ||
[0x79] = 0x2A7D, // LESS-THAN OR SLANTED EQUAL-TO | ||
[0x7a] = 0x2A7E, // GREATER-THAN OR SLANTED EQUAL-TO | ||
[0x7b] = 0x03C0, // GREEK SMALL LETTER PI | ||
[0x7c] = 0x2260, // NOT EQUAL TO | ||
[0x7d] = 0x00A3, // POUND SIGN | ||
[0x7e] = 0x00B7, // MIDDLE DOT | ||
} | ||
}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should keep the line drawing character set since there is at least one known application which uses it (and box drawing is not an extremely uncommon use case).
foot, Ghostty, and libvaxis all support the box drawing character set (possibly others, these are just the ones I know of for sure).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But are they (foot, Ghostty, libvaxis) using these characters and not the unicode ones?
(Link from chat for the "one known application": https://github.com/pimutils/khal)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually it's the vaxis embedded terminal that supports that character set. It didn't initially but we received bug reports in aerc
for khal
which used that charset for the box drawing glyphs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But are they (foot, Ghostty, libvaxis) using these characters and not the unicode ones?
At least Ghostty is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, just wanted to make sure. And they don't prefer the unicode set if that is available?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These work by mapping ascii codepoints to other codepoints. So switching the charset to 0
, you can print a j
and get a ┘
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also sorry, I told Greg the wrong application. It was calcurse which uses the box drawing charset
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At least Ghostty is.
ghostty implements the british and us encoding as well though.
Implemented in ghostty-org/ghostty#9. No good reasoning is really given as to why however...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It didn't initially but we received bug reports in aerc for khal which used that charset for the box drawing glyphs.
@rockorager do you have a link to it so I can get more context?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, the drawing character set is widely supported by most terminals and tmux, so it makes some sense to keep it for the time being.
This comment was marked as outdated.
This comment was marked as outdated.
TODO:
|
Also remove SCS support from `:terminal`.
7be80f1
to
1710009
Compare
Also remove SCS support from
:terminal
.