Beartech Beartech - 5 months ago 34
Ruby Question

Create custom ruby text transformations in Rubymine

I thought this would be something built in and easy to do in Rubymine but I haven't been able to find any references to it let alone possible answers. Maybe I am phrasing my searches all wrong? I want to create a simple ruby script that I can use to transform text in Rubymine. I have to do a lot of snake_case to titleize transformations in my writing of some rails forms. I wish I could highlight some text and right click -> Titleize and have it happen, but Rubymine only does upcase/downcase or snake_case/camelCase conversions. It seems like I should be able to write a simple script like:

require 'active_support'
gets some_string
some_string.titleize


and assign it to a menu item. Any ideas? Right now I open the terminal panel in Rubymine where I have
rails c
running and copy/paste -> .titleize -> copy/paste.

Answer Source

I don't believe there is a way to do this right now using ruby. The use of RubyMine macros is quite limited, think you could take a look to some simple plugin like CamelCase take it apart and see what they are doing, but that would force you to use Java I guess.

However if you are interested only in the specific case of snake_case > Snakecase

For that you could install the CamelCase and record a macro and assign it to a any shortcut you like , the macro itself would do this

ALT+SHIFT+U   > SnakeCase
CTRL+SHIFT+U  > snakecase
ALT+SHIFT+U   > Snakecase

Hope that helps.