Merge pull request #249 from nuno-silva/ram-colors

ram-widget: support custom colors and document arguments
This commit is contained in:
streetturtle 2021-04-11 20:36:09 -04:00 committed by GitHub
commit 83856a188b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 6 deletions

View File

@ -4,6 +4,18 @@ This widget shows the RAM usage. When clicked another widget appears with more d
![screenshot](./out.gif)
## Customization
It is possible to customize widget by providing a table with all or some of the following config parameters:
| Name | Default | Description |
|---|---|---|
| `color_used` | `beautiful.bg_urgent` | Color for used RAM |
| `color_free` | `beautiful.fg_normal` | Color for free RAM |
| `color_buf` | `beautiful.border_color_active` | Color for buffers/cache |
| `widget_show_buf` | `false` | Whether to display buffers/cache separately in the tray widget. If `false`, buffers/cache are considered free RAM. |
| `timeout` | 1 | How often (in seconds) the widget refreshes |
## Installation
Please refer to the [installation](https://github.com/streetturtle/awesome-wm-widgets#installation) section of the repo.

View File

@ -11,13 +11,18 @@ local ramgraph_widget = {}
local function worker(user_args)
local args = user_args or {}
local timeout = args.timeout or 1
local color_used = args.color_used or beautiful.bg_urgent
local color_free = args.color_free or beautiful.fg_normal
local color_buf = args.color_buf or beautiful.border_color_active
local widget_show_buf = args.widget_show_buf or false
--- Main ram widget shown on wibar
ramgraph_widget = wibox.widget {
border_width = 0,
colors = {
beautiful.bg_urgent, -- used
beautiful.fg_normal -- free
color_used,
color_free,
color_buf,
},
display_labels = false,
forced_width = 25,
@ -33,9 +38,9 @@ local function worker(user_args)
forced_height = 200,
forced_width = 400,
colors = {
beautiful.bg_urgent, -- used
beautiful.fg_normal, -- free
beautiful.border_color_active, -- buf_cache
color_used,
color_free,
color_buf, -- buf_cache
},
},
shape = gears.shape.rounded_rect,
@ -56,7 +61,11 @@ local function worker(user_args)
total, used, free, shared, buff_cache, available, total_swap, used_swap, free_swap =
stdout:match('(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*(%d+)%s*Swap:%s*(%d+)%s*(%d+)%s*(%d+)')
widget.data = { used, total-used }
if widget_show_buf then
widget.data = { used, free, buff_cache }
else
widget.data = { used, total-used }
end
if popup.visible then
popup:get_widget().data_list = {