Два вида преобразования регистра
Режимы на этой странице делятся на две группы, которые ведут себя совершенно по-разному, и если знать, какая есть какая, сюрпризов не будет.
Текстовые режимы меняют только буквы и не трогают всё остальное: «ВЕРХНИЙ РЕГИСТР», «нижний регистр», «Каждое Слово», «Как в предложении», «чЕрЕдОвАнИе» и «иНВЕРСИЯ». Пробелы, знаки препинания, переносы строк и цифры остаются на своих местах, так что через них можно спокойно пропустить целый документ.
Режимы идентификаторов пересобирают текст в одно имя для использования в коде: camelCase, PascalCase, snake_case, kebab-case и CONSTANT_CASE. Сначала они разбивают ввод на слова, затем соединяют слова разделителем, принятым в соглашении. Знаки препинания и пробелы при этом отбрасываются, поэтому такие режимы рассчитаны на короткие имена и метки, а не на абзацы.
Как определяются слова
В режимах идентификаторов конвертер считает разделителем всё, что не является буквой или цифрой, а также разбивает слово там, где внутри него меняется регистр. Поэтому разный по форме ввод сходится к одному результату:
user_id,user-id,User IDиuserIdв camelCase превращаются вuserId.XMLHttpRequestразбивается на XML, Http, Request и даётxml_http_requestв snake_case иxmlHttpRequestв camelCase.getHTTPResponseв kebab-case становитсяget-http-response.
Цифры прилипают к предшествующим буквам, поэтому version2Beta разбивается на version2 и Beta. Буквы распознаются по категориям Unicode, а значит, кириллица, греческий, польский, вьетнамский и другие алфавиты с заглавными и строчными буквами разбиваются и преобразуются так же, как латиница.
Как выбрать соглашение
Каждое сообщество программистов пришло к своему стилю, и смешение стилей — одна из самых частых придирок на код-ревью:
- camelCase — для переменных и функций в JavaScript, TypeScript, Java и Swift, а также для ключей JSON во многих веб-API.
- PascalCase — для классов, типов и React-компонентов в большинстве языков и для публичных членов в C#.
- snake_case — для переменных, функций и столбцов баз данных в Python, Ruby и SQL.
- CONSTANT_CASE — для констант и переменных окружения, например
MAX_RETRIESилиDATABASE_URL. - kebab-case — для CSS-классов, HTML-атрибутов, имён файлов и путей в URL. Для полноценных слагов URL с удалёнными диакритическими знаками лучше подойдёт генератор слагов.
Кнопка «Использовать как ввод» копирует результат обратно в поле ввода, так что можно выстраивать цепочки преобразований или дорабатывать один текст без копирования и вставки. Учтите, что режимы идентификаторов склеивают всё в одно имя, включая текст на разных строках, поэтому список имён преобразуйте по одному.
Особенности, о которых стоит знать
Конвертер применяет простые и предсказуемые правила, а не руководство по стилю, поэтому некоторые результаты придётся подправить вручную:
- «Каждое Слово» делает заглавной первую букву каждого слова, включая короткие служебные слова — в английском это, например, a, of и the. Издания, следующие стилю AP или Chicago, пишут их со строчной, поэтому в заголовках исправьте их вручную.
- «Каждое Слово» и «Как в предложении» сначала переводят весь текст в нижний регистр. Аббревиатуры и названия брендов теряют заглавные: NASA становится Nasa, iPhone — Iphone, а в режиме «Как в предложении» местоимение I и имена собственные тоже оказываются со строчной буквы.
- «Как в предложении» начинает новое предложение только после точки, вопросительного или восклицательного знака, за которыми идёт пробел. Текст после переноса строки без знака препинания, например пункты списка, сохраняет строчную первую букву.
- Языковые правила не зависят от локали. Немецкая ß в верхнем регистре становится SS, что соответствует норме, но турецкие i с точкой и без точки обрабатываются по общему правилу, так что турецкий текст проверяйте вручную.
- «чЕрЕдОвАнИе» учитывает каждый символ, включая пробелы, поэтому узор может выглядеть неравномерным от слова к слову.
Исправление текста, набранного с включённым Caps Lock
Самое частое применение за пределами программирования — починка текста: письмо, набранное с залипшим Caps Lock, выгрузка таблицы целиком заглавными буквами или заголовки, скопированные из PDF. Одного режима «Как в предложении» обычно хватает почти полностью, потому что он сначала переводит текст в нижний регистр, а затем делает заглавными начала предложений; «иНВЕРСИЯ» — исправление в один клик для текста, набранного одновременно с Caps Lock и Shift, поскольку она меняет регистр каждой буквы на противоположный.
Преобразование происходит мгновенно прямо на странице по мере набора, и ничего не отправляется на сервер, так что инструмент безопасен для конфиденциальных документов и исходного кода. Чтобы проверить длину результата на соответствие лимиту символов, вставьте его в счётчик слов.