Files
Xevion 91e58db0d9 config: add delta config and enhance lazygit with Dracula theme
- Extract delta configuration to dedicated managed config file
- Update lazygit with full Dracula theme and quality-of-life improvements
- Remove banner comments from config files for cleaner format
- Update git-related tool scripts (install-fonts, share utility)
2026-01-03 19:26:36 -06:00

226 lines
4.9 KiB
XML

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<!--
Fontconfig Configuration
Managed by Chezmoi - edit fonts.toml for font selection
Optimized for:
- LCD displays (1080p)
- Both light and dark modes
- General readability and crisp text
-->
<fontconfig>
<!-- Enable antialiasing for smooth edges -->
<match target="font">
<edit name="antialias" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- Enable hinting for sharper text -->
<match target="font">
<edit name="hinting" mode="assign">
<bool>true</bool>
</edit>
</match>
<!--
Hintstyle: slight
- Best balance between shape preservation and sharpness
- Works well for both light and dark modes
- Recommended for modern LCDs
-->
<match target="font">
<edit name="hintstyle" mode="assign">
<const>hintslight</const>
</edit>
</match>
<!--
Subpixel rendering: RGB
- Standard for most LCD monitors (horizontal RGB stripe)
- Effectively triples horizontal resolution
-->
<match target="font">
<edit name="rgba" mode="assign">
<const>rgb</const>
</edit>
</match>
<!--
LCD filter: default
- Reduces color fringing from subpixel rendering
- Good balance for most displays
-->
<match target="font">
<edit name="lcdfilter" mode="assign">
<const>lcddefault</const>
</edit>
</match>
<!-- Disable autohinting (use font's built-in hints) -->
<match target="font">
<edit name="autohint" mode="assign">
<bool>false</bool>
</edit>
</match>
<!-- Disable embedded bitmap fonts (use vector glyphs) -->
<match target="font">
<edit name="embeddedbitmap" mode="assign">
<bool>false</bool>
</edit>
</match>
<!-- Re-enable embedded bitmaps for emoji fonts -->
<match target="font">
<test name="family" qual="any">
<string>Noto Color Emoji</string>
</test>
<edit name="embeddedbitmap" mode="assign">
<bool>true</bool>
</edit>
</match>
<!-- Sans-serif: Inter with Noto Sans fallback -->
<alias>
<family>sans-serif</family>
<prefer>
<family>Inter</family>
<family>Noto Sans</family>
<family>DejaVu Sans</family>
</prefer>
</alias>
<alias>
<family>system-ui</family>
<prefer>
<family>Inter</family>
<family>Noto Sans</family>
</prefer>
</alias>
<!-- Serif: Source Serif 4 with Noto Serif fallback -->
<alias>
<family>serif</family>
<prefer>
<family>Source Serif 4</family>
<family>Noto Serif</family>
<family>DejaVu Serif</family>
</prefer>
</alias>
<!-- Monospace: Geist Mono with JetBrains Mono fallback -->
<alias>
<family>monospace</family>
<prefer>
<family>Geist Mono</family>
<family>JetBrains Mono</family>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
<alias>
<family>ui-monospace</family>
<prefer>
<family>Geist Mono</family>
<family>JetBrains Mono</family>
</prefer>
</alias>
<!-- Common font substitutions -->
<alias>
<family>Arial</family>
<prefer>
<family>Inter</family>
<family>Noto Sans</family>
</prefer>
</alias>
<alias>
<family>Helvetica</family>
<prefer>
<family>Inter</family>
<family>Noto Sans</family>
</prefer>
</alias>
<alias>
<family>Times New Roman</family>
<prefer>
<family>Source Serif 4</family>
<family>Noto Serif</family>
</prefer>
</alias>
<alias>
<family>Times</family>
<prefer>
<family>Source Serif 4</family>
<family>Noto Serif</family>
</prefer>
</alias>
<alias>
<family>Courier New</family>
<prefer>
<family>Geist Mono</family>
<family>JetBrains Mono</family>
</prefer>
</alias>
<alias>
<family>Courier</family>
<prefer>
<family>Geist Mono</family>
<family>JetBrains Mono</family>
</prefer>
</alias>
<!-- Emoji support -->
<alias>
<family>emoji</family>
<prefer>
<family>Noto Color Emoji</family>
</prefer>
</alias>
<!--
Geist Mono: Use slight hinting for clean rendering
Geist Mono has good weight distribution
-->
<match target="font">
<test name="family" qual="any">
<string>Geist Mono</string>
</test>
<edit name="hintstyle" mode="assign">
<const>hintslight</const>
</edit>
</match>
<!-- Same for Geist Mono variants -->
<match target="font">
<test name="family" qual="any" compare="contains">
<string>Geist Mono</string>
</test>
<edit name="hintstyle" mode="assign">
<const>hintslight</const>
</edit>
</match>
<!--
Inter: Slight hinting works great for this font
Already using global defaults, but explicit for clarity
-->
<match target="font">
<test name="family" qual="any">
<string>Inter</string>
</test>
<edit name="hintstyle" mode="assign">
<const>hintslight</const>
</edit>
</match>
</fontconfig>