すべてのコードテンプレートのリストを API を使って取得してみます。このようになるでしょうか...

MimeLookup で Java ソースコードに対する Lookup を取得します。そこから CodeTemplateSettings を取得、getCodeTemplateDescriptions() ですべての CodeTemplateDescription を取得します。
Lookup l = MimeLookup.getLookup(MimePath.parse("text/x-java"));
CodeTemplateSettings cds = l.lookup(CodeTemplateSettings.class);
List codeTemplates = cds.getCodeTemplateDescriptions();
for (Iterator it = codeTemplates.iterator(); it.hasNext();) {
    CodeTemplateDescription desc = (CodeTemplateDescription) it.next();
    System.out.println(desc.getAbbreviation() + "=>" +
        desc.getParametrizedText());
}
MimeLookup は「MIME ルックアップ API」、 CodeTemplateSettingsCodeTemplateDescription は「エディタ設定」モジュールで提供されています。

もう一つの方法は Document から CodeTemplateManager を取得し、getCodeTemplates() を使って全部取得する方法もあるようです。こちらは CodeTemplate が取得できます。
CodeTemplateManager mgr = CodeTemplateManager.get(textComp.getDocument());
Collection<? extends CodeTemplate> list = mgr.getCodeTemplates();

for (CodeTemplate codeTemplate : list) {
    System.out.println(codeTemplate.getAbbreviation() + "=>" +
        codeTemplate.getParametrizedText());
}
関連するエントリ:
Comments:

Post a Comment:
Comments are closed for this entry.

This blog copyright 2009 by katakai