Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
46 KiB
Nerd Fonts es un proyecto que parcha las fuentes que un desarrollador va a usar con un número alto de glifos (iconos). Especificamente añade un gran número de glifos extra de algunas 'fuentes de iconos' como Font Awesome ➶, Devicons ➶, Octicons ➶, y otras.
El siguiente diagrama Sankey muestra los conjuntos de glifos incluidos en la actualidad:
Diagrama creado usando @SankeyMATICNoticias Importantes
- Las rutas de archivo en la rama
master
no son consideradas estables. Verifica las referencias URI de tu repositorio - Clonar este repositorio no es recomendado (debido al tamaño del Repo) a menos que vayas a contribuir al desarrollo
Tabla de Contenidos
- 1 - Manual
- 2 - Descarga de Archivo de Release
- 3 - Script de Instalación
- 4 - Fuentes Homebrew (macOS (OS X))
- 5 - Clonar el Repo
- 6 - Descarga Ad Hoc con Curl
- 7 - Chocolatey o Scoop (Windows)
- 8 - Repositorio de Arch Linux (Community, AUR)
- 9 - Parcha tu Propia Fuente
- Parchador de Fuentes
- Parchador de Fuentes ¡Hay que Parcharlas a Todas!
- Otras Buenas Fuentes para Parchar
- Contribuir
Información adicional
TL;DR
Nerd Fonts toma algunas fuentes populares para desarrollo y les añade bastantes glifos. También hay un parchador de fuentes disponible si tu fuente preferida no ha sido parchada previamente. Para información de alto nivel revisa la wiki (en inglés). Si estás buscando el plugin de Vim ve a VimDevIcons ➶.
Varias Opciones de Descarga para Fuentes
Si tú...
Opción 1.
quieres descargar rápidamente una fuente individual, descárgala desde el directoriopatched-fonts/
Opción 2.
quieres descargar un paquete de variaciones de una familia de fuentes (negrita, itálica, etc.), ve a descargar un paqueteOpción 3.
quieres automatizar la instalación o usar esto en un script, ve a Script de InstalaciónOpción 4.
estás en macOS y quieres usar el Homebrew, ve a Fuentes HomebrewOpción 5.
quieres control completo, entonces ve a clonar el repoOpción 6.
quieres usar el comandocurl
o usar en scripts, ve a Descarga Ad Hoc con CurlOpción 7.
estás en Windows y quieres usar Chocolatey o Scoop ve a Repositorios no oficiales Chocolatey o ScoopOpción 8.
estás en Arch Linux y quieres usar paquetes Community, ve a Repositorios Community de ArchOpción 9.
quieres parchar tu propia fuente, ve a Parchador de Fuentes
Características
- Un script de FontForge en Python para parchar cualquier fuente
- Incluye una opción para crear glifos Monoespaciados (paso fijo, ancho fijo) o glifos de ancho doble (no monoespaciados)
- Para más detalles ve a la sección del Parchador de Fuentes
53
familias de fuentes parchadas hasta ahora- Más de
9,000
glifos/iconos en total (más detalles)- Los conjuntos de glifos actuales incluyen: Powerline with Extra Symbols, Font Awesome, Material Design Icons, Weather, Devicons, Octicons, Font Logos (Formerly Font Linux), Pomicons
- Hay versiones de glifos Monoespaciados (paso fijo, ancho fijo) o de ancho doble (no monoespaciados) para cada fuente
- Esto se refiere a los glifos de Nerd Fonts, no necesariamente a la fuente en general
- Un script de bash provisto por desarrolladores/contribuidores para reparchar todas las fuentes
Conjuntos de Glifos
🔍 🔍 Puedes buscar glifos fácilmente entrando a NerdFonts.com a través de la Hoja de Trampa
Ve a la Wiki: Conjuntos de Glifos y Puntos de Código para más detalles
Nombres de Iconos en la Shell
Ve a la Wiki: Nombres de iconos en la shell
Fuentes Parchadas
*RFN = Reserved Font Name
Variaciones
- si no se pasan parámetros (por defecto solo para Seti-UI + Personalizado y Devicons)
- glifos de ancho doble (variable/proporcional) o simple (fijo/monoespaciado)
- Font Awesome
- Font Awesome Extension
- Material Design Icons
- Weather
- GitHub Octicons
- Font Logos (Formerly Font Linux)
- Powerline Extra Symbols
- IEC Power Symbols
- Pomicons
- Codicons
Instalación de Fuentes
Opción 1: Descarga e Instala Manualmente
Es la mejor opción para obtener rápidamente una fuente individual.
Descarga la fuente parchada específica que desees
Opción 2: Descargar Paquete de Release
Es la mejor opción si quieres un paquete o una familia de fuentes con variaciones (negrita, itálica, etc.).
Las fuentes están disponibles para descarga como paquetes en los últimos lanzamientos
Opción 3: Script de Instalación
Es la mejor opción si quieres automatizar la instalación o usarlo en scripts.
Nota: Requiere clonar el repo por el momento
Todas las fuentes:
- Instala todas las Fuentes parchadas (Advertencia: Son una gran cantidad de Fuentes que suman un tamaño grande)
./install.sh
o, en Powershell (solo Windows):
./install.ps1
Fuentes individuales:
- Instala una fuente individual de tu preferencia
./install.sh <NombreFuente>
./install.sh Hack
./install.sh HeavyData
o, en Powershell (solo Windows):
./install.ps1 <FontName>
./install.ps1 Hack
./install.ps1 HeavyData
./install.ps1 FiraCode, Hack
./install.ps1 DejaVuSansMono -WhatIf
Opción 4: Fuentes Homebrew
Es la mejor opcion si estás en macOS y quieres usar Homebrew.
Todas las fuentes están disponibles en Homebrew Cask en macOS (OS X)
brew install font-hack-nerd-font
Opción 5: Clonar el repo
Es la mejor opción si quieres control completo, todas o la mayoría de las fuentes, o contribuir al desarrollo.
Clonar este repositorio no es requerido ni es eficiente (más que todo debido al tamaño del Repositorio) si tú simplemente estás interesado en un conjunto limitado de fuentes.
Sin embargo, si quieres clonar el repo, asegúrate de hacer un clón superficial:
git clone --depth 1
Si quires clonar un sub-directorio, usa git sparse-checkout
. El siguiente ejemplo requiere Git v2.26
:
git clone --filter=blob:none --sparse git@github.com:ryanoasis/nerd-fonts
cd nerd-fonts
git sparse-checkout add patched-fonts/JetBrainsMono
Opción 6: Descarga Ad Hoc con Curl
Esta es la opción si deseas usar el comando
curl
o para usarlo con scripts.
Linux
mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts && curl -fLO https://github.com/ryanoasis/nerd-fonts/raw/HEAD/patched-fonts/DroidSansMono/DroidSansMNerdFont-Regular.otf
Nota:_ Rutas alternativas deprecadas: ~/.fonts
macOS (OS X)
cd ~/Library/Fonts && curl -fLO https://github.com/ryanoasis/nerd-fonts/raw/HEAD/patched-fonts/DroidSansMono/DroidSansMNerdFont-Regular.otf
Opción 7: Repositorios no oficiales Chocolatey o Scoop
Es la opción para Windows si quieres usar Chocolatey o Scoop.
Los usuarios de Chocolatey pueden descargar fuentes publicadas en el Repositorio de la Comunidad Chocolatey (CCR):
choco install nerd-fonts-hack
Los usuarios de Scoop pueden descargar fuentes usando el Scoop bucket para Nerd Fonts:
scoop bucket add nerd-fonts
scoop install Hack-NF
Opción 8: Repositorio Community de Arch
Es la opción para usuarios de Arch Linux que quieren usar paquetes Community.
La mayoría de las fuentes están disponibles a través de los paquetes Community de Arch. Algunos paquetes especiales están en AUR.
Opción 9: Parchar tu Propia Fuente
La opción para parchar tu propia fuente o personalizar completamente la fuente parchada.
Usa el script de línea de comandos de Python provisto para generar una fuente parchada desde tu propia fuente y obtener los glifos extra nuevos.
Ve a: Parchador de fuentes para aprender como usarlo.
- usa esta opción si no quieres usar alguna de las fuentes provistas
- aún necesitarás copiar la fuente generada al directorio correcto de fuentes de tu sistema
Parcha la fuente de tu preferencia:
-
Usa el script
- Descarga el script y los archivos auxiliares como archivo y extráelo
- Descargar únicamente el script
font-patcher
no es suficiente. - Requieres: Fontforge, Python 3, los paquetes
python-fontforge
yargparse
- Fontforge puede ser instalado como un paquete
- o en OSX mediante
brew install fontforge
- o como AppImage
- Uso, recomendado:
fontforge -script font-patcher PATH_TO_FONT
- Uso, directo (comando más conveniente, si funciona para ti):
./font-patcher PATH_TO_FONT
-
Uso, con Fontforge AppImage
Nota: ejecuta
chmod u+x
en el archivo AppImage después de la descarga. Todas las rutas proveidas necesitan que ser absolutas y ¡una ruta de salida explícita es requerida! Si todo está localizado en el mismo directorio, puedes usar el atajo$PWD
.
./FontForge.AppImage -script $PWD/font-patcher $PWD/BaseFont.ttf -out /tmp
-
Usa docker
docker run --rm -v /path/to/fonts:/in:Z -v /path/for/output:/out:Z nerdfonts/patcher [OPTIONS]
Opciones completas:
Nerd Fonts Patcher v3.0.1 (4.3.1) (ff 20230101)
uso: font-patcher [-h] [-v] [-s] [-l] [-q] [-c] [--careful] [--removeligs] [--postprocess [POSTPROCESS]] [--configfile [CONFIGFILE]] [--custom [CUSTOM]]
[-ext [EXTENSION]] [-out [OUTPUTDIR]] [--glyphdir [GLYPHDIR]] [--makegroups [{0,1,2,3,4,5,6}]] [--variable-width-glyphs] [--has-no-italic]
[--progressbars | --no-progressbars] [--debug [{0,1,2,3}]] [--dry] [--xavgcharwidth [XAVGWIDTH]] [--fontawesome] [--fontawesomeextension] [--fontlogos]
[--octicons] [--codicons] [--powersymbols] [--pomicons] [--powerline] [--powerlineextra] [--material] [--weather]
font
Parchador de fuentes Nerd Fonts: parcha una fuente dada con glifos relacionados con la programación y el desarrollo
* Sitio web: https://www.nerdfonts.com
* Versión: 3.0.1
* Sitio de Desarrollo: https://github.com/ryanoasis/nerd-fonts
* Registro de Cambios: https://github.com/ryanoasis/nerd-fonts/blob/-/changelog.md
argumentos posicionales:
font Ruta a la fuente a parchar (ej., Inconsolata.otf)
argumentos opcionales:
-h, --help muestra este mensaje de ayuda y sale
-v, --version muestra la versión del programa y sale
-s, --mono, --use-single-width-glyphs
Indica si genera los glifos como ancho simple, no doble (por defecto es ancho doble)
-l, --adjust-line-height
Indica si se ajustan las alturas de línea (para intentar centrar los separadores de powerline más parejo)
-q, --quiet, --shutup
No generar salida verbal
-c, --complete Añade todos los glifos disponibles
--careful No sobreescribe los glifos que ya existen si son detectados
--removeligs, --removeligatures
Remueve ligaturas especificadas en el archivo de configuración JSON
--postprocess [POSTPROCESS]
Especifica un Script para Post Procesamiento
--configfile [CONFIGFILE]
Especifica una ruta de archivo para un archivo de configuración JSON (mira el ejemplo en: src/config.sample.json)
--custom [CUSTOM] Especifica una fuente de símbolos personalizados. Todos los glifos serán copiados; se recomienda ruta absoluta.
-ext [EXTENSION], --extension [EXTENSION]
Cambia el tipo de archivo de fuente a crear (ej., ttf, otf)
-out [OUTPUTDIR], --outputdir [OUTPUTDIR]
El directorio donde se generará el archivo de fuente parchado
--glyphdir [GLYPHDIR]
Ruta a los glifos que se utilizarán para parchar
--makegroups [{0,1,2,3,4,5,6}]
Usar el método alternativo para nombrar a las fuentes parchadas (recomendado)
--variable-width-glyphs
No ajustar el ancho de avance (sin "voladizos")
--has-no-italic La familia de fuente no tiene Italica (pero sí Oblicua)
--progressbars Muestra barras de progreso con porcentajes de completitud por cada Conjunto de Glifos
--no-progressbars No muestra barras de progreso con porcentajes de completitud por cada Conjunto de Glifos
--debug [{0,1,2,3}] Modo de verbosidad (opcional: 1=solo a archivo; 2*=solo a terminal; 3=terminal y archivo)
--dry No parchar ni guardar la fuente, para checar los nombres
--xavgcharwidth [XAVGWIDTH]
Ajustar xAvgCharWidth (opcional: valor en concreto)
Symbol Fonts:
--fontawesome Añade los glifos de Font Awesome (http://fontawesome.io/)
--fontawesomeextension
Añade los glifos de Font Awesome Extension (https://andrelzgava.github.io/font-awesome-extension/)
--fontlogos, --fontlinux
Añade los glifos de Font Logos (https://github.com/Lukas-W/font-logos)
--octicons Añade los glifos de Octicons (https://octicons.github.com)
--codicons Add Codicons Glyphs (https://github.com/microsoft/vscode-codicons)
--powersymbols Añade los glifos de IEC Power Symbols (https://unicodepowersymbol.com/)
--pomicons Añade los glifos de Pomicon (https://github.com/gabrielelana/pomicons)
--powerline Añade los glifos de Powerline
--powerlineextra Añade los glifos de Powerline (https://github.com/ryanoasis/powerline-extra-symbols)
--material, --materialdesignicons, --mdi
Añade los glifos de Material Design Icons (https://github.com/templarian/MaterialDesign)
--weather, --weathericons
Añade los glifos de Weather Icons (https://github.com/erikflowers/weather-icons)
Ejemplos
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf -s -q
./font-patcher Droid\ Sans\ Mono\ for\ Powerline.otf --use-single-width-glyphs --quiet
./font-patcher Inconsolata.otf --fontawesome
./font-patcher Inconsolata.otf --fontawesome --octicons --pomicons
./font-patcher Inconsolata.otf
./FontForge.AppImage -script /tmp/nerdfonts/font-patcher /tmp/nerdfonts/CascadiaMonoPL-Semibold.ttf --fontawesome -out /tmp
./FontForge.AppImage -script $PWD/font-patcher $PWD/CascadiaMonoPL-Semibold.ttf --octicons -out $HOME
docker run --rm -v ~/myfont/patchme:/in:Z -v ~/myfont/patched:/out:Z nerdfonts/patcher
docker run --rm -v ~/Desktop/myfont/patchme:/in:Z -v ~/Desktop/myfont/patched:/out:Z nerdfonts/patcher --fontawesome
Usualmente quieres la opción --complete
.
Parchador de Fuentes ¡Hay que Parcharlas a Todas!
-
para uso de los Contribuidores o Desarrolladores
-
reparcha todas las fuentes sin parchar en el directorio:
./gotta-patch-em-all-font-patcher\!.sh
-
puede opcionalmente limitarse a un patrón específico de nombre de fuente:
./gotta-patch-em-all-font-patcher\!.sh Hermit
-
o a un inicio de nombre de directorioespecífico :
./gotta-patch-em-all-font-patcher\!.sh /Heavy
Opciones completas:
Uso: ./gotta-patch-em-all-font-patcher!.sh [OPCIÓN] [FILTRO]
OPCIÓN:
-c, --checkfont Crear la(s) fuente(s) en el directorio check-fonts/
-t, --keeptime Intenta preservar la marca de tiempo de la fuente
parchada previamente en el directorio patched-fonts/
-v, --verbose Mostrar más información al momento de ejecución
-i, --info Reconstruir ÚNICAMENTE los readmes
-j, --jobs Ejecutar hasta 8 procesos de parchado en paralelo
-h, --help Mostrar esta ayuda
FILTRO:
El argumento del filtro a este script es un filtro para las fuentes a parchar.
El filtro es un regex (glob * se expresa como [^/]*, ver 'man 7 glob`)
Todos los archivos de fuentes que comienzan con ese filtro (y son archivos tft, otf o sfd)
serán procesados únicamente.
Ejemplo ./gotta-patch-em-alt-font-patcher\!.sh "iosevka"
Procesa todos los archivos de fuentes que comienzan con "iosevka"
Si el argumento comienza con un '/' todos los archivos de fuentes en un directorio que coincida
con el filtro serán procesados únicamente.
Ejemplo ./gotta-patch-em-all-font-patcher\!.sh "/iosevka"
Procesa todos los archivos de fuentes que están en el directorio "iosevka"
Contribuir
Ve a contributing.md
Rutas de Archivo Inestables
⚠️ Advertencia: Las rutas de nombres de archivo podrían cambiar en cada lanzamiento (especialmente en cambios de número de versión mayor)
Referencia a la rama release y no a la rama master porque las rutas de archivos podrían cambiar en cada lanzamiento
- Por ejemplo:
- ✅ Usa:
https://github.com/ryanoasis/nerd-fonts/blob/0.9.0/patched-fonts/Hermit/Medium/complete/Hurmit%20Medium%20Nerd%20Font%20Complete.otf
- ❌ En lugar de:
https://github.com/ryanoasis/nerd-fonts/blob/
master/patched-fonts/Hermit/Medium/complete/Hurmit%20Medium%20Nerd%20Font%20Complete.otf
- ✅ Usa:
Otras Buenas Fuentes para Parchar
Una lista no exhaustiva de fuentes adicionales que podrían beneficiarse de ser parchadas, pero no se pueden incluir o compartir debido a sus licencias (propietaria, commercial, etc.):
Motivación del Proyecto
Ve a la Wiki: Propósito del Proyecto
Registro de Cambios
Ve a changelog.md
Licencia
Ve a LICENCIA