14 puntos por GN⁺ 2025-11-04 | 15 comentarios | Compartir por WhatsApp
  • Se presentan los resultados de la evaluación de 2025 que compara los principales emuladores de terminal según la precisión del soporte de Unicode y el rendimiento
  • Ghostty es una terminal nueva desarrollada en Zig, obtuvo la puntuación más alta e implementa un manejo correcto de Unicode
  • Kitty logró una puntuación de nivel similar a Ghostty y publicó su algoritmo de segmentación de texto, contribuyendo a la estandarización
  • Muchas terminales mostraron problemas de bajo rendimiento e inconsistencias en el soporte de DEC Private Mode; en especial, las terminales basadas en VTE no mostraron mejoras
  • Con la aparición del protocolo de texto de ancho variable, se plantea la posibilidad de mejorar la legibilidad de distintos idiomas más allá de la limitación de las celdas de ancho único
  • Errant Champions (campeones errantes): desafiantes que, como Ghostty y Kitty, no se conforman con las especificaciones clásicas y replantean desde la base los problemas de ancho de caracteres, renderizado y Unicode en las terminales

Herramienta ucs-detect y panorama de las pruebas

  • Como seguimiento del experimento comparativo de soporte de Unicode presentado en 2023, la herramienta ucs-detect añadió funciones de detección de DEC Private Modes, gráficos sixel, tamaño de píxel y versión de software
    • Esta herramienta envía secuencias de control de posición del cursor y compara la respuesta de la terminal con los resultados de Python wcwidth para registrar discrepancias
  • Las pruebas verifican la precisión del cálculo del ancho de caracteres de cada terminal, y los resultados cuantifican la calidad del soporte de Unicode

El problema del ancho de caracteres (The Width Problem)

  • Las terminales tienen una limitación estructural: deben mostrar distintos caracteres Unicode dentro de una cuadrícula de ancho fijo
  • Debido a caracteres combinantes, secuencias de emoji y Zero-width joiner, la predicción del ancho de los caracteres falla con frecuencia
  • Estos errores provocan fallos en la posición del cursor y corrupción de la salida, e incluso distorsionan la posición de entrada
  • Los resultados de las pruebas identifican qué terminales causan menos estos problemas

Ghostty: una nueva potencia

  • Ghostty es una nueva terminal publicada en 2025, desarrollada desde cero en el lenguaje Zig
    • Gracias a una implementación exhaustiva del soporte de Unicode, obtuvo la mayor precisión y la puntuación más alta en las pruebas
  • Su desarrollador, Mitchell Hashimoto, estudió los principios fundamentales en el texto de 2023 Grapheme Clusters and Terminal Emulators
  • La recién presentada libghostty puede convertirse en una alternativa para reemplazar a libvte, y podría aportar una base sólida de Unicode al ecosistema de terminales en el futuro

Kitty: otro campeón

  • Kitty registró una puntuación casi idéntica a la de Ghostty y publicó su algoritmo de división de celdas de texto
    • Este algoritmo coincide con la especificación de Python wcwidth y se basa en una interpretación del estándar Unicode
  • Solo estas dos terminales soportan correctamente Variation Selector 15
    • Aunque su utilidad práctica es baja, está previsto que esta función se incorpore a futuro al estándar de Python wcwidth

Resumen comparativo del rendimiento Unicode de los emuladores de terminal

  • 1.º Ghostty, 2.º Foot, 3.º Kitty ocuparon los primeros lugares
    • Las tres terminales obtuvieron la puntuación máxima en precisión de manejo de Unicode (WIDE/LANG/ZJW/VS16)
    • Ghostty logró 100 puntos en todos los apartados, con puntuación total de 100, y DEC Modes también aparece como enabled
    • Kitty es algo más lenta en rendimiento (Elapsed time 1748s), pero mantiene un nivel máximo de precisión
  • Las terminales basadas en VTE (GNOME Terminal, Terminator, LXTerminal, etc.) se mantuvieron en la parte baja
    • Todas tienen Final Scaled Score de 5 puntos o menos y tiempos de prueba muy lentos, entre 8000 y 18000 segundos
    • No hubo mejoras respecto a 2023
  • En términos de rendimiento (Elapsed time), Foot, WezTerm, tmux y Konsole fueron rápidas (menos de 100 segundos)
    • iTerm2 y Extraterm fueron muy lentas por su alto uso de CPU (más de 4000 segundos)
  • El soporte de gráficos sixel solo está disponible en algunos de los mejor posicionados
    • Ghostty, Kitty, Konsole y contour sí lo soportan
    • GNOME Terminal y la mayoría de la familia VTE no lo soportan
  • Solo Ghostty y Kitty soportan correctamente Variation Selector 15 (VS15)
    • En términos de madurez del manejo de Unicode, estos dos proyectos están en una categoría aparte

Análisis de rendimiento (The Long Road)

  • Muchas terminales mostraron un rendimiento muy lento, al punto de requerir horas para completar las pruebas
    • iTerm2 y Extraterm consumían demasiada CPU, por lo que fue necesario acortar el tiempo de prueba
    • GNOME Terminal y las terminales basadas en VTE usan poca CPU, pero aun así tardaron más de 5 horas
  • Python wcwidth, pese a ser un lenguaje de alto nivel, igualó la velocidad de la mayoría de las terminales
  • Para optimizar el rendimiento se probaron vectores de bits, filtros de Bloom y caché LRU, pero la combinación de búsqueda binaria + caché LRU resultó ser la más eficiente
    • La caché LRU es eficaz al procesar conjuntos repetidos de caracteres
  • También se consideró introducir un módulo en C, pero la implementación actual en Python ya ofrece un rendimiento suficiente

Casos curiosos y problemas (Tilting at Edges)

  • Terminology produce resultados distintos en cada ejecución, lo que sugiere posible corrupción de estado interno
  • iTerm2 informa todos los DEC Private Mode como “soportados pero desactivados”
  • Konsole no responde a las consultas, pero algunos modos sí son compatibles cuando se activan
  • Contour respondió con números de modo incorrectos, por lo que se marcó como “sin soporte”, y en la versión de diciembre de 2024 apareció un error de configuración de la tecla ESC
  • Las terminales basadas en VTE/7600 mantuvieron la misma baja puntuación que en 2023
  • Las discusiones sobre mejoras de Unicode en el proyecto libvte recibieron críticas, pero el issue de soporte para secuencias de emoji se considera una señal de mejora hacia 2026

Sobre el Mode 2027

  • Mode 2027 clasifica de forma simple si una terminal soporta o no Unicode, pero no permite conocer el nivel de detalle de sus funciones
  • En la práctica, un enfoque como ucs-detect, que prueba directamente funciones individuales y code points, es más preciso

Más allá del ancho fijo (Beyond Fixed Widths)

  • La estructura de celdas de ancho fijo reduce la legibilidad de muchos idiomas
  • El protocolo de ajuste de tamaño de texto (text sizing protocol) propone un nuevo enfoque para resolverlo
    • Kovid Goyal, de Kitty, lo explicó con el ejemplo de “querer ver más grande el título de un archivo Markdown”
  • Esta función plantea la posibilidad de mejorar la accesibilidad y la legibilidad de escrituras complejas
  • Como ejemplo, la comparación de visualización del idioma Khün entre Contour y el editor Kate mostró que el renderizado de ancho variable ofrece resultados más claros
  • Se plantea como dirección futura un modo de ancho variable que permita al motor tipográfico renderizar texto sin las restricciones por celda
  • La adopción del protocolo de tamaño de texto se considera un avance para resolver estos problemas

15 comentarios

 
sleepyeye 2025-11-10

Recomiendo wezterm.

 
kaorw 2025-11-06

Estoy usando xshell e iterm2... Creo que también debería probar otros.

 
hwhang0917 2025-11-05

En Mac y Linux usé mucho ghostty, pero en Windows creo que wezterm es el mejor.

 
botplaysdice 2025-11-05

Como usuario de Windows

me acomodé por completo con cygwin terminal (mintty) + mosh. La verdad, no siento que le falte nada.

 
ndrgrd 2025-11-04

Kitty tiene buenas funciones, pero me alegra que haya surgido una alternativa llamada Ghostty porque su mantenedor es una persona lamentable.

 
savvykang 2025-11-04

Simplemente uso Windows Terminal.

 
say8425 2025-11-04

Al final volví a iTerm2

 
ceruns 2025-11-04

Siempre termino volviendo a Gnome Terminal...

 
sddsdd94 2025-11-04

Ojalá que Ghostty o Kitty también fueran compatibles con Windows.

Si ajustas bien solo la configuración, WezTerm también me pareció bastante bueno. (compatible con Windows)
https://es.news.hada.io/topic?id=9270

 
coderred 2025-11-04

Parece que tabby es de nicho... tendré que probar ghostty una vez.

 
coderred 2025-11-04

Ah. Entonces ghostty no tiene versión para Windows;

 
barca105 2025-11-04

Con los programas CLI de LLM, parece que también en la terminal se usará cada vez más una variedad de idiomas además del inglés.
Desde esa perspectiva, siento que el soporte de Unicode en los emuladores de terminal es realmente importante.

 
t7vonn 2025-11-04

Si ghostty tuviera la función cmd+f, sería perfecto. Como no la tiene, resulta incómodo de forma sutil.

Y además, cuando ya lo tienes dividido con split, no sé cómo separar eso en una ventana aparte. ¿Alguien sabrá cómo hacerlo? T_T

 
jjpark78 2025-11-04

No menosprecies a alacritty~~~

 
GN⁺ 2025-11-04
Opiniones en Hacker News
  • Por trabajo de la empresa probé Windows Terminal por primera vez.
    Después de pasarme la vida desarrollando solo en Linux, me di cuenta de que Ctrl+C y Ctrl+V funcionan de una forma muy inteligente.
    Si no hay nada seleccionado, interrumpe el proceso; si hay una selección, copia. Y para pegar simplemente usas Ctrl+V. Muy práctico.

    • En Linux, especialmente en Wayland, incluso se puede copiar sin Ctrl+C.
      Basta con seleccionar el texto y luego pegarlo en otra ventana con el botón central del mouse.
      A esto se le llama Primary Selection, y funciona por separado del portapapeles normal (Ctrl+C/V). En lo personal, este método me parece más cómodo.
  • Lo interesante es que los programas que solemos llamar “emuladores de terminal” en realidad no emulan completamente una terminal.
    Pero ahora sí es posible. Basta con ver cómo emular un VT102 real con MAME.
    También funciona en WSL, y puedes conectar socat con mame para usarlo como si fuera una terminal de hardware real.
    Hace tiempo quise crear un emulador VT220 de alto nivel al que se le agregaran control por mouse y funciones de pegado, y este artículo me hizo volver a pensarlo.

  • Da gusto ver que Konsole de KDE quedó tan arriba.
    Aunque es una terminal de hace décadas, sigue compitiendo de tú a tú en rendimiento con terminales modernas.

    • En el entorno KDE basta con usar la Konsole que ya viene por defecto.
      Se puede personalizar libremente y además es lo bastante rápida.
      Me gusta especialmente que en Dolphin puedes abrir Konsole directamente en la carpeta actual con clic derecho.
      La función de scrollback infinito también es útil. Los logs antiguos no se descartan porque se van rotando automáticamente a archivos.
      Tengo configurado Ctrl+Shift+X como atajo para reiniciar todo y lo uso seguido.
  • Como material relacionado:

  • En la lista falta DECterm.
    Como se puede ver en la documentación general de DECterm, ofrecía la mejor emulación VT220 dentro del X Window System.
    Casi no hay terminales que soporten los modos de caracteres “double wide” o “double high, double wide” de VT100. Esas letras gigantes eran bastante divertidas.

    • xterm sí soporta ese modo. Hace tiempo publiqué algo sobre soporte de emojis relacionado con esto: Can your terminal do emojis?
    • Curiosamente, Windows Terminal soporta DECDHL, pero del lado de Linux casi nadie lo soporta.
  • Durante bastante tiempo usé Alacritty sin problemas, pero hace poco probé Ghostty y me sorprendió.
    Tiene un selector de temas integrado que resulta muy útil cuando trabajas en varias computadoras.
    En general, parece una mejor alternativa que Alacritty. Se nota que sus desarrolladores hicieron un gran trabajo.

    • Lo único que extraño en Ghostty es que todavía no tiene búsqueda en el scrollback.
      Se puede imitar con tmux, pero no es exactamente lo mismo.
    • Alacritty tiene abierto desde 2017 el issue para soportar ligaduras tipográficas (ligatures) y todavía no lo implementan.
      Si Ghostty añadiera soporte para Windows, sería perfecto.
    • Yo daba por hecho que un selector de temas integrado era una función básica, pero al parecer no lo es.
  • Estaría bien que la terminal pudiera consultar si una fuente soporta cierta lista de caracteres.
    Así, los programas TUI que usan Unicode moderno o caracteres de uso privado (por ejemplo, iconos de powerline o font-awesome) podrían mostrar automáticamente un reemplazo cuando no haya soporte.

  • Me da pena que haya tan pocas menciones a Windows Terminal.
    El ecosistema de Linux sigue siendo más rico, pero hoy WT está claramente por encima de muchas terminales de Linux.
    Hace 10 años eso habría sido impensable.

    • En los resultados de la prueba, Windows Terminal (aparece como “terminal.exe”) quedó en 4.º lugar.
      Por cierto, a veces vuelvo a ver este video porque me gusta el easter egg con los nombres ocultos de los desarrolladores.
    • Desde que dejé Windows, lo que más extraño es precisamente esta terminal.
      Las pestañas, los temas y el cambio de nombre de las ventanas son excelentes, y permiten identificar de inmediato para qué sirve cada una.
    • En lo personal también es mi terminal favorita. Ahora uso Ghostty en macOS, pero no llega al nivel de WT.
  • La terminal Foot también es excelente.
    Es solo para Wayland, pero abre rápido y es ligera. Además usa pocos recursos.

    • Yo también uso Foot como terminal principal en este momento.
      Ghostty me gustó, pero para abrir una sola terminal vacía la diferencia de uso de memoria es de más de 10 veces.
  • La terminal predeterminada de macOS quedó en 29.º lugar en estos resultados.

    • Uso Terminal.app de macOS todo el día y nunca he pensado que “necesito una terminal mejor”.
    • En realidad, Apple casi no la ha actualizado desde que la heredó de NeXT a finales de los 90.
      Aun así, en las versiones recientes (macOS 26) ya soporta Powerline y color de 24 bits.
    • Como referencia, la terminal predeterminada de Windows quedó en 4.º lugar.
    • Me parece que en la clasificación se tomaron en cuenta elementos extra que yo no quería.