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

Graphical output in i3bar #3578

Closed
aioobe opened this issue Jan 5, 2019 · 5 comments
Closed

Graphical output in i3bar #3578

aioobe opened this issue Jan 5, 2019 · 5 comments

Comments

@aioobe
Copy link

aioobe commented Jan 5, 2019

I'm submitting a…

[x] Feature Request

Current Behavior

i3bar is only capable of displaying text. Unicode icon "characters" only get you so far.

Desired Behavior

I'd love to be able to show custom graphics. Primarily to be able to have something like the gnome shell system monitor applet.

I think one would even be able to stick with the text based interface and use base64 encoded png files. We're talking × images anyway.

Please let me know if this is something doable

@Airblader
Copy link
Member

I don't think we'd want to extend the protocol much to make this work, but the idea of sending some base64 encoded stream is at least interesting. I'd be somewhat concerned wiith the performance of this, though, and things like text width prediction would have to be changed etc.

I'm currently not decided on this; my initial response would be to reject this since it doesn't really fit the look&feel of i3 that stays away from graphics. We can certainly keep the issue open for now, though.

There certainly are much more advanced and feature-rich bar applications out there where this would fit much, much better (if they can't already do it anyway – I haven't followed polybar in a while).

@anarcat
Copy link

anarcat commented Dec 20, 2019

couldn't this be a matter of "simply" allowing some metrics to be graphed using a simple timed histogram? the way i use this feature in (say) taffybar right now is with the cpu metric: there's a square box that gets filled from left to right over a 30 second window. 100% is a full bar, 0% is nothing. it looks like this:

image

here CPU usage just starting rising in the last few seconds, but was generally quiet in the last 30 seconds. memory usage has been steady in the last 30 seconds. in taffybar you can pick the length of time you wish for the graph as well.

any metric could be plotted like this, and i wouldn't make the caller plot the metrics. it's just a way to display output...

would that make sense?

@Airblader
Copy link
Member

No, because it isn't as easy as it sounds and we'd quickly have to add a dozen or so options (min, max, time frame, colors, ...). It'd also be a significant shift as i3bar would suddenly have to actually keep track of data over time. It'd be even more difficult because we can receive an update at any point in time and therefore actual bucketing would be involved etc etc etc.

@orestisfl
Copy link
Member

Closing because of extra complexity and the existence of third-party alternatives

We are generally happy with the current feature set of i3 and instead focus on maintenance such as stability and fixing bugs. New features will rarely be considered if they require additional configuration and/or commands, or if they add significant complexity (either through the exposed configuration or mental complexity) to the project.

https://github.com/i3/i3/blob/next/.github/CONTRIBUTING.md

@anarcat
Copy link

anarcat commented Jan 13, 2021

thanks for the response and support in any case! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants