aristocratos / btop

A monitor of resources
Apache License 2.0
21.37k stars 655 forks source link

[REQUEST]Arrange the boxes in btop's main window #779

Open Andy3153 opened 9 months ago

Andy3153 commented 9 months ago

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] I'd like to be able to reorder the boxes (cpu,proc,mem etc.) inside btop. I know there are presets, but these don't allow for moving them wherever I want and to tile them the way I like.

Describe the solution you'd like The simplest design I can think of implies defining how many columns we want and then say what boxes should go in each column, with btop automatically dividing the space equally for them.

If a box appears in more than one columns, then the box should span across the two columns.

If a box appears more than once in a single column, then the box should occupy the space that two boxes would occupy. For example, in cpu cpu cpu mem net, cpu would occupy 3/5ths of the column

In order to make an even number of boxes share a space on an odd number of columns, we could group them with something like parenthesis (ex.: (cpu gpu) )

Additional context Here's an example to describe my solution visually:

Sample layout: bitmap

Sample config:

columns  = 3
column_1 = "(red ylw) cyn cyn blu"
column_2 = "(red ylw) pnk grn grn"
column_3 = "(red ylw) pnk grn grn"

I don't know if it is in your interest to make something like this, if it's doable from a coding standpoint (without rewriting a ton of stuff), but I just wanted to throw in my two cents, because I'd like to be able to say where my boxes would be placed