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

Support Windows Terminal progress UI #47

Open
davidanthoff opened this issue Jun 16, 2023 · 1 comment
Open

Support Windows Terminal progress UI #47

davidanthoff opened this issue Jun 16, 2023 · 1 comment

Comments

@davidanthoff
Copy link

davidanthoff commented Jun 16, 2023

Windows Terminal added support for ConEmu's OSC 9;4 escape sequences a while ago to trigger various nice UI things in the terminal. In particular, one can show a progress bar in the task bar and on the tab for a given Julia instance. I think the best place to add support for that would be here? Essentially all one has to do is emit various escape sequences if on Windows, and it should all work.

Couple questions:

  • My sense is that the current progress logging framework here fundamentally supports multiple progress bars a the same time? There is only one per terminal window, I'm a bit lost how we can handle that?
  • One can also emit certain escape sequences to set an error and warning state for the terminal. I think it would be nice if for example the task bar button showed the red bar when there was an error, and also showed a non-progress-bar-but-something-is-running whenever the REPL is executing code that doesn't do any progress reporting. The problem is that stuff seems more like REPL integration, though... So I'm a bit lost where that kind of code should be...

Some screenshots follow.

Showing a 40% progress in the tab and on the taskbar:

image

image

Showing an error state on the taskbar:

image

Showing the "something is running" on the taskbar, note that this is animated and the little bar is constantly moving:

image

And then there is also a yellow state, not clear to me what we would use that for:

image

@c42f
Copy link
Member

c42f commented Jul 1, 2023

In particular, one can show a progress bar in the task bar and on the tab for a given Julia instance. I think the best place to add support for that would be here?

Sure, sounds great!

There is only one per terminal window, I'm a bit lost how we can handle that?

There's no obviously good way as the multiple progress bars might be unrelated to each other. Maybe we just show the oldest one which was added to the list. That's more likely to represent overall progress if there's nested progress bars.

The problem is that stuff seems more like REPL integration, though

Yes I think that part would have to go in the REPL stdlib

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

No branches or pull requests

2 participants