Skip to content

v0.3.3

Compare
Choose a tag to compare
@ironsheep ironsheep released this 16 Mar 19:46
· 281 commits to main since this release

4th Release of Semantic Highlighting

This represents a noticeable cleanup of parsing most existing code.

What’s new

Theme Adjustments:

  • Removed Spin2 Cluso99 theme (by request)
  • Added Spin2 Ironsheep Syntax theme (primarily for extension developer use, disables Semantic highlighting)

Note: Should you wish, you can switch between the two ironsheep themes to show code with or without semantic highlighting

Semantic Adjustments:

  • Update: VAR declarations - parses all examples in spin2 doc
  • Update: CON declarations - parses all examples in spin2 doc
  • Update: parses all examples shipped with PNut (less Spin2_interpreter.spin2)
  • Update: now parses most of the P2 OBEX cleanly… still more to do tho'
  • NEW: if variables are used but not (yet?) defined they’ll be shown in RED
  • BUGFIX: no longer marking vars within { } single line comments
  • BUGFIX: now handles multi-line enum declarations
  • BUGFIX: now handles comma-delimited constant assignments
  • BUGFIX: most if not all embedded assignment (e.g., until ((b := rxcheck()) >= 0)) now correct
  • BUGFIX: most if not all shorter variable highlight is now working
  • BUGFIX: multiple assignment LHS of := now highlighted correctly

Syntax Adjustments:

  • BUGFIX improved variable index recognition - missing fewer of them now…
  • ENHANCEMENT added floating-point number recognition
  • BUGFIX improved number recognition - recognizes all number examples in spin2 doc
  • BUGFIX add missing clkfreq_, _clkfreq constants
  • BUGFIX add missing FVAR, FVARS overrides
  • BUGFIX add missing REG, AND operators
  • BUGFIX add missing spin built-ins getms(), QSIN(), QCOS(), PINC()
  • BUGFIX adjusted pub/pri to allow space before open paren

Known Issues w/v0.3.3:

  • Pasm: doesn’t recognize round(), float(), and trunc() as pasm operand
  • Spin: Badly handles strings (should be ignoring contents of them)
  • Incorrectly colors built-in constants (should be own color)
  • Fails to parse some debug() statements correctly
  • Syntax highlight of DAT section sometimes fails… RES and FIT not colored correctly
  • Semantic highlight: the ‘modification’ attribute is being over-applied
  • Semantic highlight: the ‘modification’ attribute should use more than := as test!!!!
  • I’m sure there are more issues…