Acerca de esta herramienta
Cómo se divide el texto en palabras
Todos los estilos de identificadores empiezan igual: la entrada se corta en palabras, y las palabras se vuelven a unir con otro separador y otro uso de mayúsculas. Todo lo que no es una letra o un dígito separa palabras: espacios, signos de puntuación, guiones, guiones bajos, puntos y barras. Dentro de una secuencia de letras, una minúscula o un dígito seguidos de una mayúscula inician una palabra nueva, así que fooBar se lee como foo y Bar. Los caracteres invisibles dentro de una palabra, como el guion opcional (soft hyphen) que usan las páginas web para partir las palabras largas, se ignoran en lugar de leerse como separador.
Las siglas se mantienen juntas. En una secuencia de mayúsculas, la última inicia una palabra nueva cuando le sigue una minúscula, así que HTTPServer se convierte en http_server y parseXMLFile en parse_xml_file. Los dígitos quedan unidos a las letras que los preceden: sha256Hash se convierte en sha256_hash. Un apóstrofo entre dos letras se elimina, así que don't da dont.
Los estilos y dónde se usan
camelCase es la convención para variables y funciones en JavaScript, Java y Swift. PascalCase da nombre a clases y tipos en muchos lenguajes, y a los identificadores exportados en Go. snake_case es el estilo de las variables en Python, Ruby y Rust, y es habitual en los nombres de columnas SQL. SCREAMING_SNAKE_CASE se usa para constantes y variables de entorno. kebab-case aparece en URLs, nombres de clases CSS y opciones de línea de comandos, y Train-Case en nombres de cabeceras HTTP como Content-Type.
Tipo Título pone en mayúscula la inicial de cada palabra. No aplica las reglas de las guías de estilo que dejan en minúscula palabras cortas como «of» o «and» en inglés, porque esas reglas cambian de una guía a otra y de un idioma a otro. Tipo oración lo pone todo en minúsculas y después pone en mayúscula la primera letra del texto, la de cada línea y la que sigue a un punto, un signo de cierre de interrogación o de exclamación o unos puntos suspensivos seguidos de un espacio. No sabe distinguir un nombre propio o una abreviatura de una palabra corriente, así que Ask Dr. Smith se convierte en Ask dr. Smith: revisa después los nombres propios y las siglas.
El slug para URL
El slug es el texto reducido a letras ASCII minúsculas y dígitos unidos por guiones simples. Las tildes se eliminan descomponiendo cada letra con la forma de normalización Unicode NFKD y descartando las marcas combinables, así que é se convierte en e. El mismo paso convierte las ligaduras y las letras de ancho completo en letras normales, así que el carácter único fi se convierte en fi. Las letras que no se descomponen se transcriben: ß se convierte en ss, æ en ae y ø en o. Los caracteres sin equivalente ASCII, como las letras chinas o árabes, se omiten.
Los demás estilos mantienen tal cual las letras con tilde y las no latinas. Las mayúsculas y minúsculas siguen las correspondencias Unicode predeterminadas y no las reglas del idioma de tu navegador, así que el resultado no cambia según el idioma que tenga configurado. Una consecuencia es que ß en mayúsculas se escribe SS, y que la ı turca sin punto y la İ con punto no se emparejan como lo hace la ortografía turca.