Coraz częściej wykonuję zamiany określonych wyrażeń regularnych i różnych transformacji tekstu. Robię to, gdy potrzebuję krok po kroku edytorem, ale myślę, że nastał czas, gdy wypadałoby nauczyć się jakiegoś względnie łatwego języka programowania i móc ustawić kilkanaście operacji zamiany naraz, zwłaszcza, że transformacje, które robię są zwykle identyczne.
Samo programowanie zawodowo nie jest mi potrzebne, ale jako amator chętnie uprościłbym sobie to czy owo. Na naukę języka czasu w zasadzie nie mam (tak, żeby np. poświęcić bite parę miesięcy), więc byłaby ona realizowana „z doskoku” w wolnej chwili. Uczyłbym się tych aspektów, co do których miałbym pomysł na ich praktyczne wykorzystanie w automatyzacji codziennych pecetowych czynności.
Przykładowym zadaniem, które chciałbym zaprogramować wyglądałoby tak: [ w plik.txt znajdź nawiasy i wszystko, co jest w tym pliku w nawiasach wraz z nimi zapisz w nowym pliku, który utworzysz i nazwiesz nawiasy.txt Natomiast, to co jest poza nawiasami zapisz w postaci nowo utworzonego pliku o nazwie poza_nawiasami.txt Następnie w pliku nawiasy.txt zamień każde słowo „drzwi” na słowo wrota, a w każdym słowie zaczynającym się na „a” zamień pierwszą literę na „A”, a każde słowo zaczynające się na „c” zamień na słowo „ciupaga”, każde słowo na „d:” zamień na aktualną datę, a potem policz czy liczba liter „g” w pliku, jest równa liczbie liter „h” i jeśli nie jest, to zapisz tę informację w pliku o nazwie log.txt. W pliku poza_nawiasami.txt wykonaj także 10 różnych zdefiniowanych zamian z wykorzystaniem regexu, a gdy to wszystko zrobisz wyświetl komunikat: „udało się”]
W związku z tym, że jestem amatorem, wydaje mi się nie potrzebuję jakichś trudnych, profesjonalnych języków w stylu C, C++ czy Java. Z tego, co sam czytałem w zwrotach z wyszukiwarki, wartym zainteresowania wydał mi się Python, ale gdy przeczytałem, że akurat jest zmiana z wersji 2 na 3 i do wyboru jest nauka na czymś, co parę lat będzie nieaktualne, albo nauka czegoś, co na razie nie ma bibliotek (w tym py2exe), jest nowe i niekompatybilne z poprzednim. Zapewne też, jeśli popełnię błąd to na forum znajdą mi go prędzej w wersji 2, bo w niej siedzą z oczywistej przyczyny długoletni wyjadacze. Podobnie literatura (w tym ceniona książka na wikibooks: Zanurkuj w Pythonie) jest o wersji 2. Dodatkowo przeczytałem, że trzeba operować w Windows w konsoli … Ja bym wolał pliki uruchamiane 2 klikiem, jak np. .ahk, w którym napisałem parę prostych skryptów. Wadą .ahk jest to, że nie wspiera UTF 8, ani 64 bitów. Są co prawda forki, na forum, ale nie wiadomo ile ludziom je tworzącym starczy zapału i czy będą potem kompatybilne, gdyby wyszła nowa wersja Autohotkeya. Minusem AHK jest też brak polskiego forum i polskiej dokumentacji. Niby rozumiem angielski, ale po polsku komunikacja jest swobodniejsza i szybsza. Poza tym możliwości .ahk choć na razie by mi wystarczyły, nie wydają się bardzo perspektywiczne, gdybym potrzebował, czegoś o czym na razie jeszcze nie myślę. Wszystko ma plusy i minusy. Postanowiłem opisać swoje potrzeby i możliwości zapytać o radę bardziej doświadczonych.
Jeśli ktoś ma doświadczenie, to proszę o rekomendację i przyznanie polecanemu przez siebie językowi od 1 do 4 punktów w następujących kategoriach:
Łatwość
Dostępność materiałów dla początkującego nie tylko w danym języku, ale ogólnie w programowaniu
Wsparcie i wyrozumiałość społeczności
Możliwości
Do tego poproszę o główną wadę rekomendowanego języka.
Dzięki za przeczytanie postu :-)