How to write your own language plugin for IDEA (part 1)

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • intellij-rainbow-brackets

    🌈Rainbow Brackets for IntelliJ based IDEs/Android Studio/HUAWEI DevEco Studio/Fleet

  • The class implements the interface - com.intellij.CodeInsight.daemon.impl.HighlightVisitor. The implementation can be viewed here. The coloring takes place in the com.github.izhangzhihao.rainbow.brackets method.visitor.RainbowHighlightVisitor#setHighlightInfo

  • intellij-community

    IntelliJ IDEA Community Edition & IntelliJ Platform

  • Java (in the code of IDEA)

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • go-lang-idea-plugin

    Google Go language IDE built using the IntelliJ Platform

  • go-plugin (now this plugin is known as Goland)

  • intellij-haskforce

    Haskell plugin for IntelliJ IDEA

  • Haskell

  • intellij-erlang

    Erlang IDE

  • Erlang

  • monkey-plugin

  • Monkey plugin (in this article)

  • intellij-frege

    IntelliJ IDEA plugin for Frege language

  • It is required to declare a new language (examples in go-plugin, frege, monkey)

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Grammar-Kit

    Grammar files support & parser/PSI generation for IntelliJ IDEA

  • In IDEA, code generation by the GrammarKit plugin is mainly used to create a parser. Unfortunately, there is not much documentation about it and it is only presented in Tutorial and HOWTO.

  • JFlex

    The fast scanner generator for Javaâ„¢ with full Unicode support

  • Perhaps, the easiest way to create a lexer for IDEA is to use JFlex. The GrammarKit plugin already contains implementation and allows you to generate a lexer from .bnf file or from .flex file (with more customization options). An example for the Monkey language can be viewed here, a more complex one for Frege - here.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts