Finalize command based setup #14

Closed
bpeetz wants to merge 0 commits from commands into master
Owner

Multiple things are still missing:

  • Table type support
  • Error messages and Status messages in ci input field (not in the status panel)
  • Better ux in the ci input field (scrollback more than one line, syntax highlighting, &c)
  • For further checkboxes take a look at the FIXMEs and TODOs in the code.

The base ci although is already usable and in some way useful

Multiple things are still missing: - [ ] Table type support - [ ] Error messages and Status messages in ci input field (not in the status panel) - [ ] Better ux in the ci input field (scrollback more than one line, syntax highlighting, &c) - For further checkboxes take a look at the `FIXME`s and `TODO`s in the code. The base ci although is already usable and in some way useful
bpeetz added 18 commits 2023-07-26 19:30:03 +00:00
e792334d21
Feat(treewide): Add a feature based layout and repl subcommand
Compiling the whole tui stack, just to debug the lua command line seems
counterproductive to me. This allows to just compile the needed parts
for a basic lua repl.

As of yet the repl is just a mock-up, as the event handling can, as of
right now, not easily be separated from the tui.

To activate specific features add specify the on the cargo command line
like this:
```
cargo run --features "cli tui"
```
or add them to the `default` feature set in the `Cargo.toml`.
b67dbf8e31
Refactor(treewide): Remove the repl, reuse of e. handling is hard
The event handling is deeply ingrained in the ui code, the commands are
focused around the ui code, in short splitting of the event handling and
command system from the ui is intentionally hard and in my opinion not
really worth it right now.
d46a0c3a24
Fix(lua_command::handle): Move lua_command handler to separate thread
This makes it possible to have lua code execute commands and receive
their output value, without risking a deadlock.
dc5d08f1a3
Refactor(language_macros): Complete rewrite
This **should** have everything the other implementation had, but the
api is implemented in a way, which is more in line with the expectation
raised at the lua functions (being that they are only wrappers over the
command api, and nothing more).

Aside of that, this version is actually documented!
57b01f0dbb
Fix(app::command_interface): Add a (workaround) print function
The default print function prints to stdout, which obviously
doesn't work with a tui application. This wrapper however is a
rather poor workaround, as it only works with strings (lua `print`
calls `tostring` to turn non string values in something printable).
fdb6ab1c29
Fix(app::command_interface): Add a `greet_multiple()` func to test tables
This is, like the `greet` function only here to debug the lua api. It
outputs a table.
363a0f8fc4
Fix(handlers::command): Add the missing displayOutput handler
This handler is called by the lua executor, to show the final output of
a lua execution.
80a8c9ccf5
Fix(handlers::command): Only send success on real success
The `room_message_send()` function told the user about a successful sent
room message, even if that was not the case.
bpeetz force-pushed commands from 7adea99703 to 84c13fd6f8 2023-07-26 20:27:22 +00:00 Compare
Owner

Merged manually

Merged manually
antifallobst closed this pull request 2023-07-26 20:45:55 +00:00
This repo is archived. You cannot comment on pull requests.
No description provided.