Convertidor dot.case
Convertir cualquier frase en dot.case — all lowercase, words joined by dots. Común en claves de config, identificadores de nombre, y claves de traducción i18n.
User Profile Background Color → user.profile.background.color
Convertir cualquier frase en dot.case — all lowercase, words joined by dots. Común en claves de config, identificadores de nombre, y claves de traducción i18n.
User Profile Background Color → user.profile.background.color
dot.case es una convención de nombramiento donde las palabras están escritas en minúsculas y unidas por puntos. Se utiliza pesadamente para claves jerárquicas de configuración, claves de traducción de internacionalización y cualquier contexto donde el punto comunica una agrupación lógica.
a diferencia caso_serpiente o estuche-kebab, los puntos en el punto.case generalmente llevan significado semántico - ellos señalan el espacio de nombres o límites jerarquizados, no sólo separadores de palabras.
nav.home.label, checkout.cart.empty.message, errors.validation.emailLas bibliotecas de traducción (i18next, vue-i18n, reaccion-intl) usan teclas separadas para navegar por un objeto de traducción anidado.
botas de primavera application.properties, log4j config, y muchas herramientas de Unix más antiguas utilizan dot.case para configuración jerárquica: spring.datasource.url, logging.level.root.
Los sistemas RBAC y ABAC a menudo codifican permisos como cadenas de dot.case: user.read, billing.invoice.write, admin.users.delete. Los puntos hacen obvia la jerarquía.
Mixpanel, Segment y herramientas de análisis similares utilizan comúnmente los nombres de eventos de puntos.case: user.signed_up, checkout.completed, video.playback.started.
La denominación de paquetes DNS inverso utiliza dot.case: com.example.app, org.apache.commons. Java, Android, y los identificadores de paquetes de macOS todos confían en esta convención.
El convertidor de la caja de puntos funciona aplicando una transformación de dos etapas a la cadena de entrada. Primero, baja todos los caracteres alfabéticos usando el plegado completo de la caja Unicode (no sólo ASCII), que maneja letras acentuadas (por ejemplo, É → é). Segundo, reemplaza cada secuencia de caracteres blancos (espacios, pestañas, nuevas líneas) con un solo punto (.). Los caracteres no alfanuméricos que no sean el espacio blanco se conservan en sus posiciones originales, lo que significa puntuación, números y símbolos permanecen inalterados. no intento de dividir camelloCase o PascalCase; sólo funciona en fichas delimitadas por el espacio blanco. Esto asegura una salida determinista y predecible: el resultado es siempre una concatenación de fichas de baja reducidas unidas por puntos, sin modificación silenciosa de acrónimos o números.
Así es como esta herramienta se compara con otras dos formas comunes de producir dot.case.
| esta herramienta | comando sed | Python de una sola línea | |
|---|---|---|---|
| Manejo de minúsculas | Plegado completo de caja Unicode | tr '[:upper:]' '[:lower:]' (ASCII sólo a menos que locale set) | str.lower() (Unicode completo) |
| Reducción de espacios en blanco | Reemplaza cualquier secuencia de espacio blanco con un solo punto | Requiere dos sustituciones: s/[[:espacio:]]+/./g y s/^\.//; s/\.$// | re.sub(r'\s+', '.', s).strip('.') |
| Preservación de espacios no blancos | Todos los caracteres que no sean espacios en blanco se mantienen intactos. | Lo mismo, pero cuidado con el escape de expresiones regulares. | Lo mismo, usando el patrón re.sub |
La convención de dot.case surgió naturalmente de los lenguajes de programación temprana que utilizaban la notación de puntos para el acceso a la propiedad de objetos (por ejemplo, JavaScript, Python). Su adopción para las teclas de configuración fue popularizada por marcos como Django (settings.py) y Ruby on Rails (YAML locale files). No hay un inventor único; más bien, evolucionó como una manera legible para representar los lenguajes jerárquicos de texto clarificadores evitando los espacios de caracteres
A menudo son intercambiables para caminos jerárquicos. Las puntos son más comunes para identificadores y claves de configuración en código; las pestañas son más comunes para las rutas de sistema de archivos y segmentos de URL. Elija basado en contexto, no en ambos o.
Sí — la mayoría de los idiomas utilizan puntos para el acceso a la propiedad (obj.prop), así que dot.case es para cadenas, no identificadores. Utilízalo como el valor de una variable de cadena, no como el nombre de variable en sí.
El convertidor los tira. ".user.name." se convierte en "user.name". Si necesita el punto de referencia para una convención relativa-pata o de archivo oculto, añádelo manualmente.
Posible pero inusual - la mayoría de los sistemas operativos tratan el último punto como el separador de extensión, por lo que my.config.file.json se interpreta como un archivo JSON llamado my.config.file. Utilice kebab-case para nombres de archivo a menos que su herramienta espere explícitamente puntos.