Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature: add terminal ui backend based on NoTTY #6996

Conversation

Alizter
Copy link
Collaborator

@Alizter Alizter commented Feb 4, 2023

We add a new display mode tui which is based on NoTTY. This allows us to programmatically describe images before they are rasterized to the terminal.

It also makes reasoning about what is drawn to the terminal easier in the future, if we ever want to communicate displays over RPC.

I plan to reimplement the TUI in the future with a more sophisticated UI. For now, this subsumes the behavior of old.

@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from c82067b to eadde66 Compare February 4, 2023 20:16
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/notty_tui.ml Outdated Show resolved Hide resolved
@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from eadde66 to 3b4bda3 Compare February 4, 2023 21:36
@snowleopard snowleopard removed their request for review February 5, 2023 04:30
@snowleopard
Copy link
Collaborator

I temporarily removed myself from the set of reviewers. @rgrinberg Once you are done reviewing and are happy with this PR, could you please ping me, so I can take a look?

src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from 3b4bda3 to d5d8de0 Compare February 5, 2023 21:37
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
src/dune_tui/dune_tui.ml Outdated Show resolved Hide resolved
@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from d5d8de0 to cdb5505 Compare February 5, 2023 23:39
@Alizter Alizter mentioned this pull request Feb 5, 2023
Copy link
Member

@rgrinberg rgrinberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@snowleopard your turn

@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from cdb5505 to 9c67a40 Compare February 6, 2023 00:51
@rgrinberg
Copy link
Member

@Alizter could you rebase once more?

@Alizter
Copy link
Collaborator Author

Alizter commented Feb 21, 2023

@rgrinberg Not until #6994 is merged (otherwise it is a lot of work).

@rgrinberg
Copy link
Member

#6994 has been merged

@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from 9c67a40 to bc145c9 Compare March 2, 2023 19:44
<!-- ps-id: a91fcabe-9c8d-485c-a1e8-c781ed4658bd -->

Signed-off-by: Ali Caglayan <alizter@gmail.com>
@Alizter Alizter force-pushed the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch from bc145c9 to 66438e5 Compare March 2, 2023 19:48
@rgrinberg rgrinberg merged commit 8d88ee8 into ocaml:main Mar 2, 2023
@rgrinberg
Copy link
Member

Thanks

@Alizter Alizter deleted the ps/rr/feature__add_terminal_ui_backend_based_on_notty branch March 2, 2023 23:33
@nojb nojb mentioned this pull request Jun 5, 2023
nojb added a commit to nojb/dune that referenced this pull request Jun 6, 2023
jchavarri added a commit to jchavarri/dune that referenced this pull request Nov 15, 2023
* main: (56 commits)
  feature: add terminal ui backend based on NoTTY (ocaml#6996)
  doc(coq): update documentation about coqdep
  fix(rules): don't descend into automatic subdirs infinitely (ocaml#7208)
  benchmark: add warm run (ocaml#7198)
  test: vendored and public libs (ocaml#7197)
  test: use sh in concurrent test (ocaml#7205)
  fix: custom log file path (ocaml#7200)
  test(melange): add test exercising ocaml#7104 (ocaml#7204)
  test(melange): add a test that introduces rules in the target dir (ocaml#7196)
  test: duplicate packages in vendor dir (ocaml#7194)
  melange: interpret `melc --where` as a list of `:`-separated paths (ocaml#7176)
  perf: add synthetic benchmark (ocaml#7189)
  Test case for bug report (ocaml#6725)
  Add test illustrating ocaml#6575 (ocaml#6576)
  chore: add rule streaming proposal (ocaml#7195)
  test(stdlib): merge wrapped/unwrapped tests
  test: move all stdlib tests
  fix: allow unwrapped libraries with `(stdlib ..)`
  test: demonstrate crash in modules.ml when `(stdlib .. )` used with `(wrapped false)`
  fix(install): respect display options (ocaml#7116)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants