1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-18 19:01:36 +03:00
wezterm/docs/config/fonts.md
Wez Furlong 21ce3f3262 docs: clean up the font documentation
Migrate information into the relevant config option pages, and
instead summarize with a demonstration of configuring the font.

For wezterm.font, there's now an expanded discussion on naming
and matching fonts.

closes: https://github.com/wez/wezterm/issues/560
2021-04-09 21:52:25 -07:00

3.3 KiB

WezTerm bundles JetBrains Mono, PowerlineExtraSymbols and Noto Color Emoji fonts and uses those for the default font configuration.

If you wish to use a different font face, then you can use the wezterm.font function to specify it:

local wezterm = require 'wezterm';

return {
  font = wezterm.font("Fira Code"),
  -- You can specify some parameters to influence the font selection;
  -- for example, this selects a Bold, Italic font variant.
  font = wezterm.font("JetBrains Mono", {weight="Bold", italic=true})
}

Fallback

WezTerm allows specifying an ordered list of fonts; when resolving text into glyphs the first font in the list is consulted, and if the glyph isn't present in that font, WezTerm proceeds to the next font in the fallback list.

The default fallback includes the popular PowerlineExtraSymbols font, which means that you don't need to use specially patched fonts to use the powerline glyphs.

You can specify your own fallback; that's useful if you've got a killer monospace font, but it doesn't have glyphs for the asian script that you sometimes work with:

local wezterm = require 'wezterm';
return {
  font = wezterm.font_with_fallback({
    "Fira Code",
    "DengXian",
  }),
}

WezTerm will still append its default fallback to whatever list you specify, so you needn't worry about replicating that list if you set your own fallback.

If none of the fonts in the fallback list (including WezTerm's default fallback list) contain a given glyph, then wezterm will resolve the system fallback list and try those fonts too. If a glyph cannot be resolved, wezterm will render a special "Last Resort" glyph as a placeholder. You may notice the placeholder appear momentarily and then refresh itself to the system fallback glyph on some systems.

Additional options for configuring fonts can be found elsewhere in the docs: