开发工具IntelliJ IDEA如何定义语言和文件类型
来源:互联网 发布:centos root密码忘记了 编辑:程序博客网 时间:2024/06/03 21:04
使用Intellij IDEA的时候,用户可以根据自身需求定义所支持的语言和文件类型,下面我们就对这一过程进行详细的解释和说明。
1 定义语言
package com.simpleplugin; import com.intellij.lang.Language; public class SimpleLanguage extends Language { public static final SimpleLanguage INSTANCE = new SimpleLanguage(); private SimpleLanguage() { super("Simple"); }}
2 定义图标
将图标复制到com.simple.plugin.icons程序包中。
package com.simpleplugin; import com.intellij.openapi.util.IconLoader; import javax.swing.*; public class SimpleIcons { public static final Icon FILE = IconLoader.getIcon("/com/simpleplugin/icons/jar-gray.png");}
3 定义文件类型
package com.simpleplugin; import com.intellij.openapi.fileTypes.LanguageFileType;import org.jetbrains.annotations.NotNull;import org.jetbrains.annotations.Nullable; import javax.swing.*; public class SimpleFileType extends LanguageFileType { public static final SimpleFileType INSTANCE = new SimpleFileType(); private SimpleFileType() { super(SimpleLanguage.INSTANCE); } @NotNull @Override public String getName() { return "Simple file"; } @NotNull @Override public String getDescription() { return "Simple language file"; } @NotNull @Override public String getDefaultExtension() { return "simple"; } @Nullable @Override public Icon getIcon() { return SimpleIcons.FILE; }}
4 定义一个文件类型factory
package com.simpleplugin; import com.intellij.openapi.fileTypes.FileTypeConsumer;import com.intellij.openapi.fileTypes.FileTypeFactory;import org.jetbrains.annotations.NotNull; public class SimpleFileTypeFactory extends FileTypeFactory{ @Override public void createFileTypes(@NotNull FileTypeConsumer fileTypeConsumer) { fileTypeConsumer.consume(SimpleFileType.INSTANCE, "simple"); }}
5 注册文件类型factory
<fileTypeFactory implementation="com.simpleplugin.SimpleFileTypeFactory"/>
6 运行项目
创建一个扩展名为.simple的文件,IntelliJ IDEA将自动将其与定义的语言联系起来。
》》》Intellij IDEA最新版免费下载地址
- 开发工具IntelliJ IDEA如何定义语言和文件类型
- Java开发工具IntelliJ IDEA如何定义语法和解析器
- android 开发工具eclipse 和 intellij idea
- Java开发工具IntelliJ IDEA定义语法高亮和颜色设置页面详解
- intellij idea开发工具
- IDEA-------(一)如何安装开发工具 Intellij IDEA
- Java开发工具IntelliJ IDEA是如何导入项目的
- Java开发工具IntelliJ IDEA如何使应用程序交互
- 开发工具之IntelliJ IDEA
- Java开发工具IntelliJ IDEA单元测试和代码覆盖率图解
- Java开发工具对比:Eclipse和IntelliJ IDEA
- Java开发工具IntelliJ IDEA单元测试和代码覆盖率图解
- 【Java开发工具】IntelliJ IDEA 快捷键和设置
- Java开发工具对比:Eclipse和IntelliJ IDEA
- Java开发工具IntelliJ IDEA 12发布
- intellij IDEA开发工具项目maven管理
- intellij IDEA开发工具项目maven管理
- IntelliJ IDEA 开发工具使用学习资料
- 选择排序与冒泡排序的联系和区别
- Android--hw_get_module解析
- jquery中$.Ajax()async和success在异步处理 编辑
- Oracle下优化控制器optimizer_mode参数设置
- jquery.pagination.js 添加首页和尾页
- 开发工具IntelliJ IDEA如何定义语言和文件类型
- [转载]深入浅出Visual C++动态链接库(Dll)编程
- WebService返回值问题。
- 敏捷开发松结对编程系列:L型代码结构案例StatusFiltersDropdownList(上)
- 百度地图API显示多个标注点,解决提示信息问题以及给标注增加地图旁的文字连接提示的另一种解决办法
- IOS中定时器NSTimer的开启与关闭
- VC IDE远程调试
- memmove和memcpy
- LwIP 协议栈源码详解 ——TCP/IP 协议的实现(三:动态内存管理)