]> git.madduck.net Git - etc/awesome.git/blobdiff - Widgets.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:

Removed a misplaced space in mpd_notification_preset variable declaration
[etc/awesome.git] / Widgets.md
index 86c1f466555a77716f83a001d08dc9e87934a401..8a8945b74bfcf576fb3a0fa8aaebb6ff6286268d 100644 (file)
@@ -1,10 +1,33 @@
+General usage
+-------------
+
 Every widget is output by a `function`.
 
-Unless otherwise expressly noted, `function` returns a `wibox.widget.textbox`.
+For some widgets, `function` returns a `wibox.widget.textbox`, for others a table to be used for notification and update purposes.
+
+Every widget may take either a table or a list of variables as argument.
+
+If it takes a table, you have to define a function variable called `settings` in it, in order to make your customizations.
+
+To markup the textbox, call `widget:set_markup(...)` within `settings`.
+
+You can feed `set_markup` with predefined arguments, see the sections for all the details.
 
-We say this because, for some widget, `function` return a table to be used for notification and update purposes.
+`widget` is a textbox, so you can threat it like any other `wibox.widget.textbox`.
 
-Almost all widgets can be set by an input function called `settings`: you can markup textboxes and do other customizations within it. 
+Here follows an example: 
+
+    mycpu = lain.widgets.cpu({
+        timeout = 4,
+        settings = function()
+            widget:set_markup("Cpu " .. cpu_now.usage)
+        end
+    })
+
+If you want to see more complex applications, check [awesome-copycats](https://github.com/copycat-killer/awesome-copycats).
+
+Index
+-----
 
 - [alsa](https://github.com/copycat-killer/lain/wiki/alsa)
 - [alsabar](https://github.com/copycat-killer/lain/wiki/alsabar)
@@ -20,4 +43,10 @@ Almost all widgets can be set by an input function called `settings`: you can ma
 - [net](https://github.com/copycat-killer/lain/wiki/net)
 - [sysload](https://github.com/copycat-killer/lain/wiki/sysload)
 - [temp](https://github.com/copycat-killer/lain/wiki/temp)
-- [yawn](https://github.com/copycat-killer/lain/wiki/yawn)
\ No newline at end of file
+- [yawn](https://github.com/copycat-killer/lain/wiki/yawn)
+
+Users contributed
+----------------
+
+- [task](https://github.com/copycat-killer/lain/wiki/task)
+- [tpbat](https://github.com/copycat-killer/lain/wiki/tpbat)
\ No newline at end of file