Help us improve
Share bugs, ideas, or general feedback.
From md-publisher
This skill should be used when the user asks to "install theme fonts", "set up md-publisher fonts", "fix font substitution", "install Google Fonts for md-publisher", or invokes /md-publisher:install-fonts. Per-user installs the font families used by the bundled and user-installed themes (Newsreader, Sora, JetBrains Mono, IBM Plex Mono, Audiowide, Bungee, Recursive, Playfair Display, DM Sans, Fira Code) without requiring administrator privileges. Cross-platform, Windows (HKCU registry), macOS (~/Library/Fonts), Linux (~/.local/share/fonts + fc-cache).
npx claudepluginhub ehartye/md-publisher --plugin md-publisherHow this skill is triggered — by the user, by Claude, or both
Slash command
/md-publisher:install-fontsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Install the Google Fonts that md-publisher's bundled themes use, so DOCX output renders with the intended typography instead of falling back to system substitutes.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Grills users relentlessly on plans or designs by interviewing branch-by-branch through decision trees to reach shared understanding. Use for stress-testing ideas or 'grill me'.
Share bugs, ideas, or general feedback.
Install the Google Fonts that md-publisher's bundled themes use, so DOCX output renders with the intended typography instead of falling back to system substitutes.
PDF output via WeasyPrint embeds the typeface in the file regardless, so this skill mostly matters for DOCX (Word names fonts but doesn't embed them).
/md-publisher:install-fontsDetermine scope. If the user passed --theme <name> --mode <mode>, install only that theme's fonts. If they passed --all or no flag, install fonts for all themes installed (bundled + user themes at ~/.md-publisher/themes/).
Run the installer. Invoke ${CLAUDE_PLUGIN_ROOT}/skills/install-fonts/scripts/install-fonts.py with the parsed flags. The script:
lib.theme_loader.resolve_selection.lib.font_install.install_all_for_themes() which downloads TTFs from github.com/google/fonts/ofl/<slug>/ and installs them per-user.%LOCALAPPDATA%\Microsoft\Windows\Fonts and registers in HKCU.~/Library/Fonts.~/.local/share/fonts and runs fc-cache (when available).--dry-run lists what would be installed without downloading.Report results. Print the per-family install count and a reminder that open apps must be re-launched to pick up newly-registered fonts.
| Flag | Default | Meaning |
|---|---|---|
--theme <name> | (all themes) | Restrict to one theme name. |
--mode <light|dark> | (both) | Restrict to one mode within --theme. |
--all | off | Explicit "all themes" — equivalent to no theme/mode flags. |
--dry-run | off | List what would be installed; download nothing. |
# Install fonts for everything currently installed
/md-publisher:install-fonts
# Just phosphor's font (IBM Plex Mono)
/md-publisher:install-fonts --theme phosphor
# Preview without installing
/md-publisher:install-fonts --dry-run
lib.font_install.FONT_SLUGS only knows the bundled themes' fonts. Custom themes naming a Google Font outside that map need the user to add a mapping or install manually. Surface the missing slug clearly.