Vector<FileType> (Project project) { final Vector<FileType> v = new Vector<>(); final FileType[] fileTypes = FileTypeManager.getInstance().getRegisteredFileTypes(); for (FileType fileType : fileTypes) { // get rid of file types useless for highlighting if (fileType == StdFileTypes.CLASS || fileType == ProjectFileType.INSTANCE || fileType == WorkspaceFileType.INSTANCE || fileType == ModuleFileType.INSTANCE || fileType == StdFileTypes.GUI_DESIGNER_FORM) { continue; } try { if (fileType instanceof LanguageFileType) { final SyntaxHighlighter sh = SyntaxHighlighterFactory.getSyntaxHighlighter(((LanguageFileType)fileType).getLanguage(), project, null); v.add(fileType); } } catch (Throwable e) { Logger.getInstance(XsltRunSettingsEditor.class.getName()).info("Encountered incompatible FileType: " + fileType.getName(), e); } } v.sort(Comparator.comparing(FileType::getDescription)); // off v.insertElementAt(null, 0); return v; }