Toddler# (plugin) - dwa makra dla Resharpera 6

15.02.2012

Jakiś czas temu przeczytałem wpis Macieja Aniserowicza (tutaj) dotyczący nazewnictwa metod w testach jednostkowych. Podzielam opinię Macieja odnośnie nie używania camel-case’a przy nazywaniu metod – zwłaszcza tych długaśnych. Jednak z czysto pragmatycznych pobudek notorycznie się do tego nie stosuję. O wiele szybciej pisze mi się nazwy metod nie używając “underscore’a”. W mojej subiektywnej ocenie ten znak jest umieszczony w “mało uczęszczanym miejscu klawiatury” (nie żeby nie korzystał z Backspace). Każda podróż palcami w te rejony skutecznie wybija mnie z “flow” i zmusza do opuszczenia bezpiecznej przystani klawiszy F/J. Istnieje również możliwość, że nie potrafię w odpowiedni sposób korzystać z klawiatury wykorzystując wszystkie 10 palców w podobnym stopniu. Możliwe.

Zamiast zbadać swoje manualne możliwości przy pomocy “Mistrza klawiatury” postanowiłem zaoszczędzić trochę czasu i napisałem dwa makra (w formie pluginu) do Resharpera 6:

  • ReplaceSpacesWithUnderscoresMacro -  makro zamienienia we wpisanym tekście spacje na znaki podkreślenia. Przykładowo, wpisując np.: “check for waiting messages in queue returns nothing” dostanę “check_for_waiting_messages_in_queue_returns_nothing”.

  • RemoveSpacesAndCapitalizeFirstLettersMacro – makro usuwa spacje z wpisanego teksu i zamienia pierwsza literę każdego wyrazu na duża literę. Przykładowo, wpisując np.: “user notification service adapter” dostanę “UserNotificationServiceAdapter”.

Pierwszego z tych makr mogę używać, żeby w końcu ładnie nazywać swoje metody testowe, zaś drugie bardzo dobrze sprawdza się podczas tworzenia nazw klas, metod i właściwości. Wystarczy stworzyć własny Live Template w Resharperze aby skorzystać z tych makr.

Binarki: https://bitbucket.org/jdubrownik/toddler/downloads/Toddler100.zip
Źródła: https://bitbucket.org/jdubrownik/toddler/overview