This project is in early phases of development; expect things to change considerably
DISCLAIMER:
This offering is not approved or endorsed by OpenCFD Limited, producer and distributor
of the OpenFOAM software and owner of the OPENFOAM® and OpenCFD® trade marks.
This is a generic fail-tolerant parser for OpenFOAM case dictionaries.
The goal is to reach a state that is "good enough" for syntax highlighting
and feasible symbols extraction.
Highlighting of C++ code blocks and regular expressions, so if your client does not install
those parsers automatically, you might have to install them manually
Scope-awareness is there (Per-dictionary) although not used yet
Unit tests for both parsing and highlighting (Highlighting is not consistent between tree-sitter highlight
and nvim-treesitter) are executed with tree-sitter test
(Check the test folder)
testOFFiles.sh $FOAM_TUTORIALS parses all OpenFOAM dictionaries in the tutorials directory
Currently, the parser works on almost all OpenFOAM 8 and Foam-Extend 4 tutorial files
(Well, some files are faulty from source!)
Contributing
Pull requests are welcome!
And, no I'm not going to support specific keyword highlighting
(eg. scalarField will never be treated in a special way) unless I find an "unattended"
way to do that.