jak-project/goal_src/jak1
Tyler Wilding 39658dfd71
docs: Automatically generate documentation from goal_src code (#2214)
This automatically generates documentation from goal_src docstrings,
think doxygen/java-docs/rust docs/etc. It mostly supports everything
already, but here are the following things that aren't yet complete:
- file descriptions
- high-level documentation to go along with this (think pure markdown
docs describing overall systems that would be co-located in goal_src for
organizational purposes)
- enums
- states
- std-lib functions (all have empty strings right now for docs anyway)

The job of the new `gen-docs` function is solely to generate a bunch of
JSON data which should give you everything you need to generate some
decent documentation (outputting markdown/html/pdf/etc). It is not it's
responsibility to do that nice formatting -- this is by design to
intentionally delegate that responsibility elsewhere. Side-note, this is
about 12-15MB of minified json for jak 2 so far :)

In our normal "goal_src has changed" action -- we will generate this
data, and the website can download it -- use the information to generate
the documentation at build time -- and it will be included in the site.
Likewise, if we wanted to include docs along with releases for offline
viewing, we could do so in a similar fashion (just write a formatting
script to generate said documentation).

Lastly this work somewhat paves the way for doing more interesting
things in the LSP like:
- whats the docstring for this symbol?
- autocompleting function arguments
- type checking function arguments
- where is this symbol defined?
- etc

Fixes #2215
2023-02-20 19:49:37 -05:00
..
build jak2: Create goal_src skeleton (#1576) 2022-06-29 22:20:09 -04:00
dgos split new pc features in some files into their own code files + address some old issues + ripple graphics improvements (#2216) 2023-02-13 21:39:14 +00:00
engine Redundant (declare-file (debug)) (#2226) 2023-02-18 17:26:33 -05:00
examples [decomp] fix up debug menu rendering, add a few others (#1892) 2022-09-16 20:42:33 -04:00
import jak2: Create goal_src skeleton (#1576) 2022-06-29 22:20:09 -04:00
kernel docs: Automatically generate documentation from goal_src code (#2214) 2023-02-20 19:49:37 -05:00
levels Jak 1 Checkpoint Select / IL Speedrun support (#2162) 2023-01-30 19:11:57 -05:00
old goal_src: Get rid of *OLD* files in jak1's goal_src (#1736) 2022-08-06 12:03:42 -04:00
pc [jak1] fix crash on startup (#2225) 2023-02-18 17:19:22 -05:00
compiler-setup.gc cleanup cheats menu + change game territory logic + some subtitles (#1733) 2022-08-06 11:57:19 -04:00
game.gp split new pc features in some files into their own code files + address some old issues + ripple graphics improvements (#2216) 2023-02-13 21:39:14 +00:00
kernel-defs.gc Hook Jak 1 into ImGUI actor filter (#2157) 2023-01-28 14:17:43 -05:00