mirror of
https://gitlab.com/dwt1/dotfiles.git
synced 2026-04-23 03:20:26 +10:00
96 lines
3.2 KiB
Markdown
96 lines
3.2 KiB
Markdown
## Usage
|
|
|
|
[Read here.](https://github.com/copycat-killer/lain/wiki/Widgets#usage)
|
|
|
|
### Description
|
|
|
|
Shows disk space usage for a set partition.
|
|
|
|
Displays a notification when the partition is full or has low space.
|
|
|
|
```lua
|
|
local mypartition = lain.widget.fs()
|
|
```
|
|
|
|
## Input table
|
|
|
|
Variable | Meaning | Type | Default
|
|
--- | --- | --- | ---
|
|
`timeout` | Refresh timeout seconds -| number | 600
|
|
`partition` | Partition to monitor | string | "/"
|
|
`options` | Additional options to pass to [`dfs`](https://github.com/copycat-killer/lain/blob/master/scripts/dfs) | string, in the form `--type='fstype' | --exclude-type='fstype'` | nil
|
|
`notification_preset` | Notification preset | table | See [default `notification_preset`](https://github.com/copycat-killer/lain/wiki/fs#default-notification_preset)
|
|
`followtag` | Display the notification on currently focused screen | boolean | false
|
|
`notify` | Display notifications | string | "on"
|
|
`showpopup` | Display popups with mouse hovering | string, possible values: "on", "off" | "on"
|
|
`settings` | User settings | function | empty function
|
|
|
|
`settings` can use the following `partition` related strings:
|
|
|
|
* `fs_now.size_mb`
|
|
* `fs_now.size_gb`
|
|
* `fs_now.used`
|
|
* `fs_now.used_mb`
|
|
* `fs_now.used_gb`
|
|
* `fs_now.available`
|
|
* `fs_now.available_mb`
|
|
* `fs_now.available_gb`
|
|
|
|
Within `settings`, you can obtain other partition values from internal `fs_info` table. For each partition, the following indexes are available:
|
|
|
|
* `fs_info[other_partition .. " size_mb"]`
|
|
* `fs_info[other_partition .. " size_gb"]`
|
|
* `fs_info[other_partition .. " used_p"]`
|
|
* `fs_info[other_partition .. " used_mb"]`
|
|
* `fs_info[other_partition .. " used_gb"]`
|
|
* `fs_info[other_partition .. " avail_p"]`
|
|
* `fs_info[other_partition .. " avail_mb"]`
|
|
* `fs_info[other_partition .. " avail_gb"]`
|
|
|
|
just like the variables of `fs_now`. Example:
|
|
|
|
```lua
|
|
-- shows root and home partitions percentage used
|
|
local fsroothome = lain.widget.fs({
|
|
settings = function()
|
|
local home_used = tonumber(fs_info["/home used_p"]) or 0
|
|
widget:set_text("/ " .. fs_now.used .. "% | /home " .. home_used .. "% ")
|
|
end
|
|
})
|
|
```
|
|
|
|
Also, `settings` can modify `notification_preset` table. This table will be the preset for the naughty notifications. Check [here](https://awesomewm.org/doc/api/libraries/naughty.html#notify) for the list of variables it can contain.
|
|
|
|
In multiple screen setups, the default behaviour is to show a visual notification pop-up window on the first screen. By setting `followtag` to `true` it will be shown on the currently focused tag screen.
|
|
|
|
### Default `notification_preset`
|
|
|
|
```lua
|
|
notification_preset = {
|
|
font = "Monospace 10",
|
|
fg = "#FFFFFF",
|
|
bg = "#000000"
|
|
}
|
|
```
|
|
|
|
## Output table
|
|
|
|
Variable | Meaning | Type
|
|
--- | --- | ---
|
|
`widget` | The widget | `wibox.widget.textbox`
|
|
`show` | The notification | function
|
|
|
|
You can display the notification with a key binding like this:
|
|
|
|
```lua
|
|
awful.key({ altkey }, "h", function () mypartition.show(seconds, scr) end),
|
|
```
|
|
|
|
where ``altkey = "Mod1"`` and ``show`` arguments, both optionals, are:
|
|
|
|
* `seconds`, notification time in seconds
|
|
* `scr`, screen which to display the notification in
|
|
|
|
## Note
|
|
|
|
Naughty notifications require `notification_preset.font` to be **monospaced**, in order to correctly display the output. |