Dans mon entreprise, nous avons deux guides de style différents pour Java vs sql. Dans Java j'ai un champ nommé historyOfPresentIllness
et quand j'écris le sql, je veux le nommer history_of_present_illness
. Existe-t-il un raccourci clavier pour passer de l'un à l'autre lorsque la phrase est en surbrillance? Ou peut-être un plugin qui peut le faire?
Pendant que je demande, je peux tout aussi bien demander s'il existe un moyen de transformer historyOfPresentIllness
en history-of-present-illness
. C'est de Java au style clojure.
Très simple, appuyez sur Clr + F
Pour ouvrir Rechercher/Remplacer panneau et vérifier [✓] Regex copier le regex passé
Rechercher:[_]{1,1}([a-z])
Remplacer:\U$1
Appuyez sur le bouton [Remplacer tout], profitez
Merci @piotrek pour _some_awe_var
À _someAweVar
Utilisez Rechercher: (\w)[_]{1,1}([a-z])
Remplacer: $1\U$2
La réponse ci-dessus est presque parfaite, mais notez que cela va changer des variables comme _something
ou this._something
en Something
et this.Something
. Je ne voulais pas cela dans mon cas, car le premier _ était utilisé pour désigner les variables "privées" (ancien projet JS). J'ai légèrement modifié cette approche:
Rechercher: (\ w) [_] {1,1} ([a-z])
Remplacer: $ 1\U $ 2
Cela garantira que seules les variables avec _
est au milieu sera affecté.
(\w)[_]{1,1}([a-z])
$1\U$2
([A-Z])
\_\L$1
Si vous êtes d'accord avec PyCharm refactorisant également les usages, lancez l'outil "Renommer" (Refactor> Rename). La fenêtre apparaît avec une liste déroulante et vous devriez voir la version snake_case du texte dans la liste (vous pouvez ouvrir la fenêtre et basculer vers snake_case avec des touches pour que cela puisse être assez rapide).