chciałbym zaprezentować swoje dzieło - środowisko do tworzenia stron/aplikacji webowych ze wsparciem dla PHP, [X]HTML, CSS, JS i SQL.
Na wstępie zaznaczam że program jest we wczesnej becie i dopiero zbliża się do wydania finalnej wersji, brak w nim "klikanych" okienek do wstawiania tagów HTML itp, większą energię skierowałem tym razem na solidne wsparcie dla pisania w PHP.
Szczególnie uwagę zwróciłem na tworzenie stron z użyciem różnego rodzaju frameworków. Samemu pisząc brakowało mi bardzo podpowiedzi do kodu znanych z Visual C++ / C#, wyświetlających poza nazwą metody/zmiennej/funkcji jej opis, opis parametrów itp.
Ponadto zależało mi na obsłudze możliwie dużej liczby frameworków. Stąd program wyświetlane informacje opiera na tagach phpDoc

Dodatkowo postarałem się by możliwie nieźle radził sobie z rozpoznawaniem bardziej "skomplikowanych" wyrażeń w stylu "ORM::factory('nazwaModelu')->find(4)->..." - jednak poprawność działania w takiej sytuacji zależy od tego czy funkcja w opisie phpDoc posiada poprawnie podany parametr "@return"

Takie podejście wymaga jednak przeskanowania wybranych przez użytkownika (w Kreatorze projektu) katalogów. Następnie dane "zebrane" podczas takiego skanowania zapisywane są w pojedyńczym pliku (uwaga! plik może być spory, dla Zend FW miał około 10mb) dzięki czemu ich ładowanie przy następnym otwarciu projektu jest praktycznie błyskawiczne.
Nie będę wymieniał "standardowych" opcji edytorów (takich jak choćby cofanie/powtarzanie operacji, nagrywanie makr, zmiany układu okien i pasków narzędziowych, dostosowywanie podświetlania składni itp), skupię się na "ciekawszych"

- podświetlanie składni dla PHP, (X)HTML, CSS, JavaScript, XML, XSLT, SQL
- sprawdzanie błędów składni poszczególnych jęzków w trakcie pisania
- szablony dokumentów
- praca z projektami
- Podpowiedzi do kodu (bazujące również na parsowanym kodzie)
- dla (X)HTML: tagi i ich atrybuty, sugerowane "domknięcia" tagów, znane wartości atrybutów (np klasy i ID zdefiniowane w dokumencie CSS)
- dla CSS: selektory, atrybuty, wartości
- dla PHP: klasy i ich składowe wraz z opisem z dokumentacji (phpDoc). Program zawiera bibliotekę funkcji i klas z PHP5.
- dla SQL: słowa kluczowe, funkcje, tabele i pola (z wybranej bazy danych)
Podpowiedzi używają danych "zebranych" z aktualnie edytowanych dokumentów lub wskazanych katalogów (*) - CodeBrowser - drzewko prezentujące strukturę dokumentu (PHP/CSS)
- "Idź do deklaracji" - szybki przeskok do deklaracji elementu znajdującego się pod kursorem
- Zaawansowane "szukaj i zamień" - z obsługą wyrażeń regularnych, podświetlania wszystkich wystąpień w dokumencie itp
- "Szukaj i zamień" w plikach
- Obsługa wielu kodowań, Unicode (utf8, utf16) oraz ponad 100 kodowań regionalnych, inteligentne rozpoznawanie najważniejszych kodowań
- Debugger PHP
Bazujący na XDebug, obsługuje (m.in)- Zatrzymywanie na wybranych liniach kodu (breakpoint'y)
- Kontrola wykonywania (step into / step over / step out)
- Podgląd zmiennych (lokalnych, globalnych, wybranych)
- Podgląd stosu wykonywania
- Interaktywna konsola (pozwala np. modyfikować wartość zmiennej w trakcie wykonywania kodu)
Jak ksiądz na kolędzie, kilka obrazków - na zachętę

Ponieważ obrazki są duże, proszę klikać by powiększyć

1. rzut oka na program w najnowszej wersji, pod win7

2. okienko podpowiedzi do kodu, w trakcie pracy z projektem bazującym na Yii

3. rzut oka na program pod XP (starsza wersja stąd inny wygląd numerowania linii). Code Browser po lewej + podświetlanie wyników wyszukiwania (wyrażenie regularne) w edytorze.

4. sprawdzanie składni w locie, podpowiedzi do kodu HTML bazujące na przeskanowanym kodzie CSS

5. Debugowanie PHP. Widoczny stos wywołania, podgląd wybranej zmiennej, zmienne lokalne oraz interaktywna konsola.

6. Manager MySQL - lista połączeń / baz danych / tabel, wynik listowania tabeli/wykonywanego zapytania, podpowiedzi do kodu. Program uruchomiony na ubuntu (wine


7. Na koniec - zwykłe (ale przydatne



Program przetestowany na Windows XP i Win7 (do Visty,
Wymagania sprzętowe? Cóż ... Z ciekawości odpaliłem na starym lapku z win98 (Pentium 133 Mhz, 32 MB RAM) - poszedł. I nawet dało się wpisywać tekst

Tak więc przy dzisiejszych prockach które są ponad-gigahertzowe nie powinno być problemu

Uwaga: przy starcie programu firewall może zapytać/poinformować Was że program próbuje połączyć się z internetem.
Jest to prawda, i to podwójnie:
1. program próbuje szukać informacji o ewentualnej aktualizacji
2. wtyczka odpowiedzialna za obsługę debuggera (XDebug) jest domyślnie włączona, stąd próba otwarcia portu 9000.
zapewniam że ani jedno ani drugie nie jest groźne

Linki:
(tymczasowa) strona programu
brak instalatora (jeszcze), wystarczy wypakować:
archiwum zip z programem
Dokumentacja (po angielsku bardziej kompletna)
Pozdrawiam i czekam na opinie,
migajek