]>
git.madduck.net Git - etc/awesome.git/blobdiff - alsabar.md
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
-Shows and controls alsa volume with a progressbar.
+[<- widgets](https://github.com/copycat-killer/lain/wiki/Widgets)
+Shows and controls alsa volume with a progressbar; provides tooltips, notifications, and color changes at mute/unmute switch.
-- alsa-utils (of course)
-
-Plus tooltips, notifications, and color changes at mute/unmute switch.
-
- myvolumebar = lain.widgets.alsabar()
+ volume = lain.widgets.alsabar()
* Left click: Launch `alsamixer` in your `terminal`.
* Right click: Mute/unmute.
* Left click: Launch `alsamixer` in your `terminal`.
* Right click: Mute/unmute.
Variable | Meaning | Type | Default
--- | --- | --- | ---
Variable | Meaning | Type | Default
--- | --- | --- | ---
+`timeout` | Refresh timeout seconds | int | 4
+`settings` | User settings | function | empty function
`width` | Bar width | int | 63
`height` | Bar height | int | 1
`ticks` | Set bar ticks on | boolean | true
`width` | Bar width | int | 63
`height` | Bar height | int | 1
`ticks` | Set bar ticks on | boolean | true
--- | --- | --- | ---
`font` | Notifications font | string | The one defined in `beautiful.font`
`font_size` | Notifications font size | string | "11"
--- | --- | --- | ---
`font` | Notifications font | string | The one defined in `beautiful.font`
`font_size` | Notifications font size | string | "11"
+`color` | Notifications color | string | `beautiful.fg_normal`
`bar_size` | Wibox height | int | 18
`bar_size` | Wibox height | int | 18
-It's **crucial** to set `notifications.bar_size` to your `mywibox[s]` height,
-**if** you have set it different than default (18).
+It's **crucial** to set `notifications.bar_size` to your `mywibox[s]` height.
-`lain.widgets.alsabar` outputs the following table:
+`settings` can use the following variables:
+
+Variable | Meaning | Type | Values
+--- | --- | --- | ---
+`volume_now.level` | Self explained | int | 0-100
+`volume_now.status` | Device status | string | "on", "off"
+### output table
-Variable | Type
---- | ---
-`widget` | `awful.widget.progressbar`
-`channel` | string
-`step` | string
-`notify` | function
+Variable | Meaning | Type
+--- | --- | ---
+`bar` | The widget | `awful.widget.progressbar`
+`channel` | Alsa channel | string
+`step` | Increase/decrease step | string
+`notify` | The notification | function
-Finally, y ou can control the widget with key bindings like these:
+Y ou can control the widget with key bindings like these:
- -- V olume control
- awful.key({ altkey }, "Up",
+ -- ALSA v olume control
+ awful.key({ altkey }, "Up",
- awful.util.spawn("amixer s set " .. volume.channel .. " " .. volume.step .. "+")
+ awful.util.spawn("amixer -q set " .. volume.channel .. " " .. volume.step .. "+")
- awful.key({ altkey }, "Down",
+ awful.key({ altkey }, "Down",
- awful.util.spawn("amixer s set " .. volume.channel .. " " .. volume.step .. "-")
+ awful.util.spawn("amixer -q set " .. volume.channel .. " " .. volume.step .. "-")
- awful.key({ altkey }, "m",
+ awful.key({ altkey }, "m",
- awful.util.spawn("amixer set Master playback toggle")
+ awful.util.spawn("amixer -q set " .. volume.channel .. " playback toggle")
- awful.key({ altkey, "Control" }, "m",
+ awful.key({ altkey, "Control" }, "m",
- awful.util.spawn("amixer set Master playback 100%", false )
+ awful.util.spawn("amixer -q set " .. volume.channel .. " playback 100%" )