When it was first released, MLS was just a proof on concept, barely enough to be useful. It received some extra features later, but mostly the development was limited to minor bug fixes.
Now it's finally getting some meat on its bare bones. It's not super smart yet, but version 2 does introduce some proper intellisense features, and other changes:
2. Settings reworked, now with pretty names and sfall compile path is separate from options.
3. RPU defines are dropped from static intellisense, instead all headers are searched at runtime. Highlighting is dumbed down for RPU-based mods, but should be better for independent ones.
4. WeiDU TPH headers are supported: search for user-defined functions, macros.
5. Completion and hover items show their source file.
6. Go to definition.
7. Functions can be marked as deprecated.
8. Validate on save, validate on change.
9. As you may have noticed, completion items are prettier (less plaintext, more markdown), as well as TP2 tooltips in general.
10. Completion and hovers for WeiDU `D` format.
11. File icons for TRA, MSG, SSL files.
12. Hovers and inlay hints for TRA/MSG references.
13. Basic callgraph for SSL.
14. For TP2, READ_* and WRITE_* patch highlight style aligned with corresponding IElib types style.
Note how WRITE_LONG and ITM_enchantment are both bold. WRITE_LONG writes a dword, and ITM_enchantment is a dword offset. It's a correct invocation.
However, on the next line READ_BYTE is italic, while ITM_description_icon it straight, underlined. It's a mismatch, a clue to re-check this. ITM_description_icon is a resref and READ_BYTE shouldn't be used with it.
(This has limited scope, only for certain constant types which are described in IESDP in machine readable format).
Multi-language server and extension for vscode-based editors. Supports various Infinity Engine and Fallout syntaxes.
1 post • Page 1 of 1