X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/bbe3f997e64ee6fd9c61fffdd4a833cf728bf722..6e6914aa5b1b9e5de69f0769a64b83202122a7d0:/Utilities.md diff --git a/Utilities.md b/Utilities.md index d9790da..2171503 100644 --- a/Utilities.md +++ b/Utilities.md @@ -1,12 +1,119 @@ -[<- home](https://github.com/copycat-killer/lain/wiki) +markup +------ + +Made markup easier! + +First, require it like this: + + local markup = lain.util.markup + +then you can call its functions: + + +-- markup + | + |`-- bold() Set bold. + |`-- italic() Set italicized text. + |`-- strike() Set strikethrough text. + |`-- underline() Set underlined text. + |`-- monospace() Set monospaced text. + |`-- big() Set bigger text. + |`-- small() Set smaller text. + |`-- font() Set the font of the text. + | + |`--+ bg + | | + | |`-- color() Set background color. + | |`-- focus() Set focus background color. + | |`-- normal() Set normal background color. + | `-- urgent() Set urgent background color. + | + |`--+ fg + | | + | |`-- color() Set foreground color. + | |`-- focus() Set focus foreground color. + | |`-- normal() Set normal foreground color. + | `-- urgent() Set urgent foreground color. + | + |`-- focus() Set both foreground and background focus colors. + |`-- normal() Set both foreground and background normal colors. + `-- urgent() Set both foreground and background urgent colors. + +they all take one argument, which is the text to markup, except `fg.color` and `bg.color`: + + markup.fg.color(text, color) + markup.bg.color(text, color) + +dynamic tagging +--------------- + +That is: + +- add a new tag; +- rename current tag; +- move current tag; +- remove current tag. + +If you delete a tag, any rule set on it shall be broken, so be careful. + +Use it with key bindings like these: + + awful.key({ modkey, "Shift" }, "n", function () lain.util.add_tag(mypromptbox) end), + awful.key({ modkey, "Shift" }, "r", function () lain.util.rename_tag(mypromptbox) end), + awful.key({ modkey, "Shift" }, "r", function () lain.util.move_tag(1) end), -- move to next tag + awful.key({ modkey, "Shift" }, "r", function () lain.util.move_tag(-1) end), -- move to previous tag + awful.key({ modkey, "Shift" }, "d", function () lain.util.remove_tag() end), + +**Note** that these function won't work properly with [Copland theme](https://github.com/copycat-killer/awesome-copycats) or any other configuration that already uses a dynamic tagging module like [Eminent](https://github.com/copycat-killer/awesome-copycats/tree/master/eminent). + +useless\_gaps\_resize +--------------------- + +Changes `beautiful.useless_gaps_width` on the fly. + +The function takes an integer argument, being the amount of pixel to add/remove to gaps. + +You could use it with these keybindings: + + -- On the fly useless gaps change + awful.key({ altkey, "Control" }, "+", function () lain.util.useless_gaps_resize(1) end), + awful.key({ altkey, "Control" }, "-", function () lain.util.useless_gaps_resize(-1) end), + +where `altkey=Mod1`, or you could use it like this: + + mywidget:buttons(awful.util.table.join ( + awful.button({}, 4, function() lain.util.useless_gaps_resize(-1) end), + awful.button({}, 5, function() lain.util.useless_gaps_resize(1) end) + end) + )) + +so when hovering the mouse over `mywidget`, you can adjust useless gaps size by scrolling with the mouse wheel. + +tag\_view\_nonempty +------------------- + +This function lets you jump to the next/previous non-empty tag. +It takes two arguments: + +* `direction`: `1` for next non-empty tag, `-1` for previous. +* `sc`: Screen which the taglist is in. Default is `mouse.screen` or `1`. This + argument is optional. + +You can use it with key bindings like these: + + -- Non-empty tag browsing + awful.key({ altkey }, "Left", function () lain.util.tag_view_nonempty(-1) end), + awful.key({ altkey }, "Right", function () lain.util.tag_view_nonempty(1) end), + +where `altkey = "Mod1"`. menu\_clients\_current\_tags ---------------------------- -Similar to `awful.menu.clients()`, but this menu only shows the clients +Similar to `awful.menu.clients`, but this menu only shows the clients of currently visible tags. Use it with a key binding like this: - awful.key({ "Mod1" }, "Tab", function() + awful.key({ "Mod1" }, "Tab", + function() awful.menu.menu_keys.down = { "Down", "Alt_L", "Tab", "j" } awful.menu.menu_keys.up = { "Up", "k" } lain.util.menu_clients_current_tags({ width = 350 }, { keygrabber = true }) @@ -26,8 +133,7 @@ the currently used layout. Use it with a client keybinding like this: ... ) -If you want to "de-magnify" it, just reset the clients floating state to -`false` (hit `Mod4`+`CTRL`+`Space`, for example). +If you want to "de-magnify" it, just retype the keybinding. niceborder\_{focus, unfocus} ---------------------------- @@ -54,33 +160,4 @@ This requires to define additional colors in your `theme.lua`. For example: theme.border_normal_highprio = "#A03333" theme.border_focus_lowprio = "#3333FF" - theme.border_normal_lowprio = "#333366" - -tag\_view\_nonempty -------------------- - -This function lets you jump to the next/previous non-empty tag. -It takes two arguments: - -* `direction`: `1` for next non-empty tag, `-1` for previous. -* `sc`: Screen which the taglist is in. Default is `mouse.screen` or `1`. This - argument is optional. - -You can use it with key bindings like these: - - -- Non-empty tag browsing - awful.key({ altkey }, "Left", function () lain.util.tag_view_nonempty(-1) end), - awful.key({ altkey }, "Right", function () lain.util.tag_view_nonempty(1) end), - -where `altkey = "Mod1"`. - -prompt\_rename\_tag -------------------- - -This function enables you to dynamically rename the current tag you have focused. - -You can use it with a key binding like this: - - awful.key({ modkey, "Shift" }, "r", function () lain.util.prompt_rename_tag(mypromptbox) end) - -Credits goes to [minism](https://bbs.archlinux.org/viewtopic.php?pid=1315135#p1315135). \ No newline at end of file + theme.border_normal_lowprio = "#333366" \ No newline at end of file