2009-12-30 7 views
8

Piszę wtyczkę eclipse, aby zapewnić lepszą obsługę plików właściwości. Jednym z brakujących elementów jest pomoc w zakresie treści ... Chciałbym wyświetlić pasujące klawisze właściwości, gdy użytkownik zacznie pisać jakiś klucz pomocniczy typu string i naciśnij.Punkt rozszerzenia dla dostarczania niestandardowych procesorów pomocniczych treści w Eclipse

Na przykład, kiedy mam właściwość hello = world w jednym z moich plików Właściwości, a zacznę wpisywać format("hel i uderzył CTRL + SPACE teraz chciałbym, aby zobaczyć dostępne hello nieruchomości.

Mój problem polega na tym, że nie mogę znaleźć prawidłowego punktu rozszerzenia, aby zapewnić niestandardowy procesor treści. Jak mogę udostępnić mój własny procesor treści do plików tekstowych? Chciałbym, aby działało to głównie w plikach Java, JSP i XML.

Odpowiedz

3

Już wcześniej szukałem takiego punktu rozszerzenia bez powodzenia. O ile mi wiadomo, nie jest możliwe dodawanie nowych typów zawartości do edytorów Eclipse w ten sposób.

+1

Dziękuję bardzo David.Zapoznaj się z moim własnym niepowodzeniem w znalezieniu takiego punktu rozszerzenia. Mogę tylko dodawać pomocników do pomocy dla konkretnych redaktorów, którzy mają własne punkty rozszerzeń (niektórzy z nich ... wydaje się, że np. Edytor Java ma taką możliwość). Na szczęście dla mnie edytor Java i edytor JSP są tym, co mnie najbardziej interesuje –

1

Jeśli pliki właściwości mogą podążać za EBNF grammar, a następnie można dać Eclipse Xtext strzał

Xtext stanowi ramy dla rozwoju języków specyficznych domen tekstowy (DSL).
Po prostu opisz swoje własne DSL za pomocą prostego języka gramatycznego EBTF Xtext, a generator utworzy parser, model AST-meta (zaimplementowany w EMF), a także w pełni funkcjonalny edytor tekstu Eclipse z tego.

alt text http://www.eclipse.org/Xtext/images/screenshot-title.png

Ramy integruje się z technologii Eclipse modelowania, takie jak siła elektromagnetyczna GMF M2T i części EMFT.
Programowanie z Xtextem jest zoptymalizowane pod kątem krótkich zwrotów akcji, dzięki czemu dodanie nowych funkcji do istniejącego DSL to kwestia minut. Można wdrożyć jeszcze wyrafinowane języki programowania.


W przeciwnym razie, można znaleźć kilka przykładów zawartości pomocy w this thread lub this one (JSDT - JavaScript)

+0

Dziękuję za odpowiedź. Moje pytanie może nie być jasne, ponieważ nie jest to tym, czego szukam. Pliki właściwości nie są opisane gramatyką, ale określone w javadoc dla metody Properties.load() (http://java.sun.com/j2se/1.5.0/docs/api/java/util/Properties.html#load% 28java.io.InputStream% 29). Dwa wątki, do których się odwołujesz, są specyficzne dla WTP/DLTK. Szukam ogólnego punktu rozszerzenia zawartości, który działałby z większością edytorów tekstu. Odwołane wątki mogą wskazywać, że procesory wspomagające zawartość są zawsze specyficzne dla danego typu edytora, co nie byłoby dobre :-( –

0

wygląda IContentProposalProvider może być to, co szukam, ale nadal nie ma sensu rozszerzenie .

8

Można to zrobić deklarując przedłużenie do:

org.eclipse.jdt.ui.javaCompletionProposalComputer 

Oto początek na reference page.

można znaleźć projekt demo here

2

Można utworzyć projekt plug-in, wybrać opcję „plug-in z edytora”, znajduje się niewielki edytor języka XML z kolorowanie składni (ta klasa pomóc ci poznać klasy dla rozszerzenia). Zawartość pomagać nie jest używany, ale można go dodać szuka ten FAQS

kolorowanie składni http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Feditors_highlighting.htm

zawartość assitant http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Feditors_contentassist.htm

Jedyną rzeczą, że staram się znaleźć jest dodanie informacji takich jak JavaDoc do propozycji dla określonego asystenta. W FAQ często mówię, ale naprawdę tego nie rozumiem.

Mam nadzieję, że to pomaga.

Powiązane problemy