mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-04 04:06:06 -05:00
config: change default grapheme-width-method from wcswidth to double-width
The old default, wcswidth, simply calls wcswidth() on the grapheme cluster. This was supposedly the implementation with the highest application compatibility. Except we never even tried to measure it. It was just assumed. A lot of modern applications have better implementations. Let’s try to push support for better emoji support by changing our default method from wcswith to double-width. While far from correct (it’s not based on the Unicode tables), the ‘double-width’ method produces accurate results anyway. double-width is like wcswidth(), in that it adds together the individual wcwidths of all codepoints in the grapheme cluster. But, it limits the maximum width to 2.
This commit is contained in:
parent
9e4270cd48
commit
6259d59b4d
3 changed files with 3 additions and 2 deletions
|
|
@ -75,6 +75,7 @@
|
|||
* Set `PWD` environment variable in the slave process ([#1179][1179]).
|
||||
* DPI is now forced to 96 when found to be unreasonably high.
|
||||
* Set default log level to warning ([#1215][1215]).
|
||||
* Default `grapheme-width-method` from `wcswidth` to `double-width`.
|
||||
|
||||
[1166]: https://codeberg.org/dnkl/foot/issues/1166
|
||||
[1179]: https://codeberg.org/dnkl/foot/issues/1179
|
||||
|
|
|
|||
2
config.c
2
config.c
|
|
@ -3003,7 +3003,7 @@ config_load(struct config *conf, const char *conf_path,
|
|||
#if defined(FOOT_GRAPHEME_CLUSTERING) && FOOT_GRAPHEME_CLUSTERING
|
||||
.grapheme_shaping = fcft_caps & FCFT_CAPABILITY_GRAPHEME_SHAPING,
|
||||
#endif
|
||||
.grapheme_width_method = GRAPHEME_WIDTH_WCSWIDTH,
|
||||
.grapheme_width_method = GRAPHEME_WIDTH_DOUBLE,
|
||||
.delayed_render_lower_ns = 500000, /* 0.5ms */
|
||||
.delayed_render_upper_ns = 16666666 / 2, /* half a frame period (60Hz) */
|
||||
.max_shm_pool_size = 512 * 1024 * 1024,
|
||||
|
|
|
|||
|
|
@ -1256,7 +1256,7 @@ any of these options.
|
|||
|
||||
*max* uses the width of the largest codepoint in the cluster.
|
||||
|
||||
Default: _wcswidth_
|
||||
Default: _double-width_
|
||||
|
||||
*font-monospace-warn*
|
||||
Boolean. When enabled, foot will use heuristics to try to verify
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue