В Intellij, как мне переключаться между верблюжьим футляром и подчеркиванием?
В моей компании у нас есть два разных руководства по стилю для java vs sql. В java у меня есть поле с именем historyOfPresentIllness
, и когда я пишу sql, я хочу назвать его history_of_present_illness
. Есть ли сочетание клавиш для переключения с одного на другое, когда у меня выделена фраза? Или возможно плагин, который может это сделать?
Пока я спрашиваю, я могу спросить, есть ли способ превратить historyOfPresentIllness
в history-of-present-illness
. Это от java до clojure.
Ответы
Ответ 1
Я использую плагин под названием String Manipulation, который обладает возможностями, которые вы ищете (и не только).
Выберите historyOfPresentIllness
и нажмите Alt + M, чтобы вызвать меню плагина, затем нажмите:
- 5 - в snake_case (или в camelCase), который преобразуется в
history_of_present_illness
- 6 - в дефисе (или в snake_case), который преобразуется в
history-of-present-illness
Чтобы сделать это проще, вы можете настроить ярлык на File | Settings | Keymap
File | Settings | Keymap
File | Settings | Keymap
.
Быстрый поиск в хранилище плагинов для "верблюда" показал, что плагин CamelCase
делает именно то, что вы ищете с SHIFT + ALT + U, переключаясь между различными форматами: historyOfPresentIllness
→ history_of_present_illness
→ HISTORY_OF_PRESENT_ILLNESS
→ HistoryOfPresentIllness
→ historyOfPresentIllness
Однако, после того, как вы попробовали это, похоже, есть ошибка с этим плагином, которая не позволяет вам отменить любые изменения. Обновление: похоже, эта ошибка уже давно исправлена, поэтому плагин CamelCase, вероятно, поможет.
Ответ 2
Очень просто нажать Clr + F
, чтобы открыть панель Найти/заменить и проверить [✓] Регулярное выражение копировать заново
Найти: [_]{1,1}([a-z])
Заменить: \U$1
Нажмите кнопку [Заменить все], наслаждайтесь
Ответ 3
Ответ выше почти идеален, но учтите, что он изменит переменные типа _something
или this._something
на Something
и this.Something
. Я не хотел этого в моем случае, так как ведущий _ использовался для обозначения "закрытых" переменных (старый проект JS). Я немного изменил этот подход:
Найти: (\ w) [_] {1,1} ([az])
Заменить: $ 1\U $ 2
Это гарантирует, что будут затронуты только переменные с _
.
Ответ 4
Если у вас все в порядке с PyCharm и рефакторинг использования, запустите инструмент "Переименовать" (Refactor> Rename). Появляется окно с выпадающим списком, и вы должны увидеть версию текста snake_case в списке (вы можете открыть окно и переключиться на snake_case с помощью нажатий клавиш, чтобы он мог быть довольно быстрым).
Ответ 5
От snake_case до CamelCase
- Найти:
(\w)[_]{1,1}([az])
- Заменить:
$1\U$2
- Настройки:
От CamelCase до snake_case:
- Найти:
([AZ])
- Заменить:
\_\L$1
- Настройки: