Last active
October 27, 2025 03:37
-
-
Save hunzo/4b3fe6872736a18509f7e737ea6267e8 to your computer and use it in GitHub Desktop.
fix ubuntu-22.04 thai fonts
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # Fix Thai font rendering and replace common fonts (Segoe UI, Arial, etc.) with Noto Sans Thai/Noto Sans | |
| set -euo pipefail | |
| echo "[*] Installing fonts (if available)..." | |
| if command -v apt >/dev/null 2>&1; then | |
| sudo apt update | |
| sudo apt install -y fonts-noto-core fonts-noto-color-emoji fonts-noto-mono || true | |
| fi | |
| CONF_FILE="/etc/fonts/conf.d/99-fix-thai-and-segoe.conf" | |
| echo "📝 Create file Fontconfig: $CONF_FILE" | |
| sudo tee "$CONF_FILE" >/dev/null <<'EOF' | |
| <?xml version="1.0"?> | |
| <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | |
| <fontconfig> | |
| <match target="pattern"> | |
| <test name="lang" compare="contains"><string>th</string></test> | |
| <test name="family" qual="any"><string>sans-serif</string></test> | |
| <edit name="family" mode="assign_replace" binding="strong"> | |
| <string>Noto Sans Thai</string> | |
| </edit> | |
| </match> | |
| <match target="pattern"> | |
| <test name="family" qual="any"><string>Segoe UI Webfont</string></test> | |
| <edit name="family" mode="assign_replace" binding="strong"> | |
| <string>Noto Sans</string> | |
| </edit> | |
| </match> | |
| <match target="pattern"> | |
| <test name="family" compare="contains"><string>Emoji</string></test> | |
| <edit name="family" mode="assign_replace" binding="strong"> | |
| <string>Noto Color Emoji</string> | |
| </edit> | |
| </match> | |
| <match target="pattern"> | |
| <test name="family" qual="any" compare="contains"><string>Segoe UI</string></test> | |
| <edit name="family" mode="assign_replace" binding="strong"> | |
| <string>Noto Sans</string> | |
| </edit> | |
| </match> | |
| <match target="pattern"> | |
| <test name="lang" compare="contains"><string>th</string></test> | |
| <test name="family" qual="any" compare="contains"><string>Segoe UI</string></test> | |
| <edit name="family" mode="assign_replace" binding="strong"> | |
| <string>Noto Sans Thai</string> | |
| </edit> | |
| </match> | |
| <alias> | |
| <family>Arial</family> | |
| <prefer><family>Noto Sans Thai</family></prefer> | |
| </alias> | |
| <alias> | |
| <family>Helvetica</family> | |
| <prefer><family>Noto Sans Thai</family></prefer> | |
| </alias> | |
| <alias> | |
| <family>Verdana</family> | |
| <prefer><family>Noto Sans Thai</family></prefer> | |
| </alias> | |
| <alias> | |
| <family>Tahoma</family> | |
| <prefer><family>Noto Sans Thai</family></prefer> | |
| </alias> | |
| <alias> | |
| <family>sans-serif</family> | |
| <prefer><family>Noto Sans Thai</family></prefer> | |
| </alias> | |
| </fontconfig> | |
| EOF | |
| echo "⏳ Rebuild font cache..." | |
| sudo fc-cache -vf |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment