Conversor de maiúsculas e minúsculas

camelCase, snake_case, kebab-case, PascalCase e mais.

Sobre esta ferramenta

Digite ou cole um texto e veja-o em todas as convenções de nomenclatura comuns de uma vez: camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, Title Case, sentence case, dot.case e um slug de URL. Funciona linha por linha, então você pode converter uma lista inteira de nomes.

Como usar

  1. Digite ou cole um nome ou uma frase. Coloque um por linha para converter uma lista inteira.
  2. Todos os estilos de nomenclatura aparecem de uma vez: camelCase, PascalCase, snake_case, kebab-case e mais.
  3. Clique em Copiar no estilo de que você precisa.

Perguntas

Qual caixa devo usar para quê?
Convenções comuns: camelCase para variáveis em JavaScript e Java, PascalCase para classes e componentes React, snake_case para Python e colunas de banco de dados, CONSTANT_CASE para constantes e variáveis de ambiente, kebab-case para URLs, classes CSS e nomes de arquivos.
Como siglas como HTTP são tratadas?
Uma sigla seguida de uma palavra com inicial maiúscula é separada corretamente, então HTTPResponseCode vira http_response_code, assim como httpResponseCode.
O que o slug de URL faz com acentos?
Acentos e letras especiais são convertidos para ASCII simples, então “Café Münster” vira cafe-munster, e tudo o que não for letra, dígito ou hífen é removido.
MAIÚSCULAS mantém minha pontuação?
Não. Cada estilo é montado a partir das palavras encontradas na entrada, então a pontuação é removida e as palavras são unidas com espaços simples: “Hello, world!” vira HELLO WORLD. A ferramenta foi feita para nomes e identificadores, então mude a caixa no seu editor quando a pontuação precisar ficar.
Para que serve o Train-Case?
O Train-Case põe cada palavra em maiúscula e as une com hifens. Seu uso mais conhecido são os nomes de cabeçalhos HTTP, como Content-Type, X-Request-Id ou Accept-Encoding. Os nomes de cabeçalhos não diferenciam maiúsculas de minúsculas, então essa é uma convenção de legibilidade, e não uma exigência do protocolo.
kebab-case é o mesmo que um slug de URL?
Quase. Os dois são palavras em minúsculas unidas por hifens, mas o slug de URL também converte letras acentuadas para ASCII simples e remove tudo o que não for de a a z, dígitos e hifens. O kebab-case mantém letras como é ou ł, o que serve para classes CSS, mas não é o ideal em uma URL.

camelCase, snake_case ou kebab-case: qual é a diferença?

As convenções de nomenclatura só diferem na forma de juntar as palavras. camelCase começa em minúscula e põe em maiúscula cada palavra seguinte (userProfileId), PascalCase põe todas as palavras em maiúscula (UserProfileId), snake_case junta palavras minúsculas com underscores (user_profile_id), CONSTANT_CASE faz o mesmo em maiúsculas (USER_PROFILE_ID) e kebab-case usa hifens (user-profile-id). Train-Case, dot.case e path/case seguem a mesma ideia com palavras capitalizadas e hifenizadas, pontos e barras.

Normalmente é a linguagem ou o formato que decide o estilo, não o gosto pessoal. A maioria das linguagens de programação não permite hifens em identificadores, porque user-id é lido como user menos id, então o kebab-case vive em URLs, nomes de classes CSS, flags de CLI como --dry-run e nomes de arquivos. Pontos aparecem em chaves de configuração como spring.datasource.url e em IDs de mensagens de tradução, enquanto path/case combina com estruturas de pastas e nomes de rotas aninhadas.

Como converter entre convenções de nomenclatura

Converter um nome começa por dividi-lo em palavras. O conversor de maiúsculas e minúsculas divide em espaços, underscores, hifens, pontos, barras e outros sinais de pontuação, em uma letra minúscula ou dígito seguido de uma maiúscula (getUser gera get e user) e dentro de sequências de maiúsculas antes de uma nova palavra (XMLParser gera xml e parser). Cada palavra é passada para minúsculas e depois unida em cada estilo, então max_retry_count, maxRetryCount e Max Retry Count geram os mesmos resultados.

Os dígitos ficam grudados nas letras que vêm antes deles: version2 continua sendo uma palavra, enquanto version2Beta se divide em version2 e beta. Letras de qualquer alfabeto contam como letras, então nomes em polonês ou alemão mantêm os acentos em todos os estilos, menos no slug de URL. Coloque um nome por linha para converter uma lista inteira de uma vez, como colunas de um banco de dados que devem virar campos TypeScript, e copie qualquer estilo como um bloco.

Title Case ou sentence case em títulos

O Title Case põe em maiúscula as palavras principais de um título e mantém em minúscula as palavras funcionais curtas, a não ser que venham no início ou no fim. As palavras em minúscula aqui são a, an, and, as, at, but, by, for, in, of, on, or, the, to, vs e via, então “the state of the art” vira “The State of the Art”. Guias de estilo como o AP e o Chicago divergem em detalhes, como preposições mais longas, então siga o estilo da casa, se houver um.

O sentence case, a opção Primeira letra maiúscula, põe em maiúscula só a primeira palavra, como em “The state of the art”. Muitos design systems, incluindo o Material Design e o Microsoft Writing Style Guide, preferem sentence case para títulos e rótulos de interface, porque é lido mais rápido e se traduz melhor. O conversor de maiúsculas e minúsculas passa todas as palavras para minúsculas antes de aplicar um estilo, então nomes próprios e siglas como API ou GitHub precisam de ajuste manual depois de converter para Primeira letra maiúscula ou Title Case.

Algo não está funcionando ou um resultado parece errado? Relatar um problema com esta ferramenta