Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

In Intellij, how do I toggle between camel case and underscore spaced?

People also ask

How do you turn a camel case into a snake case?

replaceFirst() method to convert the given string from snake case to camel case. First, capitalize the first letter of the string. Run a loop till the string contains underscore (_). Replace the first occurrence of a letter that present after the underscore to the capitalized form of the next letter of the underscore.

How do I navigate through methods in Intellij?

To navigate backwards, press Ctrl+Alt+Left . To navigate forward, press Ctrl+Alt+Right . To navigate to the last edited location, press Ctrl+Shift+Backspace . To find the current caret location in the editor, press Ctrl+M .

How do I change from lowercase to uppercase in Intellij?

To toggle between upper case and lower case Select text fragment, or just place the caret at the line you want to change case in. Press Ctrl+Shift+U or choose Edit | Toggle Case in the main menu . CamelCase names are converted to the lower case.

What is camel case letters?

What is CamelCase? CamelCase is a way to separate the words in a phrase by making the first letter of each word capitalized and not using spaces. It is commonly used in web URLs, programming and computer naming conventions. It is named after camels because the capital letters resemble the humps on a camel's back.


Two plugins offer this feature:

I use a plugin called String Manipulation which does what you need (and more).

Select historyOfPresentIllness and press Alt / option+M to bring up the plugin menu, then press:

  • 5 - To snake_case (or to camelCase) which converts to history_of_present_illness
  • 6 - To hyphen-case (or to snake_case) which converts to history-of-present-illness

To make this easier, you could set up a shortcut at File | Settings | Keymap.


There also is the [CamelCase][3] plugin.

SHIFT+Alt / option+U toggles the selection between formats:

historyOfPresentIllness --> history_of_present_illness --> HISTORY_OF_PRESENT_ILLNESS --> HistoryOfPresentIllness --> historyOfPresentIllness

You can also undo your changes (now that a bug in the plugin got fixed).


Very simple press Clr + F to open Find/Replace panel and check [✓] Regex copy past regex

Find: [_]{1,1}([a-z])

Replace: \U$1

Press [Replace all] button, Enjoy


Thanks @piotrek for _some_awe_var to _someAweVar

Use Find: (\w)[_]{1,1}([a-z])
Replace: $1\U$2


From snake_case to CamelCase

  • Find: (\w)[_]{1,1}([a-z])
  • Replace: $1\U$2
  • Settings:
    • Match Case
    • Regex

From CamelCase to snake_case:

  • Find: ([A-Z])
  • Replace: \_\L$1
  • Settings:
    • Match Case
    • Regex

If you are OK with PyCharm also refactoring usages, launch the "Rename" tool (Refactor > Rename). The window pops up with drop down list and you should see the snake_case version of the text in the list (you can open the window and switch to the snake_case with key-strokes so it can be pretty fast).


Answer above is almost perfect, but note that it will change variables like _something or this._something into Something and this.Something. I didn't want that in my case, as leading _ was used to denote "private" variables (old JS project). I slightly modified this approach:

Find: (\w)[_]{1,1}([a-z])

Replace: $1\U$2

This will ensure that only variables with _ is in the middle will be affected.