Skip to main content

add-icon

Add new icons to the GitLens GL Icons font

Ir a la instalación

Datos de origen

Repositorio
gitkraken/vscode-gitlens
Última actividad en el origen
4 de julio de 2026 a las 01:08
Idioma detectado de SKILL.md
inglés
Estrellas
9928
Forks
1801

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
add-icon
description
Add new icons to the GitLens GL Icons font
# /add-icon - Add GL Icon ## Usage ``` /add-icon [icon-name] ``` - `icon-name` — kebab-case (e.g., `my-new-icon`) ## Workflow ### 1. Add SVG File Place in `images/icons/{icon-name}.svg` Requirements: - Square viewBox (e.g., `viewBox="0 0 16 16"`) - Single color (fill controlled by CSS) - No embedded `<style>` tags or fonts - Use `fill="currentColor"` for color inheritance ### 2. Update Mapping Append to `images/icons/template/mapping.json`: ```json "icon-name": {next-available-code-point} ``` Code points are in the Private Use Area range (57344-63743). Check existing entries for next available. ### 3. Build ```bash pnpm run icons:svgo # Optimize SVGs pnpm run build:icons # Generate font (runs svgo + fantasticon + apply + export) ``` ### 4. Verify Font Cache-Busting `pnpm run build:icons` (via `scripts/applyIconsContribution.mjs`) now automatically propagates the new `glicons.woff2?{hash}` cache-bust hash into **both** `src/webviews/apps/shared/glicons.scss` **and** every per-app webview `*.html` file (each declares its own `@font-face`). No manual search-replace needed. Verify they're all unified (every reference must be the same hash): ```bash grep -rho "glicons.woff2?[a-f0-9]*" src/ dist/ | sort | uniq -c ``` If any HTML file lags behind, re-run `pnpm run build:icons` — a stale hash leaves that webview pointing at a cached font without the new glyph. ### 5. Use the Icon In Lit components (via the shared `<code-icon>` element, `src/webviews/apps/shared/components/code-icon.ts` — `gl-` prefix maps to the glicons font): ```typescript html`<code-icon icon="gl-my-new-icon"></code-icon>`; ``` In CSS: ```css .my-element::before { font-family: 'glicons'; content: '\{codepoint}'; } ``` ## Troubleshooting - **Icon not showing**: Check font URL is updated, verify code point in mapping.json, rebuild with `pnpm run build:icons` - **SVG issues**: Ensure single path/shape, remove `<style>` tags, use `fill="currentColor"`
Ver en GitHub