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

Daniel Kaplan picture Daniel Kaplan · Jun 27, 2013 · Viewed 37.3k times · Source

At my company we have two different style guides for java vs sql. In java I have a field named historyOfPresentIllness and when i write the sql, I want to name it history_of_present_illness. Is there a keyboard shortcut to switch from one to the other when I have the phrase highlighted? Or perhaps a plugin that can do this?

While I'm asking, I may as well ask if there's a way to turn historyOfPresentIllness to history-of-present-illness. That's from java to clojure style.

Answer

DannyMo picture DannyMo · Jun 27, 2013

I use a plugin called String Manipulation which has the capabilities you're looking for (and more).

Select historyOfPresentIllness and press Alt+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.


A quick search of the plugin repository for "camel" showed a plugin called CamelCase which does exactly what you're looking for with SHIFT+ALT+U by toggling between various formats:

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

However, after trying it out, there seems to be a bug with this plugin which prevents you from undoing any changes. Update: it appears this bug has been fixed for a while now, so the CamelCase plugin is probably the way to go.