Skip to content

Elm language support plugin for IntelliJ IDEA.

License

Notifications You must be signed in to change notification settings

Namek/elm-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

elm-plugin

Elm language plugin for IntelliJ IDEA.

Features

This plugin supports Elm 0.17.0. If you need to have different version supported, see this link.

  • Parsing the syntax
  • Syntax highlighting and color settings page
  • Going to declaration
  • Highlighting unresolved references
  • Code completion
  • Brace matching
  • Spellchecking
  • Rename refactoring

Formatting is currently not a feature of the plugin, but elm-format can be used instead. If you don't know how to configure IntelliJ to use elm-format you can find some information here

Building from sources

  1. Setup your development environment according to this instruction.
  2. Clone this repository.
  3. Open it as a Plugin Project in IntelliJ IDEA (either Community or Ultimate version).
  4. Make sure you have Grammar-Kit and PsiViewer plugins installed.
  5. Delete the content of gen directory if you have previously generated parser code from another version of the BNF file.
  6. Open src/org/elmlang/intellijplugin/Elm.bnf file and generate the parser code (*)
  7. Open src/org/elmlang/intellijplugin/Elm.flex file and generate lexer code (*)
  8. The plugin should be ready to run now.

(*) either from a context menu or by keyboard shortcut ⇧⌘G

Contributing

If you would like to develop a new feature or fix a bug:

  • Please add an issue to Github so that everyone can share his/her opinions and ideas
  • Please create a pull request when you finish development
  • If you would like to do any change to the parser or a non-trivial change to resolving references, please contact me before.

License: MIT

About

Elm language support plugin for IntelliJ IDEA.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 95.2%
  • Elm 2.8%
  • Lex 2.0%