Edytory dla Pythona, Ruby, PHP

Opublikowane przez Jarosław Zabiełło Sat, 11 Feb 2006 23:17:00 GMT

Osoby zaczynające pracę z językiem Python, Ruby czy PHP często pytają się na grupach dyskusyjnych na temat edytorów zalecanych do pracy. Istnieją dwie szkoły, ci którym zależy na minimalnych wymaganiach pamięci i procesora oraz ci, którzy chcieliby aby edytor nie tylko kolorował składnię, ale także podpowiadał kod, uzupełniał składnię, miał wbudowany debugger itp.

Edytory tekstowe (nie IDE):

  • SciTE – łatwy w obsłudze, kolorowanie b. wielu języków
  • Vim – powszechny na każdym linuksie, jest wersja dla win32. B. szybki, doskonały do obsługi wielkich plików, niezbyt intuicyjna obsługa, np. kto by wpadł na pomysł aby wyjść z edytora za pomocą kombinacji: Esc + :q! (klawisz Escape, potem znak cudzysłowa, małe q i znak wykrzyknika)
  • Notepad++ – prosta, intuicyjna obsługa, po instalacji podmienia dla Internet Explorera idiotycznego Notatnika do podglądu źródeł stron html, warto instalować choćby dla tej jednej cechy i wymiany starego Notatnika.
  • JEdit – napisany w Javie, mnóstwo pluginów
  • XEmacs – kompletnie nieintuicyjna obsługa, ten edytor zupełnie w niczym nie przypomina skrótów klawiszy z innych programów, ale jest b. potężny. Jak ktoś już się przekatuje i go nauczy, to podobno jest to doskonałe narzędzie. Mnie nigdy nie starczyło cierpliwości aby go opanować. Wolę już edytor Vi.

Edytory IDE – Python

Użytkownikom win32 polecam instalację ActivePython zamiast instalacji na stronie główej Pythona. Do Pythona istnieje mnóstwo niezłych edytorów tekstowych jak i edytorów IDE. Moimi ulubionymi są:

  • Eclipse + pyDEV – chyba najlepsza opcja. Edytor Eclipse jest napisany w Javie i wymaga trochę pamięci, ale jest b. dobry. Posiada intuicyjny interfejs, mnóstwo pluginów dających spójne środowisko do pracy z javą, pythonem, ruby i php. pyDEV z zintegrowanym pakietem pyLint nie tylko podpowiada kod, ale także ma możliwość wyłapania nieużytej zmiennej, czy brak zgodności stylu programowania z zaleceniem PEP8 itp. Oczywiście jest też zintegrowany debugger.
  • PythonWin – standardowo instalowany w ActivePython. Jest znacznie szybszy i lżejszy od Eclipse, bo jest napisany w języku C. Ma świetny debugger, wbudowaną konsolę, podgląd obiektów COM. Jedyną jego wadą jest brak obsługi utf-8. Zaletą jest też to, że nadaje się do szybkiej edycji pojedyńczych plików (Eclipse wymaga tworzenia projektu, co często jest b. niewygodne). PythonWin ma także ulepszoną konsolę, bo pełnoekranową. Łatwiej w nim szybko zaznaczyć fragment poprzedniej komendy i uzupełnić.
  • SPE – edytor napisany w Pythonie z wykorzystaniem biblioteki wxPython. Ma unikalne, b. ładne kolorowe zakładki (umożliwia lepsze wyświetlanie podglądu metod i atrybutów klas). Wbudowany debugger, listę Todo, wyszukiwanie po wielu plikach i co ważniejsze: lepiej podpowiada kod niż np. PythonWin.
  • Eric – napisany w Pythonie z użyciem biblioteki PyQT. Ma dużo możliwości, wspomaganie tworzenia unittestów, refactoring, debugger itp. Obsługuje nie tylko Pythona ale i Rubiego.
  • Boa Constructor – ten edytor może zainteresować osoby piszące aplikacje oparte na wxPython bo posiada wbudowane wizualne wspomaganie tego procesu. Wzorowany jest na Delphi.
  • Komodo: Kombajn podobnie jak Eclipse. Występuje w wersji IDE (płatnej, ale licencja od razu obejmuje Windows, Linux i Mac OS X) i Edit (bezpłatnej). Ma świetny debuger do Pythona. Jest szybszy od Eclipse i obsługuje dobrze Pythona, Rubiego, PHP, C++ i inne języki (nawet szablony Django). Bardzo dobrze podpowiada kod HTML, CSS, zamyka tagi HTML podobnie jak Dreamweaver. Niestety, podpowiadanie kodu pozbawione jest na razie wyświetlania zintegrowanej dokumentacji (docstringów dla Pythona czy rdoc dla Rubiego, wyświetlana jest tylko lista metod).
  • WingIDE – wymieniam go na końcu bo jest płatny. Doskonale (zdecydownie najlepiej z wszystkich) podpowiada kod, posiada możliwość edycji w Zope, doskonały debugger.

Edytory IDE – Ruby

Do Rubiego istnieje też sporo niezłych edytorów, choć nie aż tyle co do Pythona.

  • Netbeans IDE 6.x ma zdecydowanie najlepsze podpowiadanie składni do Rubiego. Najlepszy IDE do Rubiego i Rails obok Aptana IDE.
  • Aptana IDE+Rails (RadRails został przejęty) to nic innego jak Eclipse dostosowany do pracy z Ruby on Rails. Posiada wszystkie zalety Eclipse, np. po dodaniu pluginów ma dobre wsparcie dla innych języków, np. Pythona. Od chwili wchłonięcia RadRails przez Aptanę, posiada świetne dodatkowe mocne wsparcie dla kodu HTML, CSS, JavaScript.
  • Arachno IDE – bardzo ładny i szybki. Może kolorować kod (nie tylko samego Rubiego ale także szablonów ERb, czyli nadaje się dobrze do Railsów) podobnie jak TextMate, ma wbudowany debugger, generowanie dokumentacji RDoc dla projektu, przeglądarka klas Rubiego i zainstalowanych gemsów. Niestety jest płatny i bieżąca wersja nie obsługuje jeszcze utf-8.
  • TextMate – działa tylko z systemem OS-X, czyli wymaga Macintosha. Ale jest to ulubiony edytor developerów Railsów. Sam edytor jest niestety płatny. Ma bardzo rozbudowane makra (snipety) przyśpieszające wprowadzanie kodu, ale ma beznadziejnie słabe podpowiadanie kodu, nie rozwija metod do bibliotek wbudowanych Rubiego, dokumentacji RDOC w ogóle nie ma scalonej z podpowiedziami do kodu. Do Pythona jest jeszcze gorzej. Ale edytor jest szybki, lekki i ma ładne kolorowanie wielu języków.
  • RDE czyli Ruby Development Environmnent. Edytor jest b. szybki i pomocny jak ktoś chce pisać kod w czystym Ruby.

Edytory IDEPHP

Do PHP istnieje sporo edytorów, ale moim zdaniem większość to badziewie. Sam PHP jest językiem który bardzo utrudnia napisanie na niego dobrego debuggera. Właściwie w nic dobrego tu nie ma poza komercyjnym Zendem. Ale gdybym miał wybierać, to wybrałbym:

  • Eclipse + plugin phpeclipse – po pierwsze jest darmowy, po drugie doskonale zarządza kodem PHP i koloruje szablony Smarty. Po trzecie, doskonale współpracuje z SVN. Miałem okazję sprawdzić nowy Zend Studio 5.1. Mimo, że lepiej podpowiada kod, to nie koloruje Smartów i kiepsko współpracuje z SVN, beznadziejnie wręcz.
  • Zend Studio – komercyjny IDE stworzony przez twórców PHP. Najlepiej ze wszystkich podpowiada kod (lepiej od Eclipse) Niestety nie potrafi kolorować kodu popularnych szablonów Smarty (Eclipse to potrafi!) Szybkość ta sama co Eclipse, wymagania co do pamięci – też.
  • Macromedia Dreamwever 8 – komercyjny, ale nieźle koloruje i podpowiada kod. Najnowsza wersja Dreamweawera ma sporo usprawnień, np. w końcu bada końce bloków (klamr). Dreamweawer jest też oczywście szybszy od Zend Studio i Eclipse bo jest napisany w języku C.

Niestety edytory PHP mają fatalne możliwości debugowania kodu w stosunku do tego, co można spotkać dla Pythona i Ruby. Do szybkiego testowania kodu PHP, najlepiej użyć SciTE. Można mu ustawić opcję aby po wciśnięciu klawisza F5 natychmiast generował wynik bez żadnego pośrednictwa serwera www.

Posted in , , ,  | Tagi , , ,  | 14 comments

Comments

  1. Avatar bobbie powiedział about 10 hours later:

    Zainstalowałem Arachno Ruby, ale po pierwsze ne obsługuje Unicode, po drugie nie podoba mi się, po trzecie bardziej podoba mi się jEdit, a po czwarte edytor za prawie sto dolców bez systemu pomocy to jakaś paranoja.

  2. Avatar Jarosław Zabiełło powiedział about 17 hours later:

    Kolejna wersja Arachno ma już obsługiwać utf-8. Edytor nie kosztuje $100 ale $29 dla wersji personal i funkcjonalnie niczym nie różni się od wersji pro za $89 (licencja obejmuje 3 letni support). Help faktycznie nie jest gotowy. Kolorowanie plików .rb i .rhtml Arachno ma znacznie lepsze od JEdit i jest też szybszy. JEdit nie ma takiego podglądu gemsów i klas, nie ma też debuggera. Ma za to możliwość zdalnej pracy z plikami. No coż, nie ma ideału.

  3. Avatar bobbie powiedział about 17 hours later:

    No dobra, ale licencja personal nie pozwala używać Arachno w projektach komercyjnych.

  4. Avatar Jarosław Zabiełło powiedział about 19 hours later:

    Właściwie to w ELUA dostępnej z programem kompletnie nic na ten temat nie ma. Nie ma też nic na www. Dokumentacja do programu też nie istnieje. Nie widzę więc żadnej podstawy do twierdzenia, że mając licencję personal, nie wolno mi stworzyć nic komercyjnego.

  5. Avatar bobbie powiedział 1 day later:

    U góry strony z zakupami jest taka notka: “We offer two different versions of all of our products. A private version that is restricted to non commerical private use only and a commerical version.”

    Z tym że skoro w licencji nic nie ma na ten temat, to masz rację, że w tej sytuacji użytkownik nie jest ograniczony obszarem zastosowań programu.

    No cóż, potestuję go jeszcze. Nie każda miłość musi być od pierwszego wejrzenia.

  6. Avatar bobbie powiedział 1 day later:

    OK, poużywałem i niniejszym odszczekuję, com napisał w pierwszym komentarzu. Na razie (poza wspomnianym brakiem utf) zostały mi dwie nierozwiązane kwestie.

    1. Jak włączyć autouzupełnianie klas rubiego, np. piszę “Time.”, wciskam Ctrl+Space i dostaję wszystkie metody. Działa to w tej chwili tylko dla moich klas w pliku.

    2. Gdzie się ustawia dynamiczną zmianę tabulatora na spacje. Znalazłem tylko w opcjach zmianę podczas otwierania/zapisywania pliku.

  7. Avatar splatch powiedział 4 days later:

    http://php-editors.com/ skorzystaj z wyszukiwarki. Jeśli idzie o debugger można skonfigurować sobie z powodzeniem pod eclipse-m DBG.. kwestia wytrwałości.

  8. Avatar Andrzej K. powiedział 5 days later:

    RadRails nie działa zbyt stabilnie pod Ubuntu Breezy. Wersja 0.5.3 wysypuje mi się dosyć regularnie.

  9. Avatar Adamh powiedział 7 days later:

    To, ze sie wysypuje znaczy, ze cos jest nie tak z konfiguracja systemu uzywam 0.5.3 pod SUSE’em (java 1.5) i nie mam najmniejszych problemow. Sprawdz logi tam zapewne znajdziesz rozwiazanie.

  10. Avatar Adamh powiedział 7 days later:

    Co do edytorow PHP to dodalbym jeszcze: win: PHPDesigner, Maguma Open Studio

    Linux – Quanta (jeden z moich ulubionych), Bluefish i pakiet KDevelop

    no-arch – Trustudio i swietny phpEclipse (obydwa oparte o Eclipse) jEdit jest bardzo niedocenianym narzedziem po instalacji kilku pluginow staje sie naprawde potezny.

    Jesli ktos chcialby uzywac Vima ale nie czuje sie dobrze w konsoli polecam Cream (dostepny rowniez pod win)

    Ruby (bez wsparcia Rails) – Mondrian-ide (napisany w Rubym) PS wszystkie wymienione sa darmowe.

  11. Avatar Tomasz Czubinski powiedział about 1 month later:

    Myslę że zainteresuje was ten edytor Scribes Jest to wersja jeszcze pełna bugów, ale można swobodnie już korzystać z niego.

    Twórca Scribes chce aby był to nieskomplikowany edytor, psychologicznie naturalany i odpowiedni dla programisty. Posiada wiele ciekawych funkcji, jak dla mnie b. przydatnych.

    Edytor bez wodotrysków i dla osób nie korzystajacych z wielkoplatformowych IDE.

    Główne cechy: automatyczne dokańczanie słów, dołaczanie nawiasów,klamer itd, po zaznaczenie tekstu/bloku, automatyczne otaczanie nawiasami klamrami itd. snippety, bookmarki, automatyczne zapisywanie.

    Troche w nim z idei Textmate.

  12. Avatar Wojciech Bednarski powiedział 4 months later:

    Od kilku dni używam Textmate, ogólnie fajny edytorek.

    Aktualnie jestem na etapie twożenia własnych bundle.

    Jedyna rzecz jaka mi się nie podoba w nim to brak możliwości zmiany escape na inny klawisz…

  13. Avatar kamil powiedział about 1 year later:

    nie chodzi mi SPE pod ubuntu 7.10.. i co zorbic. eric mi sie nie podoba.:(

  14. Avatar dsoul powiedział about 1 year later:

    no bo zjebana paczka jest, wersja z svn dziala, na forum ubuntu jest wiecej napisane

(leave url/email »)

   Pomoc języka formatowania Obejrzyj komentarz