Commit Graph

206 Commits

Author SHA1 Message Date
Benedikt Peetz dfd27ab1fa
build(cog.toml): Allowlist the correct default branch 2024-05-18 21:30:55 +02:00
Benedikt Peetz 621c64975a
fix(cog.toml): Reactive the `nix flake check` step
Nix can now build Trinitrix again.
2024-05-18 21:30:48 +02:00
Silas Schöffel a86c42deae
feat(ui): make tui compile again
This also refactors the tui codebase,
mainly making module locations more sane
2024-05-08 22:06:36 +02:00
Silas Schöffel e560790e00
build(Cargo): update dependencies
This also replaces tui-rs with ratatui
2024-05-08 21:58:30 +02:00
Silas Schöffel df70df8062
build(flake): add pre-commit-hooks
This enforces formatting rules.
2024-05-08 21:58:17 +02:00
Silas Schöffel 1db1b81b17
fix(ui): emphasize equal worth of frontends 2024-05-08 21:57:53 +02:00
Silas Schöffel d756afbc06
fix(ui): default to help message 2024-05-08 21:57:39 +02:00
Silas Schöffel 580b443dcc
chore(gitignore): ignore plugin.txt 2024-05-08 21:57:03 +02:00
Benedikt Peetz 22b8af8e93 chore(treewide): Update the copyright headers 2024-05-08 19:23:11 +00:00
Benedikt Peetz cbfe31f9f2 fix(scripts/renew_copyright_header.sh): Set correct copyright template length 2024-05-08 19:23:11 +00:00
Benedikt Peetz f67141f921 style(.licensure.yml): Use 'Trinitrix' instead of 'This program'
GNU suggests replacing the 'This program' part with the actual name,
if the program consists of more than one source file.
2024-05-08 19:23:11 +00:00
Benedikt Peetz f9997a2e86 style(.licensure.yml): Format the copyright message 2024-05-08 19:23:11 +00:00
Silas Schöffel 0315de3ee4 chore(treewide): change license to GPL-3.0 or later
To archive this, the previous MIT-License and its mentions were removed, COPYING
was added, LICENSE.spdx and README were modified to show the correct
license, sils@sils.li was added to the project's
E-Mail adresses and ./scripts/renew_copyright_header.sh
was executed.
2024-05-08 19:23:11 +00:00
Benedikt Peetz 6a10974efb fix(flake.nix): Don't remove the `.tri` api spec file when building 2024-05-08 21:03:42 +02:00
Silas Schöffel 4fcdc1c8ea
style(repl): import TrinitrixUi from absolute path 2024-05-06 16:18:42 +02:00
Silas Schöffel 3ebd171e61
fix(flake): add buildinputs to devShell
This fixes a regression introduced in
cc13ec2867 which caused the devShell
to lack some dependencies required to build trinitrix
2024-05-06 15:51:41 +02:00
Benedikt Peetz 940d82561d style(treewide): Format and improve the headers
This commit represents one run of
`./scripts/renew_copyright_headers.sh`.
2024-05-04 21:06:17 +02:00
Benedikt Peetz a779fa250d fix(scripts/renew_copyright_header): Update to the new copyright text 2024-05-04 21:00:15 +02:00
Benedikt Peetz d7e4159a26 fix(licensure): Add support for lua, svg and drawio files 2024-05-04 20:56:31 +02:00
Benedikt Peetz 6c80698589 chore(treewide): Add up-to-date license headers 2024-05-04 20:55:52 +02:00
Benedikt Peetz a801f12a6e fix(.licensure.yml): Also ignore `.png` files 2024-05-04 20:44:53 +02:00
Benedikt Peetz 8ee69bf3b8 fix(config/lua): Mark deprecated, until the lua support is back again 2024-05-04 20:44:20 +02:00
Benedikt Peetz 9f38d2e600 chore(.gitignore): Ignore generate directories 2024-05-04 20:43:58 +02:00
Benedikt Peetz 8228e2fd60 chore(treewide): Add some missing licenses 2024-05-04 20:43:16 +02:00
Benedikt Peetz cc13ec2867 build(treewide): Update trinitrix/core to the modern standard 2024-05-04 20:40:02 +02:00
Benedikt Peetz 42c5a58e6c build(.envrc): Add some paths to the PATH 2024-05-04 20:12:25 +02:00
Benedikt Peetz ebc336faa3 test(valgrind): Add a script to test for memory leaks 2024-05-04 20:12:00 +02:00
Benedikt Peetz 0fe5fe8b59 build(Cargo): Update 2024-05-04 20:07:52 +02:00
Benedikt Peetz 23e98fc474 build({makefile,build.rs}): Add the required tooling to build the plugin and trinitrix 2024-05-04 20:07:12 +02:00
Benedikt Peetz 7fdc752490 feat(ui/repl): Get the development repl into a useful shape
This repl is not really meant for user, as it's quite features striped.
Its main goal is to enable a faster debugging turnabout time.
2024-05-04 20:05:05 +02:00
Benedikt Peetz 88f323d030 feat(config/c): Translate the example lua config to c 2024-05-04 20:04:00 +02:00
Benedikt Peetz e8a3370dce fix(src/config/so): Ensure that the plugin keeps running 2024-05-04 20:03:02 +02:00
Benedikt Peetz d76f279a05 refactor(src/ui): Allow for a repl 2024-05-04 17:43:30 +02:00
Benedikt Peetz 08c4724a94 refactor(src): Remove all matrix related code
This obviously is a big regression, but having this matrix code in the
core trinitrix tree is no longer planned. And if we start writing the
matrix cbs, referring to this commit should be possible.
2024-05-04 15:43:31 +02:00
Benedikt Peetz c233b30a52 fix(src): Ensure that the new c api can actually be used 2024-05-04 15:00:58 +02:00
Benedikt Peetz a39a0875a3 fix(src): Adapt the code to compile with trixy
The term "to compile" was specifically chosen, as this code does nothing
more. I would honestly be surprised if it worked in this state.
2024-05-03 21:25:09 +02:00
Benedikt Peetz 6ef6bea61c chore(Cargo): Update to the new external crates
Note that this commit does not contain the needed code changes
2024-05-03 21:23:26 +02:00
Benedikt Peetz 55316f295d
docs(branding): Init 2023-12-24 07:43:36 +01:00
Benedikt Peetz dae7bb272b
chore(trinitry): Extract to separate repository 2023-12-23 22:14:17 +01:00
Benedikt Peetz 617e223064
build(trinitry/Cargo.toml): Remove unneeded dependencies 2023-12-23 22:07:14 +01:00
Benedikt Peetz 83cf118bc9
build(update.sh): Do not append to the `src/tests.rs` file 2023-12-23 22:07:11 +01:00
Benedikt Peetz 21f981f434
build(update.sh): Add trinitry to the crates to update 2023-12-23 22:06:17 +01:00
Benedikt Peetz 103944f605
tests(trinitry): Add some sort of fuzzing 2023-12-23 22:05:41 +01:00
Benedikt Peetz 2c51bf073e
feat(trinitry): Initialize the parsing crate 2023-12-23 22:05:38 +01:00
Benedikt Peetz fcdfb4488b
chore(trixy, keymaps): Extract the libraries to their own repository 2023-12-23 21:58:19 +01:00
Benedikt Peetz d95b26655f
chore(trixy-lang_parser): Apply clippy's suggestions 2023-12-22 20:56:36 +01:00
Benedikt Peetz 26e0bbb972
feat(trixy-lang_parser): Provide an api 2023-12-22 20:39:02 +01:00
Benedikt Peetz 70c4cc6f18
feat(trixy-lang_parser): Add support for doc comments
Parsing right now works by simply comparing the input string:
```
"/" -> <comment_tokenizer> -> "/" -> <normal_comment>
                          |-> "//" -> <doc_comment>
```

A better method to do this though would be to turn "//" and "///" into
keywords and simply leave the parsing to the parser module not the
tokenizer.
2023-12-22 20:32:43 +01:00
Benedikt Peetz 3503e5250c
feat(trixy-lang_parser): Add type checking (2nd stage parsing) 2023-12-22 14:57:39 +01:00
Benedikt Peetz 370aac4395
feat(trixy-lang_parser): Add support for Type
This includes rust like generic types like:
```
Option<T>
Result<T, E>
```
2023-12-19 17:27:13 +01:00