Tyler Wilding
53277a65ad
LSP: A bunch of new OpenGOAL language features ( #3437 )
...
- Integrate the AST into the LSP, this makes parsing and tokenizing the
files much easier
- Consolidate most of the symbol info tracking in `goalc` to a single
map. Fixed some issues where the old map would never evict symbols when
re-compiling files. There is still some more to cleanup, but this now
can be used as an incrementally updated source-of-truth for the LSP
- re-compile files when they are saved. Ideally this would be done
everytime they are changed but that:
- may be too aggressive
- goalc doesn't compile incrementally yet so it likely would be a worse
UX
Features added, see
https://github.com/open-goal/opengoal-vscode/issues/256
- Hover
![image](https://github.com/open-goal/jak-project/assets/13153231/58dadb5d-582c-4c1f-9ffe-eaa4c85a0255 )
![image](https://github.com/open-goal/jak-project/assets/13153231/b383adde-57fc-462c-a256-b2de5c30ca9a )
- LSP Status fixed
- Type Hierarchy
![image](https://github.com/open-goal/jak-project/assets/13153231/8e681377-1d4e-4336-ad70-1695a4607340 )
- Document Color
![image](https://github.com/open-goal/jak-project/assets/13153231/4e48ccd8-0ed1-4459-a133-5277561e4201 )
- Document Symbols
![Screenshot 2024-03-27
004105](https://github.com/open-goal/jak-project/assets/13153231/8e655034-43c4-4261-b6e0-85de00cbfc7f )
- Completions
![Screenshot 2024-03-30
004504](https://github.com/open-goal/jak-project/assets/13153231/d123a187-af90-466b-9eb7-561b2ee97cd1 )
---------
Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
2024-03-30 19:49:07 -04:00
Tyler Wilding
60db0e5ef9
deps: update fmt
to latest version ( #3403 )
...
This updates `fmt` to the latest version and moves to just being a copy
of their repo to make updating easier (no editing their cmake / figuring
out which files to minimally include).
The motivation for this is now that we switched to C++ 20, there were a
ton of deprecated function usages that is going away in future compiler
versions. This gets rid of all those warnings.
2024-03-05 22:11:52 -05:00
Tyler Wilding
ccd47f8465
formatter: Format deftype
correctly ( #3391 )
...
New configuration options to format column widths in deftype field
definitions. Also force each field/method/state to be inlined.
2024-02-27 20:12:44 -05:00
Tyler Wilding
0236e36a53
formatter: fix multi-line form consolidation ( #3336 )
2024-01-25 16:46:15 -05:00
Tyler Wilding
c3e4baf697
formatter: support for a few more forms and fix some bugs, update tree-sitter grammar ( #3317 )
2024-01-18 20:09:40 -05:00
Tyler Wilding
2b1876f862
formatter: Add support for a few common functions and fix an LSP startup issue ( #3190 )
2023-11-11 17:51:55 -05:00
Tyler Wilding
dccc3da1b3
formatter: rewrite and refactor, address more edge-cases, begin documenting my work ( #3096 )
2023-10-20 21:24:31 -04:00
Tyler Wilding
a06a6c6416
cleanup our cmake and build warnings ( #2876 )
2023-08-08 20:53:16 -04:00
Tyler Wilding
a7cf66fda6
formatter: support formatting bindings, for example in a let
( #2883 )
2023-08-05 15:23:09 -04:00
Tyler Wilding
533d2f6f2b
formatter: new approach for indentation that doesn't depend on original formatting ( #2764 )
2023-06-22 00:16:18 -04:00
Tyler Wilding
a8a5f1e745
formatter: support comments better (including block comments) and constant pair formatting ( #2745 )
2023-06-18 17:19:35 -04:00
Tyler Wilding
3dbaee1ecc
formatter: handle top level blank lines and better handle comments ( #2702 )
2023-06-06 20:34:50 -04:00
Tyler Wilding
6d620a9289
formatter: extract formatting into a rules abstraction, add inner
formatting (body vs argument functions) ( #2684 )
2023-06-04 13:19:29 -04:00
Tyler Wilding
4c6982b0ec
formatter: initial and basic indentation/alignment and expose the formatting via the LSP ( #2673 )
2023-05-28 13:22:00 -04:00
Tyler Wilding
5e987cc0e2
jak2: overlord rework ( #2544 )
...
Fixes #2545
Fixes #2546
Fixes #2547
Fixes #2548
Fixes #2549
Fixes #2550
Fixes #2551
Fixes #2552
Fixes #2553
Fixes #2554
Fixes #2555
Fixes #2556
Fixes #2557
Fixes #2558
Fixes #2559
Fixes #2560
Fixes #2561
Fixes #2562
Fixes #2563
Fixes #2564
Fixes #2565
Fixes #2567
Fixes #2566
Fixes #2568
Fixes #2569
Fixes #2570
Fixes #2522
Fixes #2571
---------
Co-authored-by: water <awaterford111445@gmail.com>
Co-authored-by: Hat Kid <6624576+Hat-Kid@users.noreply.github.com>
Co-authored-by: ManDude <7569514+ManDude@users.noreply.github.com>
2023-04-29 16:13:57 -04:00
Tyler Wilding
0ffb912a04
formatter: add tree-sitter dependency and commit early draft work on a proper code formatter ( #2536 )
2023-04-24 23:46:55 -04:00