Idea Plugin Dev-15-05-Element Patterns
Element Patterns
元素模式提供了一种通用的方式来指定对象的条件。
插件作者使用它们来检查 PSI 元素是否匹配特定结构。
正如字符串的正则表达式测试(子)字符串是否与特定模式匹配一样,元素模式用于对 PSI 元素的嵌套结构设置条件。
它们在 IntelliJ 平台中的两个主要应用程序是:
指定在为自定义语言实现完成贡献者时应在何处进行自动完成。
指定通过 PSI ...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-15-04-Indexing and PSI Stubs
索引
索引框架提供了一种快速定位特定元素的方法,例如,在大型代码库中包含特定单词或具有特定名称的方法的文件。
插件开发者可以使用IDE自身构建的现有索引,也可以构建和使用自己的索引。
它支持两种主要类型的索引:
基于文件的索引
存根索引
基于文件的索引直接建立在文件的内容之上。
存根索引建立在序列化的存根树之上。
源文件的存根树是其 ...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-15-03-PSI cookbook
PSI Cookbook
此页面提供了使用 PSI(程序结构接口)的最常见操作的方法。
与开发自定义语言插件不同,它是关于使用现有语言(例如 Java)的 PSI。
一般
如果我知道文件的名称但不知道路径,如何找到文件?
FilenameIndex.getFilesByName()
我如何找到使用特定 PSI 元素的位置?
ReferencesSearch.search()
...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-15-02-File View Providers
FileViewProvider
文件视图提供程序 (FileViewProvider) 管理对单个文件中多个 PSI 树的访问。
例如,一个 JSPX 页面有一个单独的 PSI 树用于其中的 Java 代码 (PsiJavaFile),一个单独的树用于 XML 代码 (XmlFile),一个单独的树用于整个 JSP (JspFile)。
每个 PSI 树都覆盖了文件的全部内容,并在可...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-15-01-什么是 PSI? Program Structure Interface (PSI)
PSI
程序结构接口,通常简称为 PSI,是 IntelliJ 平台中的一个层,负责解析文件和创建语法和语义代码模型,为平台的许多功能提供支持。
PSI files
PSI(程序结构接口)文件是结构的根,将文件内容表示为特定编程语言中元素的层次结构。
PsiFile 类是所有 PSI 文件的公共基类,而特定语言的文件通常由其子类表示。
例如,PsiJavaFile 类表示一个 Ja...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-14-01-Project Structure
Project Structure
本主题考虑基于 IntelliJ 平台和相关主题的项目概念,例如模块、构面、库和 SDK。 讨论了可用于管理项目和模块的项目结构和 Java 类。
项目及其组件 Project and Its Components
本节简要讨论 IDEA 项目结构、项目组件和相关术语。
有关项目及其组件的更多信息,请参阅 IntelliJ IDEA Web 帮助...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-13-01-I18N 国际化 Localization 与 java 的 ResourceBundle 读取 i18n 配置
idea 中 properties 文件打开强制为 iso-8859-1 编码打开,如何修改为 utf-8
setting=>Editor=>File Encoding,设置配置文件的默认编码,勾选上 Transparent native-to-ascii conversion
在 IntelliJ IDEA 中,.properties 文件默认以 ISO-8859-...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-12-01-Version Control System
vcs
IntelliJ IDEA 提供了强大的版本控制系统(Version Control System,VCS)集成,使开发人员能够轻松地与版本控制工具(如Git、SVN等)进行交互。下面是对 IntelliJ IDEA 插件中版本控制系统的详细介绍:
支持的版本控制系统:IntelliJ IDEA 支持多种版本控制系统,包括 Git、SVN、Mercurial、Pe...
2017-10-13 02:24:52 |
Java