2013-12-26 9 views
1

Контент помогает с org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer для Eclipse JSDT не дает предложения.Контент помогает с javaCompletionProposalComputer для Eclipse JSDT не дает предложения

В Preferences -> JavaScript -> Editor -> Content Assist -> Advanced «Предложения Nodeclipse» видны и выбраны.

как советует Bananaweizen к Content assist for Eclipse JSDT based Editor

в plugin.xml

<extension point="org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer" 
    id="nodeclispe_textual_proposals" 
    name="Nodeclipse Text Proposals"> 
    <proposalCategory icon="icons/npm/npm.gif"/> 
</extension> 
<extension point="org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer" 
    id="NodeclipseProposals" 
    name="Nodeclipse Proposals"> 
    <javaCompletionProposalComputer 
     class="org.nodeclipse.ui.contentassist.JSDTProposalComputer" 
     categoryId="org.eclipse.ui.texteditor.textual_proposals"> 
     <partition type="__java_javadoc"/> 
    </javaCompletionProposalComputer> 
</extension> 

JSDTProposalComputer просто обертка для NodeContentAssistant
(который реализует IContentAssistProcessor), который работает отлично для редактора на основе TextEditor.

public class JSDTProposalComputer implements IJavaCompletionProposalComputer { 

    IContentAssistProcessor assistant = new NodeContentAssistant(); 

    @Override 
    public List<ICompletionProposal> computeCompletionProposals(ContentAssistInvocationContext context, IProgressMonitor monitor) { 
     return Arrays.asList(assistant.computeCompletionProposals(context.getViewer(), context.getInvocationOffset())); 
    } 

    @Override 
    public List<IContextInformation> computeContextInformation(ContentAssistInvocationContext context, IProgressMonitor monitor) { 
     return Arrays.asList(assistant.computeContextInformation(context.getViewer(), context.getInvocationOffset())); 
    } 

примеры из help являются

Весь код на GitHub contentassist пакет https://github.com/Enide/nodeclipse-1/tree/master/org.nodeclipse.ui/src/org/nodeclipse/ui/contentassist

+0

поиск на http://help.eclipse.org/kepler/index.jsp не дал никаких результатов, но на Juno http://help.eclipse.org/juno/index .jsp возвращает «JavaScript Completion Proposal Computer» и «Java Completion Proposal Computer» –

+0

Не удается найти «JavaScript Completion Proposal Computer» в справке Кеплера –

+0

В этом примере categoryId не соответствует запросуКод категории – zulus

ответ

0

Точно как @zulus сказал:

пытаются добавить Activate = "истинный" в javaCompletionProposalComputer и удалить

, что работал в:

<extension point="org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer" 
    id="nodeclispe_textual_proposals" 
    name="Nodeclipse Text Proposals"> 
    <proposalCategory icon="icons/npm/npm.gif"/> 
</extension> 
<extension point="org.eclipse.wst.jsdt.ui.javaCompletionProposalComputer" 
    id="NodeclipseProposals" 
    name="Nodeclipse Proposals"> 
    <javaCompletionProposalComputer 
     class="org.nodeclipse.ui.contentassist.JSDTProposalComputer" 
     categoryId="org.eclipse.ui.texteditor.textual_proposals" 
     activate="true"> 
    </javaCompletionProposalComputer> 
</extension> 

http://www.nodeclipse.org/img/Completion-for-base-Node.js-modules.PNG

+1

Где я могу найти файл для редактирования? По какой-то причине я недавно начал эту ошибку. На Марсе. – Damainman

0

Если вам нужно простой пример реализации реализации Pauls ответ вы можете проверить этот учебник: http://codeandme.blogspot.co.at/2014/05/extending-jsdt-adding-your-own-content.html

+0

SO не для обмена ссылками. Разве это решение отличается? –

+0

извините за то, что разделил ссылку. Я подумал, что загрузить загружаемое, выходящее из коробки решение тоже будет полезно. Предоставленная ссылка также показывает реализацию класса по умолчанию наряду с необходимыми зависимостями плагина – Christian