Skip to content

An IntelliJ plugin for advanced TI-Basic programming. Including deep analysis, smart optimization and out-of-the-box compilation to .8xp files.

Notifications You must be signed in to change notification settings

PeterTillema/TI-Basic-IntelliJ-plugin

Repository files navigation

TI-BASIC IntelliJ plugin

Welcome! This is an IntelliJ plugin for the TI-BASIC language, used for programming the calculator. This plugin adds many functionalities to the editor, including but not limited to syntax highlighting, folding, DCS icon editor and exporting the file to an .8xp file.

TI-BASIC code in the editor

DCS icon editor

Here is the full list of specifications:

  • Syntax checker
  • A bunch of local code inspections
  • Code formatting
  • Folding loops
  • Syntax highlighting
  • SourceCoder3 theme, both dark and light
  • Color scheme editor
  • Code style editor
  • Navigating from/to labels
  • Going to definitions of variables and find references
  • Line commenting
  • TI-OS color gutter provider
  • Highlighting matching braces
  • DCS icon previewer and editor (Cesium-compatible, including monochrome icons)
  • Exporting source to .8xp file with custom settings

The source code can be found here: https://github.com/PeterTillema/TI-Basic-IntelliJ-plugin.

The IntelliJ plugin can be found here: https://plugins.jetbrains.com/plugin/28722-ti-basic.

Known issues

  • Find usages from Lbl in Menu statement
  • Typing an "Else" or "Then" within a code block causes the parser to stop entirely
  • Typing a "]" after typing the start of a matrix name first (i.e. "[A") inserts another right bracket.
  • Allow references from/to custom list names without the |L prefix

Todo

  • Extend inspections to be more advanced and more complete
  • Write unit/integration tests to test all behavior

About

An IntelliJ plugin for advanced TI-Basic programming. Including deep analysis, smart optimization and out-of-the-box compilation to .8xp files.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •