- Notifications
You must be signed in to change notification settings - Fork1
Official Phel Lang Plugin
NotificationsYou must be signed in to change notification settings
phel-lang/phel-intellij-plugin
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This plugin provides comprehensive IDE support for thePhel programming language in JetBrains IDEs (IntelliJ IDEA, PhpStorm, WebStorm, etc.).
Phel is a functional programming language that transpiles to PHP. It is a dialect of Lisp inspired by Clojure and Janet.
- Open your JetBrains IDE (IntelliJ IDEA, PhpStorm, etc.)
- Go toFile → Settings → Plugins (orIntelliJ IDEA → Preferences → Plugins on macOS)
- Search for "Phel"
- ClickInstall and restart the IDE
- Create or open a
.phelfile - The plugin will automatically activate and provide syntax highlighting
- Start typing to see intelligent code completions
git clone https://github.com/phel-lang/intellij-phel-support.gitcd intellij-phel-support./gradlew buildPlugin- Clone the repository
- Open in IntelliJ IDEA (Community or Ultimate)
- Import as Gradle project
- Run the plugin withGradle → runIde task
Test your changes by running the plugin in a separate IDE instance:
./gradlew runIde
src/main/java/org/phellang/- Main plugin source codesrc/main/resources/META-INF/plugin.xml- Plugin configurationsrc/main/java/org/phellang/language/- Lexer and parser definitionssrc/main/java/org/phellang/completion/- Code completion providers
- PhelLexer (
.flex) - Tokenizes Phel source code - PhelParser (
.bnf) - Parses tokens into PSI tree - PhelCompletionContributor - Provides code completion
- PhelAnnotator - Semantic highlighting and error detection
- PhelSyntaxHighlighter - Basic syntax coloring
Contributions are welcome! Please feel free to submit issues and pull requests.
About
Official Phel Lang Plugin
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Contributors4
Uh oh!
There was an error while loading.Please reload this page.