मैं इंटेलिज के लिए एक प्लगइन विकसित कर रहा हूं और मैं xsd के आधार पर xml संपादक को कस्टम सुझाव जोड़ना चाहता हूं। अब तक मैं xsd फ़ाइल से आवश्यक सुझाव प्राप्त कर सकता हूं।इंटेलिज पूर्णता योगदानकर्ता
मैं के रूप में
import com.intellij.codeInsight.completion.*;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.patterns.PlatformPatterns;
import com.intellij.psi.xml.XmlElementType;
import com.intellij.util.ProcessingContext;
import com.intellij.lang.xml.*;
import org.jetbrains.annotations.NotNull;
public class SimpleCompletionContributor extends CompletionContributor {
public SimpleCompletionContributor() {
extend(CompletionType.BASIC,PlatformPatterns.psiElement(XmlElementType.XML_ATTRIBUTE_VALUE).withLanguage(XMLLanguage.INSTANCE),
new CompletionProvider<CompletionParameters>() {
public void addCompletions(@NotNull CompletionParameters parameters,
ProcessingContext context,
@NotNull CompletionResultSet resultSet) {
resultSet.addElement(LookupElementBuilder.create("Hello"));
}
}
);
}
}
इस प्रकार एक्सएमएल के लिए एक पूरा होने के योगदान को लागू किया है, लेकिन यह कोई सुझाव नहीं प्रदान की थी। लेकिन जब मैं कस्टम भाषा लागू करता हूं तो यह काम करता है। मेरा उद्देश्य कर्सर की स्थिति के संदर्भ को देखना और इसके आधार पर सुझाव देना है। एक उदाहरण के रूप में जब उपयोगकर्ता xml फ़ाइल प्लगइन पर एक टैग शुरू करता है तो कोड को पूर्ण होने के रूप में गुण प्रदान करना चाहिए। मैं इस कस्टम भाषा में नया हूं।
तो क्या कोई इस पूर्णता योगदानकर्ता के साथ मेरी सहायता कर सकता है?
आपने इस योगदानकर्ता को plugin.xml में कैसे पंजीकृत किया? –
मैं जोड़ता हूं –