En mi empresa tenemos dos guías de estilo diferentes para java vs sql. En java tengo un campo nombrado historyOfPresentIllness
y cuando escribo el sql, quiero nombrarlo history_of_present_illness
. ¿Existe un método abreviado de teclado para cambiar de uno a otro cuando tengo la frase resaltada? ¿O quizás un complemento que pueda hacer esto?
Mientras que estoy pidiendo, puedo también preguntar si hay una manera de convertir historyOfPresentIllness
a history-of-present-illness
. Eso es del estilo java al clojure.
fuente
Edit > Macros > Start recording macro
y luego agregar una asignación de teclas simple para su macroSettings > Keymap > Macros > YourMacro (right-click > Add Keyboard Shortcut)
5
deSCREAMING_SNAKE_CASE
yJ
es paraTrim all spaces
. Con Mac OS X 10.10.5, PhpStorm 10.0.1, Manipulación de cadenas 4.1.135.445.1.Presione muy simple
Clr + F
para abrir el panel Buscar / Reemplazar y verificar [✓] Regex copy pasado regexEncontrar:
[_]{1,1}([a-z])
Reemplazar:
\U$1
Presione el botón [Reemplazar todo], disfrute
Gracias a @piotrek
_some_awe_var
a_someAweVar
Usar Buscar:
(\w)[_]{1,1}([a-z])
Reemplazar:
$1\U$2
fuente
([A-Z]{1,1})
y reemplace por_\l$1
, con las opciones de caso Regex y Match activadas._
y esto los hará comenzar en mayúsculas.(\w)[_]{1,1}([a-z])
Reemplazar:$1\U$2
De snake_case a CamelCase
(\w)[_]{1,1}([a-z])
$1\U$2
De CamelCase a snake_case:
([A-Z])
\_\L$1
fuente
La respuesta anterior es casi perfecta, pero tenga en cuenta que cambiará variables como
_something
othis._something
enSomething
ythis.Something
. No quería eso en mi caso, ya que el _ principal se usaba para denotar variables "privadas" (antiguo proyecto JS). Modifiqué ligeramente este enfoque:Encontrar: (\ w) [_] {1,1} ([az])
Reemplazar: $ 1 \ U $ 2
Esto asegurará que solo las variables con
_
está en el medio se verán afectadas.fuente
Si está de acuerdo con que PyCharm también refactorice los usos, inicie la herramienta "Cambiar nombre" (Refactorizar> Cambiar nombre). La ventana aparece con una lista desplegable y debería ver la versión snake_case del texto en la lista (puede abrir la ventana y cambiar a snake_case con pulsaciones de teclas para que pueda ser bastante rápido).
fuente