2021-02-17 07:01:29 +01:00
## 📑 Tabbed <!-- {docsify-ignore} -->
2023-01-28 15:27:21 +01:00
Tabbed implements a tab container. There are several different themes for the tabs as well.
2021-02-17 07:01:29 +01:00
### Usage
You should bind these functions to keys in order to use the tabbed module effectively:
```lua
2021-10-13 17:26:04 +02:00
bling.module.tabbed.pick() -- picks a client with your cursor to add to the tabbing group
bling.module.tabbed.pop() -- removes the focused client from the tabbing group
2023-01-28 15:27:21 +01:00
bling.module.tabbed.iter() -- iterates through the currently focused tabbing group
2021-10-13 17:26:04 +02:00
bling.module.tabbed.pick_with_dmenu() -- picks a client with a dmenu application (defaults to rofi, other options can be set with a string parameter like "dmenu")
2021-07-27 19:54:29 +02:00
bling.module.tabbed.pick_by_direction(dir) -- picks a client based on direction ("up", "down", "left" or "right")
2021-02-17 07:01:29 +01:00
```
### Theme Variables
```lua
-- For tabbed only
2021-10-13 17:26:04 +02:00
theme.tabbed_spawn_in_tab = false -- whether a new client should spawn into the focused tabbing container
2021-02-17 07:01:29 +01:00
-- For tabbar in general
theme.tabbar_ontop = false
2021-10-18 09:47:25 +02:00
theme.tabbar_radius = 0 -- border radius of the tabbar
theme.tabbar_style = "default" -- style of the tabbar ("default", "boxes" or "modern")
theme.tabbar_font = "Sans 11" -- font of the tabbar
theme.tabbar_size = 40 -- size of the tabbar
theme.tabbar_position = "top" -- position of the tabbar
theme.tabbar_bg_normal = "#000000" -- background color of the focused client on the tabbar
theme.tabbar_fg_normal = "#ffffff" -- foreground color of the focused client on the tabbar
theme.tabbar_bg_focus = "#1A2026" -- background color of unfocused clients on the tabbar
theme.tabbar_fg_focus = "#ff0000" -- foreground color of unfocused clients on the tabbar
theme.tabbar_bg_focus_inactive = nil -- background color of the focused client on the tabbar when inactive
theme.tabbar_fg_focus_inactive = nil -- foreground color of the focused client on the tabbar when inactive
theme.tabbar_bg_normal_inactive = nil -- background color of unfocused clients on the tabbar when inactive
theme.tabbar_fg_normal_inactive = nil -- foreground color of unfocused clients on the tabbar when inactive
theme.tabbar_disable = false -- disable the tab bar entirely
2021-02-17 07:01:29 +01:00
2021-04-28 13:25:20 +02:00
-- the following variables are currently only for the "modern" tabbar style
2021-10-13 17:26:04 +02:00
theme.tabbar_color_close = "#f9929b" -- chnges the color of the close button
theme.tabbar_color_min = "#fbdf90" -- chnges the color of the minimize button
theme.tabbar_color_float = "#ccaced" -- chnges the color of the float button
2021-02-17 07:01:29 +01:00
```
2021-04-28 13:25:20 +02:00
### Preview
2021-02-17 07:01:29 +01:00
Modern theme:
< img src = "https://imgur.com/omowmIQ.png" width = "600" / >
2021-10-13 17:26:04 +02:00
*screenshot by [JavaCafe01 ](https://github.com/JavaCafe01 )*
2021-07-27 16:36:20 +02:00
### Signals
2023-01-23 19:20:23 +01:00
The tabbed module emits a few signals for the purpose of integration:
2021-07-27 16:36:20 +02:00
```lua
-- bling::tabbed::update -- triggered whenever a tabbed object is updated
2021-10-13 17:26:04 +02:00
-- tabobj -- the object that caused the update
2021-08-18 20:39:33 +02:00
-- bling::tabbed::client_added -- triggered whenever a new client is added to a tab group
2021-10-13 17:26:04 +02:00
-- tabobj -- the object that the client was added to
-- client -- the client that added
2021-08-18 20:39:33 +02:00
-- bling::tabbed::client_removed -- triggered whenever a client is removed from a tab group
2021-10-13 17:26:04 +02:00
-- tabobj -- the object that the client was removed from
-- client -- the client that was removed
2021-08-18 20:39:33 +02:00
-- bling::tabbed::changed_focus -- triggered whenever a tab group's focus is changed
2021-10-13 17:26:04 +02:00
-- tabobj -- the modified tab group
2021-07-27 16:36:20 +02:00
```