Convierte palabras en numeronimos conservando la primera y la ultima letra y sustituyendo el centro por su longitud. Longitud minima ajustable, minusculas opcionales y soporte para frases completas.
internationalization se convierte en i18n, y lo demas tambien. Escribe una palabra o una frase entera. Cada palabra lo bastante larga conserva su primera y ultima letra, y las intermedias se sustituyen por su recuento. Las palabras cortas se dejan intactas para que el resultado siga siendo legible.
–
Como comprime una palabra un numeronimo
El patron i18n
Un numeronimo es una palabra abreviada con un numero. La variante usada en software sigue una sola regla: conservar la primera letra, conservar la ultima y sustituir todo lo intermedio por el recuento de caracteres omitidos. Internationalization tiene dieciocho letras entre la i inicial y la n final, de modo que se convierte en i18n. Accessibility da a11y, localization da l10n y Kubernetes da k8s.
La convencion suele atribuirse a Digital Equipment Corporation en los anos ochenta, donde el personal acortaba asi terminos internos largos, y se extendio por proyectos de codigo abierto que necesitaban nombrar el mismo punado de conceptos incomodos miles de veces. Cuajo porque es mecanica. A diferencia de un acronimo, no hay nada que inventar ni que recordar: dada la palabra completa, todo el mundo deriva la misma abreviatura, y dada la abreviatura con contexto, quien lee suele recuperar la palabra.
Por que importa una longitud minima
La compresion solo compensa en palabras largas. Aplicar la regla a "hello" produce h3o, que ahorra dos caracteres y cuesta toda la capacidad de reconocimiento. Peor aun, los numeronimos cortos chocan constantemente: decenas de palabras comunes de cinco letras comparten la misma inicial, la misma final y la misma longitud, con lo que la abreviatura deja de identificar nada.
Por eso la herramienta tiene una longitud minima, cinco por defecto. Las palabras por debajo del umbral pasan intactas, y eso es lo que permite pegar una frase entera y obtener algo todavia legible. Subir el minimo a ocho o diez produce el estilo conservador que se ve en la practica, donde solo se abrevian los terminos realmente incomodos y la prosa alrededor se deja tal cual.
Donde ayudan y donde estorban
Los numeronimos funcionan bien como jerga entre personas que ya comparten el vocabulario. En un equipo de accesibilidad, a11y se teclea y se lee mas rapido que la palabra completa, y el significado nunca esta en duda. Tambien son buenos identificadores: cortos, seguros en ASCII, inequivocos dentro de un proyecto y lo bastante estables para nombres de paquetes, directorios y claves de configuracion.
Fallan con los recien llegados y con las busquedas. Quien no conoce el termino no puede expandirlo y, a diferencia de un acronimo, no hay mayusculas que avisen de que hay una abreviatura. Los lectores de pantalla pueden pronunciar a11y como una secuencia y no como una palabra, y buscar "localization" en la documentacion no encontrara una pagina que solo escriba l10n. El compromiso practico es el que ya usa la buena documentacion: escribe el termino completo la primera vez, pon el numeronimo entre parentesis y despues usa la forma corta con libertad.
Preguntas frecuentes
Que es un numeronimo?
Una palabra abreviada mediante un numero. En software significa conservar la primera y la ultima letra y sustituir el centro por el recuento de letras omitidas, como en i18n.
Por que internationalization se escribe i18n?
Hay dieciocho letras entre la i inicial y la n final. La misma regla da a11y para accessibility y l10n para localization.
Por que la longitud minima es cinco por defecto?
Por debajo de esa cifra la abreviatura casi no ahorra nada y choca con muchas otras palabras. Cinco mantiene legibles las cortas y sigue acortando las largas.
Admite letras acentuadas y emoji?
Si. El recuento se hace por punto de codigo Unicode, asi que los caracteres acentuados cuentan como una letra y los emoji no se parten en fragmentos.
Que ocurre con la puntuacion?
La puntuacion alrededor de la palabra se conserva y solo se acortan las letras, de modo que "accessibility," mantiene la coma y queda como "a11y,".
Deberia usar numeronimos en el codigo?
Como identificadores estan bien dentro de un proyecto que ya comparte el vocabulario. En documentacion, escribe el termino completo primero e introduce el numeronimo entre parentesis.