Skróty klawiaturowe w Eclipse PDT

Poniżej lista mniej znanych a równie przdatnych co Crtl+C skrótów klawiaturowych. Dzięki używaniu ich przy pracy można znacznie przyspieszających prace w Eclipse PDT.
Poniższą listę postaram się na bieżąco aktualizować.

Ctrl + Shift + L – Lista dostępnych skrótów klawiaturowych.

Ctrl + M – Minimalizowanie lewej kolumny (outline, explorer etc…).

Ctrl + Shift + R – Wyszukiwarka plików w projekcie, uwzględnia wyrażenia regularne.
Ctrl + O – Wyszukiwarka danych w typie (listing metod, atrybutów klasy).
Ctrl + E – Wyszukiwarka otwartych plików

Alt + Shift + R na zaznaczonym w browserze/explorerze plików – Możliwość edycji nazwy pliku.

Alt + strzałka Left / Right – Przeskoczenie pomiędzy ostatnio edytowanymi plikami do lokalizacji gdzie wykonywana była ostatia zmiana. Strzałka w lewo cofa się w historii, strzałka w prawo idzie do przodu.

Ctrl + Shift + X – Przekształca zaznaczony tekst na wielkie litery
Ctrl + Shift + Y – Przekształca zaznaczony tekst na małe litery

Ctrl + Shift + P – Przejście do klamry zamykającej blok.

Ctrl + Shift + / – Zakomentowanie kodu poprzez /* */
Ctrl + / – Zakomentowanie/odkomentowanie kodu poprzez //

Ctrl + L – Przejście do lini XX

Alt – Up / Down – Przesunięcie bieżącej lini w górę / w dół
Ctrl + Alt + Up / Down – Skopiowanie bieżącej linii

Tab + zaznaczone kilka linii tekstu – przesunięcie tekstu o tabulator w prawo
Shift + Tab + zaznaczone kilka linii tekstu – przesunięcie tekstu o tabulator w lewo

Ctrl + K + zaznaczenie zmiennej – przskoczenie do następnego wystąpienia zmiennej w pliku
Ctrl + Shift + K + zaznaczenie zmiennej – przskoczenie do poprzedniego wystąpienia zmiennej w pliku

Błąd SmartyPDT w Eclipse 3.3.2 i PDT 1.0.3 z JRE 1.6

Niedawno update’owałem swoje IDE, i natknąłem się na mały zgrzyt w Eclipse. Okazało się, że najnowsza wersja 0.5.4 plugin’a do Smarty’ego (SmartyPDT) nie chce działać w środowisku Eclipse PDT z zainstalowanym JRE 1.6.

Błąd

Otwarcie pliku *.tpl w domyślnym edytorze smarty’iego dawało błąd:

java.lang.IllegalAccessError?: tried to access field org.eclipse.php.internal.ui.editor.PHPStructuredEditor.isExternal from class org.eclipse.php.smarty.ui.editor.SmartyStructuredEditor?
    at org.eclipse.php.smarty.ui.editor.SmartyStructuredEditor?.doSetInput(SmartyStructuredEditor?.java:42) at org.eclipse.ui.texteditor.AbstractTextEditor?$19.run(AbstractTextEditor?.java:3003) at org.eclipse.jface.operation.ModalContext?.runInCurrentThread(ModalContext?.java:369) at 
etc...

Błąd w całości można obejrzeć tutaj. Po małym dochodzeniu okazało się, że wersja SmartyPDT 0.5.4 działa w co najwyżej 1.5 The J2SE Runtime Environment (JRE), natomiast na mojej maszynie zainstalowane jest najnowsze JRE 1.6.

Rozwiązanie

Aby SmartyPDT działało poprawnie trzeba ściągnąć nieoficjalną wersję 0.5.5, która dostępna jet tutaj. Następnie wgrać do katalogu eclipse, przejść Help->Software Updates->Manage Configuration i dać ‚disable’ na wersji 0.5.4 i ‚enable’ na wersji 0.5.5

Po restarcie Eclipse wszystko działa poprawnie.

Refleksja

Ciekawe dlaczego na stronie SmartyPDT nie ma słowa o tej niezgodności, oraz dlaczego w download’zie nie ma najnowszej wersji 0.5.5?