### Advanced Font Shaping Options The `harfbuzz_features` option allows specifying the features to enable when using harfbuzz for font shaping. There is some light documentation here: but it boils down to allowing opentype feature names to be specified using syntax similar to the CSS font-feature-settings options: . The OpenType spec lists a number of features here: Options of likely interest will be: * `calt` - * `clig` - If you want to disable ligatures in most fonts, then you may want to use a setting like this: ```lua return { harfbuzz_features = {"calt=0", "clig=0", "liga=0"}, } ``` Some fonts make available extended options via stylistic sets. If you use the [Fira Code font](https://github.com/tonsky/FiraCode), it lists available stylistic sets here: and you can set them in wezterm: ```lua return { -- Use this for a zero with a dot rather than a line through it -- when using the Fira Code font harfbuzz_features = {"zero"} } ``` *Since: 20220101-133340-7edc5b5a* You can specify `harfbuzz_features` on a per-font basis, rather than globally for all fonts: ```lua local wezterm = require 'wezterm' return { font = wezterm.font({ family="JetBrains Mono", harfbuzz_features={"calt=0", "clig=0", "liga=0"} }) } ``` and this example disables ligatures for JetBrains Mono, but keeps the default for the other fonts in the fallback: ```lua local wezterm = require 'wezterm'; return { font = wezterm.font_with_fallback({ { family="JetBrains Mono", weight="Medium", harfbuzz_features={"calt=0", "clig=0", "liga=0"} }, {family="Terminus", weight="Bold"}, "Noto Color Emoji" }), } ```