Merge pull request #1697 from mitchellh/legacy

config: rename "wcswidth" to "legacy" for "grapheme-width-method"
This commit is contained in:
Mitchell Hashimoto
2024-04-19 10:06:01 -07:00
committed by GitHub
2 changed files with 7 additions and 6 deletions

View File

@ -193,13 +193,14 @@ const c = @cImport({
///
/// Valid values are:
///
/// * `wcswidth` - Use the wcswidth function to determine grapheme width.
/// This maximizes compatibility with legacy programs but may result
/// * `legacy` - Use a legacy method to determine grapheme width, such as
/// wcswidth This maximizes compatibility with legacy programs but may result
/// in incorrect grapheme width for certain graphemes such as skin-tone
/// emoji, non-English characters, etc.
///
/// Note that this `wcswidth` functionality is based on the libc wcswidth,
/// not any other libraries with that name.
/// This is called "legacy" and not something more specific because the
/// behavior is undefined and we want to retain the ability to modify it.
/// For example, we may or may not use libc `wcswidth` now or in the future.
///
/// * `unicode` - Use the Unicode standard to determine grapheme width.
///
@ -3464,6 +3465,6 @@ pub const WindowNewTabPosition = enum {
/// See grapheme-width-method
pub const GraphemeWidthMethod = enum {
wcswidth,
legacy,
unicode,
};

View File

@ -141,7 +141,7 @@ pub fn init(alloc: Allocator, opts: termio.Options) !Exec {
// switch to ensure we get a compiler error if more cases are added.
switch (opts.config.grapheme_width_method) {
.unicode => term.modes.set(.grapheme_cluster, true),
.wcswidth => {},
.legacy => {},
}
// Set the image size limits