Built-in Widgets¶
AGroupBox¶
-
class
libqtile.widget.AGroupBox(**config)[source]¶ A widget that graphically displays the current group
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border'000000'group box border color borderwidth3Current group border width center_alignedFalsecenter-aligned group box font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None.
Backlight¶
-
class
libqtile.widget.Backlight(**config)[source]¶ A simple widget to show the current brightness of a monitor
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color backlight_name'acpi_video0'ACPI name of a backlight device brightness_file'brightness'Name of file with the current brightness in /sys/class/backlight/backlight_name font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{percent: 2.0%}'Display format markupFalseWhether or not to use pango markup max_brightness_file'max_brightness'Name of file with the maximum brightness in /sys/class/backlight/backlight_name paddingNonePadding. Calculated if None. step10Percent of backlight every scroll changed update_interval0.2The delay in seconds between updates
Battery¶
-
class
libqtile.widget.Battery(**config)[source]¶ A simple but flexible text-based battery widget
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color battery_name'BAT0'ACPI name of a battery, usually BAT0 charge_char'^'Character to indicate the battery is charging discharge_char'V'Character to indicate the battery is discharging energy_full_fileNoneName of file with the maximum energy in /sys/class/power_supply/battery_name energy_now_fileNoneName of file with the current energy in /sys/class/power_supply/battery_name error_message'Error'Error message if something is wrong font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{char} {percent:2.0%} {hour:d}:{min:02d}'Display format hide_thresholdNoneHide the text when there is enough energy low_foreground'FF0000'Font color on low battery low_percentage0.1Indicates when to use the low_foreground color 0 < x < 1 markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. power_now_fileNoneName of file with the current power draw in /sys/class/power_supply/battery_name status_file'status'Name of status file in /sys/class/power_supply/battery_name update_delay60The delay in seconds between updates
BatteryIcon¶
-
class
libqtile.widget.BatteryIcon(**config)[source]¶ Battery life indicator widget.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color battery_name'BAT0'ACPI name of a battery, usually BAT0 custom_icons{}dict containing key->filename icon map energy_full_fileNoneName of file with the maximum energy in /sys/class/power_supply/battery_name energy_now_fileNoneName of file with the current energy in /sys/class/power_supply/battery_name font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. power_now_fileNoneName of file with the current power draw in /sys/class/power_supply/battery_name status_file'status'Name of status file in /sys/class/power_supply/battery_name theme_path'/home/docs/checkouts/readthedocs.org/user_builds/qtile/checkouts/v0.11.0/libqtile/resources/battery-icons'Path of the icons update_delay60The delay in seconds between updates
BitcoinTicker¶
-
class
libqtile.widget.BitcoinTicker(**config)[source]¶ A bitcoin ticker widget, data provided by the coinbase.com API. Defaults to displaying currency in whatever the current locale is. Examples:
- ::
# display the average price of bitcoin in local currency widget.BitcoinTicker()
# display it in Euros: widget.BitcoinTicker(currency=”EUR”)
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color currency''The currency the value that bitcoin is displayed in dataNonePost Data font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour headers{}Extra Headers jsonTrueIs Json? markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. parseNoneParse Function update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. urlNoneUrl user_agent'Qtile'Set the user agent xmlFalseIs XML?
CPUGraph¶
-
class
libqtile.widget.CPUGraph(**config)[source]¶ Display CPU usage graph
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border_color'215578'Widget border color border_width2Widget border width core'all'Which core to show (all/0/1/2/…) fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color line_width3Line width margin_x3Margin X margin_y3Margin Y samples100Count of graph samples. start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
Canto¶
-
class
libqtile.widget.Canto(**config)[source]¶ Display RSS feeds updates using the canto console reader
Supported bar orientations: horizontal only
key default description all_format'{number}'All feeds display format backgroundNoneWidget background color feeds[]List of feeds to display, empty for all fetchFalseWhether to fetch new items on update font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup one_format'{name}: {number}'One feed display format paddingNonePadding. Calculated if None. update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle.
CheckUpdates¶
-
class
libqtile.widget.CheckUpdates(**config)[source]¶ Shows number of pending updates in different unix systems
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color colour_have_updates'ffffff'Colour when there are updates. colour_no_updates'ffffff'Colour when there’s no updates. display_format'Updates: {updates}'Display format if updates available distro'Arch'Name of your distribution executeNoneCommand to execute on click font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval60Update interval in seconds.
Clipboard¶
-
class
libqtile.widget.Clipboard(width=CALCULATED, **config)[source]¶ Display current clipboard contents
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color blacklist['keepassx']list with blacklisted wm_class, sadly not every clipboard window sets them, keepassx does.Clipboard contents from blacklisted wm_classes will be replaced by the value of blacklist_text.blacklist_text'***********'text to display when the wm_class is blacklisted font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup max_width10maximum number of characters to display (None for all, useful when width is bar.STRETCH) paddingNonePadding. Calculated if None. selection'CLIPBOARD'the selection to display(CLIPBOARD or PRIMARY) timeout10Default timeout (seconds) for display text, None to keep forever
Clock¶
-
class
libqtile.widget.Clock(**config)[source]¶ A simple but flexible text-based clock
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'%H:%M'A Python datetime format string markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. timezoneNoneThe timezone to use for this clock, e.g. “US/Central” (or anything in /usr/share/zoneinfo). None means the default timezone. update_interval1.0Update interval for the clock
Cmus¶
-
class
libqtile.widget.Cmus(**config)[source]¶ A simple Cmus widget.
Show the artist and album of now listening song and allow basic mouse control from the bar:
- toggle pause (or play if stopped) on left click;
- skip forward in playlist on scroll up;
- skip backward in playlist on scroll down.
Cmus (https://cmus.github.io) should be installed.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup max_chars0Maximum number of characters to display in widget. noplay_color'cecece'Text colour when not playing. paddingNonePadding. Calculated if None. play_color'00ff00'Text colour when playing. update_interval0.5Update Time in seconds.
Countdown¶
-
class
libqtile.widget.Countdown(**config)[source]¶ A simple countdown timer text widget
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color datedatetime.datetime(2018, 3, 1, 4, 35, 4, 839518)The datetime for the endo of the countdown font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{D}d {H}h {M}m {S}s'Format of the displayed text. Available variables:{D} == days, {H} == hours, {M} == minutes, {S} seconds. markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval1.0Update interval in seconds for the clock
CurrentLayout¶
-
class
libqtile.widget.CurrentLayout(width=CALCULATED, **config)[source]¶ Display the name of the current layout of the current group of the screen, the bar containing the widget, is on.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None.
CurrentLayoutIcon¶
-
class
libqtile.widget.CurrentLayoutIcon(**config)[source]¶ Display the icon representing the current layout of the current group of the screen on which the bar containing the widget is.
If you are using custom layouts, a default icon with question mark will be displayed for them. If you want to use custom icon for your own layout, for example, FooGrid, then create a file named “layout-foogrid.png” and place it in ~/.icons directory. You can as well use other directories, but then you need to specify those directories in custom_icon_paths argument for this plugin.
The order of icon search is:
- dirs in custom_icon_paths config argument
- ~/.icons
- built-in qtile icons
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color custom_icon_paths[]List of folders where to search icons beforeusing built-in icons or icons in ~/.icons dir. This can also be used to providemissing icons for custom layouts. Defaults to empty list. font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. scale1Scale factor relative to the bar height. Defaults to 1
CurrentScreen¶
-
class
libqtile.widget.CurrentScreen(width=CALCULATED, **config)[source]¶ Indicates whether the screen this widget is on is currently active or not
Supported bar orientations: horizontal only
key default description active_color'00ff00'Color when screen is active active_text'A'Text displayed when the screen is active backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour inactive_color'ff0000'Color when screen is inactive inactive_text'I'Text displayed when the screen is inactive markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None.
DF¶
-
class
libqtile.widget.DF(**config)[source]¶ Disk Free Widget
By default the widget only displays if the space is less than warn_space.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{p} ({uf}{m}|{r:.0f}%)'String format (p: partition, s: size, f: free space, uf: user free space, m: measure, r: ratio (uf/s)) markupFalseWhether or not to use pango markup measure'G'Measurement (G, M, B) paddingNonePadding. Calculated if None. partition'/'the partition to check space update_interval60The update interval. visible_on_warnTrueOnly display if warning warn_color'ff0000'Warning color warn_space2Warning space in scale defined by the measureoption.
DebugInfo¶
-
class
libqtile.widget.DebugInfo(**config)[source]¶ Displays debugging infos about selected window
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None.
GenPollText¶
-
class
libqtile.widget.GenPollText(**config)[source]¶ A generic text widget that polls using poll function to get the text
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour funcNonePoll Function markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle.
GenPollUrl¶
-
class
libqtile.widget.GenPollUrl(**config)[source]¶ A generic text widget that polls an url and parses it using parse function
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color dataNonePost Data font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour headers{}Extra Headers jsonTrueIs Json? markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. parseNoneParse Function update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. urlNoneUrl user_agent'Qtile'Set the user agent xmlFalseIs XML?
GmailChecker¶
-
class
libqtile.widget.GmailChecker(**config)[source]¶ A simple gmail checker
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color email_path'INBOX'email_path fmt'inbox[%s],unseen[%s]'fmt font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. passwordNonepassword status_only_unseenFalseOnly show unseen messages update_interval30Update time in seconds. usernameNoneusername
GroupBox¶
-
class
libqtile.widget.GroupBox(**config)[source]¶ A widget that graphically displays the current group. All groups are displayed by their label. If the label of a group is the empty string that group will not be displayed.
Supported bar orientations: horizontal only
key default description active'FFFFFF'Active group font colour backgroundNoneWidget background color borderwidth3Current group border width center_alignedFalsecenter-aligned group box disable_dragFalseDisable dragging and dropping of group names on widget font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour highlight_color['000000', '282828']Active group highlight color when using ‘line’ highlight method. highlight_method'border'Method of highlighting (‘border’, ‘block’, ‘text’, or ‘line’)Uses *_border color settings inactive'404040'Inactive group font colour invert_mouse_wheelFalseWhether to invert mouse wheel group movement markupFalseWhether or not to use pango markup other_current_screen_border'404040'Border or line colour for group on other screen when focused. other_screen_border'404040'Border or line colour for group on other screen when unfocused. paddingNonePadding. Calculated if None. roundedTrueTo round or not to round box borders spacingNoneSpacing between groups(if set to None, will be equal to margin_x) this_current_screen_border'215578'Border or line colour for group on this screen when focused. this_screen_border'215578'Border or line colour for group on this screen when unfocused. urgent_alert_method'border'Method for alerting you of WM urgent hints (one of ‘border’, ‘text’, ‘block’, or ‘line’) urgent_border'FF0000'Urgent border or line color urgent_text'FF0000'Urgent group font color use_mouse_wheelTrueWhether to use mouse wheel events visible_groupsNoneGroups that will be visible. If set to None or [], all groups will be visible.Visible groups are identified by name not by their displayed label.
HDDBusyGraph¶
-
class
libqtile.widget.HDDBusyGraph(**config)[source]¶ Display HDD busy time graph
Parses /sys/block/<dev>/stat file and extracts overall device IO usage, based on
io_ticks’s value. See https://www.kernel.org/doc/Documentation/block/stat.txtSupported bar orientations: horizontal only
key default description backgroundNoneWidget background color border_color'215578'Widget border color border_width2Widget border width device'sda'Block device to display info for fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color line_width3Line width margin_x3Margin X margin_y3Margin Y samples100Count of graph samples. start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
HDDGraph¶
-
class
libqtile.widget.HDDGraph(**config)[source]¶ Display HDD free or used space graph
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border_color'215578'Widget border color border_width2Widget border width fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color line_width3Line width margin_x3Margin X margin_y3Margin Y path'/'Partition mount point. samples100Count of graph samples. space_type'used'free/used start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
IdleRPG¶
-
class
libqtile.widget.IdleRPG(**config)[source]¶ A widget for monitoring and displaying IdleRPG stats.
# display idlerpg stats for the player 'pants' on freenode's #idlerpg widget.IdleRPG(url="http://xethron.lolhosting.net/xml.php?player=pants")
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color dataNonePost Data font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'IdleRPG: {online} TTL: {ttl}'Display format headers{}Extra Headers jsonFalseNot json :) markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. parseNoneParse Function update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. urlNoneUrl user_agent'Qtile'Set the user agent xmlTrueIs XML :)
Image¶
-
class
libqtile.widget.Image(length=CALCULATED, width=None, **config)[source]¶ Display a PNG image on the bar
Supported bar orientations: horizontal and vertical
key default description backgroundNoneWidget background color filenameNonePNG Image filename. Can contain ‘~’ scaleTrueEnable/Disable image scaling
ImapWidget¶
-
class
libqtile.widget.ImapWidget(**config)[source]¶ Email IMAP widget
This widget will scan one of your imap email boxes and report the number of unseen messages present. I’ve configured it to only work with imap with ssl. Your password is obtained from the Gnome Keyring.
Writing your password to the keyring initially is as simple as (changing out <userid> and <password> for your userid and password):
create the file ~/.local/share/python_keyring/keyringrc.cfg with the following contents:
[backend] default-keyring=keyring.backends.Gnome.Keyring keyring-path=/home/<userid>/.local/share/keyring/
Execute the following python shell script once:
#!/usr/bin/env python3 import keyring user = <userid> password = <password> keyring.set_password(‘imapwidget’, user, password)
mbox names must include the path to the mbox (except for the default INBOX). So, for example if your mailroot is ~/Maildir, and you want to look at the mailbox at HomeMail/fred, the mbox setting would be: mbox=’”~/Maildir/HomeMail/fred”’. Note the nested sets of quotes! Labels can be whatever you choose, of course.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour label'INBOX'label for display markupFalseWhether or not to use pango markup mbox'"INBOX"'mailbox to fetch paddingNonePadding. Calculated if None. serverNoneemail server name update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. userNoneemail username
KeyboardKbdd¶
-
class
libqtile.widget.KeyboardKbdd(**config)[source]¶ Widget for changing keyboard layouts per window, using kbdd
kbdd should be installed and running, you can get it from: https://github.com/qnikst/kbdd
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color coloursNoneforeground colour for each layouteither ‘None’ or a list of colours.example: [‘ffffff’, ‘E6F0AF’]. configured_keyboards['us', 'ir']your predefined list of keyboard layouts.example: [‘us’, ‘ir’, ‘es’] font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval1Update interval in seconds.
KeyboardLayout¶
-
class
libqtile.widget.KeyboardLayout(**config)[source]¶ Widget for changing and displaying the current keyboard layout
It requires setxkbmap to be available in the system.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color configured_keyboards['us']A list of predefined keyboard layouts represented as strings. For example: [‘us’, ‘us colemak’, ‘es’, ‘fr’]. font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval1Update time in seconds.
KhalCalendar¶
-
class
libqtile.widget.KhalCalendar(**config)[source]¶ Khal calendar widget
This widget will display the next appointment on your Khal calendar in the qtile status bar. Appointments within the “reminder” time will be highlighted.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'FFFF33'default foreground color lookahead7days to look ahead in the calendar markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. reminder_color'FF0000'color of calendar entries during reminder time remindertime10reminder time in minutes update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle.
LaunchBar¶
-
class
libqtile.widget.LaunchBar(progs=None, width=CALCULATED, **config)[source]¶ A widget that display icons to launch the associated command
Parameters: progs :
a list of tuples
(software_name, command_to_execute, comment), for example:('thunderbird', 'thunderbird -safe-mode', 'launch thunderbird in safe mode') ('logout', 'qshell:self.qtile.cmd_shutdown()', 'logout from qtile')
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color default_icon'/usr/share/icons/oxygen/256x256/mimetypes/application-x-executable.png'Default icon not found padding2Padding between icons
Maildir¶
-
class
libqtile.widget.Maildir(**config)[source]¶ A simple widget showing the number of new mails in maildir mailboxes
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour maildirPath'~/Mail'path to the Maildir folder markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. separator' 'the string to put between the subfolder strings. subFolders[]The subfolders to scan (e.g. [{“path”: “INBOX”, “label”: “Home mail”}, {“path”: “spam”, “label”: “Home junk”}] update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle.
Memory¶
-
class
libqtile.widget.Memory(**config)[source]¶ Displays memory usage
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color fmt'{MemUsed}M/{MemTotal}M'see /proc/meminfo for field names font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle.
MemoryGraph¶
-
class
libqtile.widget.MemoryGraph(**config)[source]¶ Displays a memory usage graph
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border_color'215578'Widget border color border_width2Widget border width fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color line_width3Line width margin_x3Margin X margin_y3Margin Y samples100Count of graph samples. start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
Moc¶
-
class
libqtile.widget.Moc(**config)[source]¶ A simple MOC widget.
Show the artist and album of now listening song and allow basic mouse control from the bar:
- toggle pause (or play if stopped) on left click;
- skip forward in playlist on scroll up;
- skip backward in playlist on scroll down.
MOC (http://moc.daper.net) should be installed.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup max_chars0Maximum number of characters to display in widget. noplay_color'cecece'Text colour when not playing. paddingNonePadding. Calculated if None. play_color'00ff00'Text colour when playing. update_interval0.5Update Time in seconds.
Mpd¶
-
class
libqtile.widget.Mpd(**config)[source]¶ A widget for the Music Player Daemon (MPD)
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color do_color_progressTrueWhether to indicate progress in song by altering message color fmt_playing'%a - %t [%v%%]'Format string to display when playing/paused fmt_stopped'Stopped [%v%%]'Format strings to display when stopped font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour foreground_progress'ffffff'Foreground progress colour host'localhost'Host to connect to, can be either an IP address or a UNIX socket path markupFalseWhether or not to use pango markup msg_nc'Mpd off'Which message to show when we’re not connected paddingNonePadding. Calculated if None. passwordNonePassword to use port6600Port to connect to reconnectFalseAttempt to reconnect if initial connection failed reconnect_interval1Time to delay between connection attempts. update_interval0.5Update Time in seconds.
Mpd2¶
-
class
libqtile.widget.Mpd2(status_format='{play_status} {artist}/{title} [{repeat}{random}{single}{consume}{updating_db}]', prepare_status={'single': <function option.<locals>._convert>, 'repeat': <function option.<locals>._convert>, 'consume': <function option.<locals>._convert>, 'random': <function option.<locals>._convert>, 'updating_db': <function option.<locals>._convert>}, **config)[source]¶ A widget for Music Player Daemon (MPD) based on python-mpd2
This widget exists since python-mpd library is no more supported.
Parameters: status_format :
format string to display status
Full list of values see in
statusandcurrentsongcommandshttps://musicpd.org/doc/protocol/command_reference.html#command_status https://musicpd.org/doc/protocol/tags.html
Default:
{play_status} {artist}/{title} [{repeat}{random}{single}{consume}{updating_db}]
play_statusis string fromplay_statesdictNote that
timeproperty of song renamed tofulltimeto prevent conflicts with status information during formating.prepare_status :
dict of functions for replace values in status with custom
f(status, key, space_element) => strSupported bar orientations: horizontal only
key default description backgroundNoneWidget background color commandNoneExecutable command by “command” shortcut font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour host'localhost'Host of mpd server idletimeout5MPDClient idle command timeout keys{'command': None, 'next': 5, 'previous': 4, 'stop': 3, 'toggle': 1}Shortcut keys markupFalseWhether or not to use pango markup no_connection'No connection'Text when mpd is disconnected paddingNonePadding. Calculated if None. passwordNonePassword for auth on mpd server play_states{'pause': '⏸', 'play': '▶', 'stop': '■'}Play state mapping port6600Port of mpd server space'-'Space keeper timeout30MPDClient timeout update_interval1Interval of update widget
Mpris¶
-
class
libqtile.widget.Mpris(**config)[source]¶ MPRIS player widget
A widget which displays the current track/artist of your favorite MPRIS player. It should work with all players which implement a reasonably correct version of MPRIS, though I have only tested it with clementine.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup name'clementine'Name of the widget objname'org.mpris.clementine'DBUS object to connect to paddingNonePadding. Calculated if None. stop_pause_text'Stopped'Optional text to display when in the stopped/paused state
Mpris2¶
-
class
libqtile.widget.Mpris2(**config)[source]¶ An MPRIS 2 widget
A widget which displays the current track/artist of your favorite MPRIS player. It should work with all MPRIS 2 compatible players which implement a reasonably correct version of MPRIS, though I have only tested it with audacious. This widget scrolls the text if neccessary and information that is displayed is configurable.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color display_metadata['xesam:title', 'xesam:album', 'xesam:artist']Which metadata identifiers to display. See http://www.freedesktop.org/wiki/Specifications/mpris-spec/metadata/#index5h3 for available values font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup name'audacious'Name of the MPRIS widget. objname'org.mpris.MediaPlayer2.audacious'DBUS MPRIS 2 compatible player identifier- Find it out with dbus-monitor - Also see: http://specifications.freedesktop.org/mpris-spec/latest/#Bus-Name-Policy paddingNonePadding. Calculated if None. scroll_chars30How many chars at once to display. scroll_interval0.5Scroll delay interval. scroll_wait_intervals8Wait x scroll_interval beforescrolling/removing text stop_pause_textNoneOptional text to display when in the stopped/paused state
Net¶
-
class
libqtile.widget.Net(**config)[source]¶ Displays interface down and up speed
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour interface'wlan0'The interface to monitor markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval1The update interval.
NetGraph¶
-
class
libqtile.widget.NetGraph(**config)[source]¶ Display a network usage graph
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color bandwidth_type'down'down(load)/up(load) border_color'215578'Widget border color border_width2Widget border width fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color interface'auto'Interface to display info for (‘auto’ for detection) line_width3Line width margin_x3Margin X margin_y3Margin Y samples100Count of graph samples. start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
Notify¶
-
class
libqtile.widget.Notify(width=CALCULATED, **config)[source]¶ A notify widget
Supported bar orientations: horizontal only
key default description audiofileNoneAudiofile played during notifications backgroundNoneWidget background color default_timeoutNoneDefault timeout (seconds) for notifications font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour foreground_low'dddddd'Foreground low priority colour foreground_urgent'ff0000'Foreground urgent priority colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None.
Pacman¶
-
class
libqtile.widget.Pacman(**config)[source]¶ Shows number of available updates
Needs the pacman package manager installed. So will only work in Arch Linux installation.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color executeNoneCommand to execute on click font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. unavailable'ffffff'Unavailable Color - no updates. update_interval60The update interval.
Pomodoro¶
-
class
libqtile.widget.Pomodoro(**config)[source]¶ Pomodoro technique widget
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color color_active'00ff00'Colour then pomodoro is running color_break'ffff00'Colour then it is break time color_inactive'ff0000'Colour then pomodoro is inactive fmt'%s'fmt font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour length_long_break15Length of a long break in minutes length_pomodori25Length of one pomodori in minutes length_short_break5Length of a short break in minutes markupFalseWhether or not to use pango markup notification_onTrueTurn notifications on num_pomodori4Number of pomodori to do in a cycle paddingNonePadding. Calculated if None. prefix_active''Prefix then app is active prefix_break'B 'Prefix during short break prefix_inactive'POMODORO'Prefix when app is inactive prefix_long_break'LB 'Prefix during long break prefix_paused'PAUSE'Prefix during pause update_interval1Update interval in seconds, if none, the widget updates whenever the event loop is idle.
Prompt¶
-
class
libqtile.widget.Prompt(name='prompt', **config)[source]¶ A widget that prompts for user input
Input should be started using the
.startInput()method on this class.Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color bell_style'audible'Alert at the begin/end of the command history. Possible values: ‘audible’, ‘visual’ and None. cursorTrueShow a cursor cursor_color'bef098'Color for the cursor and text over it. cursorblink0.5Cursor blink rate. 0 to disable. font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour ignore_dups_historyFalseDon’t store duplicates in history markupFalseWhether or not to use pango markup max_history100Commands to keep in history. 0 for no limit. paddingNonePadding. Calculated if None. prompt'{prompt}: 'Text displayed at the prompt record_historyTrueKeep a record of executed commands visual_bell_color'ff0000'Color for the visual bell (changes prompt background). visual_bell_time0.2Visual bell duration (in seconds).
Sep¶
-
class
libqtile.widget.Sep(height_percent=None, **config)[source]¶ A visible widget separator
Supported bar orientations: horizontal and vertical
key default description backgroundNoneWidget background color foreground'888888'Separator line colour. linewidth1Width of separator line. padding2Padding on either side of separator. size_percent80Size as a percentage of bar size (0-100).
She¶
-
class
libqtile.widget.She(**config)[source]¶ Widget to display the Super Hybrid Engine status
Can display either the mode or CPU speed on eeepc computers.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color device'/sys/devices/platform/eeepc/cpufv'sys path to cpufv font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'speed'Type of info to display “speed” or “name” markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval0.5Update Time in seconds.
Spacer¶
-
class
libqtile.widget.Spacer(length=STRETCH, width=None)[source]¶ Just an empty space on the bar
Often used with length equal to bar.STRETCH to push bar widgets to the right or bottom edge of the screen.
Parameters: length :
Length of the widget. Can be either
bar.STRETCHor a length in pixels.width :
DEPRECATED, same as
length.Supported bar orientations: horizontal and vertical
key default description backgroundNoneWidget background color
StockTicker¶
-
class
libqtile.widget.StockTicker(**config)[source]¶ A stock ticker widget, based on the alphavantage API. Users must acquire an API key from https://www.alphavantage.co/support/#api-key
The widget defaults to the TIME_SERIES_INTRADAY API function (i.e. stock symbols), but arbitrary Alpha Vantage API queries can be made by passing extra arguments to the constructor.
- ::
# Display AMZN widget.StockTicker(apikey=…, symbol=”AMZN”)
# Display BTC widget.StockTicker(apikey=…, function=”DIGITAL_CURRENCY_INTRADAY”, symbol=”BTC”, market=”USD”)
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color dataNonePost Data font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour function'TIME_SERIES_INTRADAY'The default API function to query headers{}Extra Headers interval'1min'The default latency to query jsonTrueIs Json? markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. parseNoneParse Function update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. urlNoneUrl user_agent'Qtile'Set the user agent xmlFalseIs XML?
SwapGraph¶
-
class
libqtile.widget.SwapGraph(**config)[source]¶ Display a swap info graph
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border_color'215578'Widget border color border_width2Widget border width fill_color'1667EB.3'Fill color for linefill graph frequency1Update frequency in seconds graph_color'18BAEB'Graph color line_width3Line width margin_x3Margin X margin_y3Margin Y samples100Count of graph samples. start_pos'bottom'Drawer starting position (‘bottom’/’top’) type'linefill'‘box’, ‘line’, ‘linefill’
Systray¶
TaskList¶
-
class
libqtile.widget.TaskList(**config)[source]¶ Displays the icon and name of each window in the current group
Contrary to WindowTabs this is an interactive widget. The window that currently has focus is highlighted.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color border'215578'Border colour borderwidth2Current group border width font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour highlight_method'border'Method of highlighting (one of ‘border’ or ‘block’) Uses *_border color settings icon_sizeNoneIcon size. (Calculated if set to None. Icons are hidden if set to 0.) max_title_widthNoneMax size in pixels of task title.(if set to None, as much as available.) roundedTrueTo round or not to round borders spacingNoneSpacing between tasks.(if set to None, will be equal to margin_x) txt_floating'V 'Text representation of the floating window state. e.g., “V ” or “🗗 “ txt_maximized'[] 'Text representation of the maximized window state. e.g., “[] ” or “🗖 “ txt_minimized'_ 'Text representation of the minimized window state. e.g., “_ ” or “🗕 “ unfocused_borderNoneBorder color for unfocused windows. Affects only hightlight_method ‘border’ and ‘block’. Defaults to None, which means no special color. urgent_alert_method'border'Method for alerting you of WM urgent hints (one of ‘border’ or ‘text’) urgent_border'FF0000'Urgent border color
TextBox¶
-
class
libqtile.widget.TextBox(text=' ', width=CALCULATED, **config)[source]¶ A flexible textbox that can be updated from bound keys, scripts, and qshell
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Text font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont pixel size. Calculated if None. foreground'#ffffff'Foreground colour. markupFalseWhether or not to use pango markup paddingNonePadding left and right. Calculated if None.
ThermalSensor¶
-
class
libqtile.widget.ThermalSensor(**config)[source]¶ Widget to display temperature sensor information
For using the thermal sensor widget you need to have lm-sensors installed. You can get a list of the tag_sensors executing “sensors” in your terminal. Then you can choose which you want, otherwise it will display the first available.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour foreground_alert'ff0000'Foreground colour alert markupFalseWhether or not to use pango markup metricTrueTrue to use metric/C, False to use imperial/F paddingNonePadding. Calculated if None. show_tagFalseShow tag sensor tag_sensorNoneTag of the temperature sensor. For example: “temp1” or “Core 0” threshold70If the current temperature value is above, then change to foreground_alert colour update_interval2Update interval in seconds
Volume¶
-
class
libqtile.widget.Volume(**config)[source]¶ Widget that display and change volume
If theme_path is set it draw widget as icons.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color cardidNoneCard Id channel'Master'Channel device'default'Device Name emojiFalseUse emoji to display volume states, only if theme_pathis not set.The specified font needs to contain the correct unicode characters.font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour get_volume_commandNoneCommand to get the current volume markupFalseWhether or not to use pango markup mute_commandNoneMute command padding3Padding left and right. Calculated if None. step2Volume change for up an down commands in percentage.Only used if volume_up_commandandvolume_down_commandare not set.theme_pathNonePath of the icons update_interval0.2Update time in seconds. volume_down_commandNoneVolume down command volume_up_commandNoneVolume up command
Wallpaper¶
-
class
libqtile.widget.Wallpaper(**config)[source]¶ Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color directory'~/Pictures/wallpapers/'Wallpaper Directory font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour labelNoneUse a fixed label instead of image name. markupFalseWhether or not to use pango markup one_screenFalseTreat the whole X display as one screen when setting wallpapers (does not work if wallpaper_command is set). paddingNonePadding. Calculated if None. random_selectionFalseIf set, use random initial wallpaper and randomly cycle through the wallpapers. wallpaperNoneWallpaper wallpaper_commandNoneWallpaper command
WindowName¶
-
class
libqtile.widget.WindowName(width=STRETCH, **config)[source]¶ Displays the name of the window that currently has focus
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. for_current_screenFalseinstead of this bars screen use currently active screen foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. show_stateTrueshow window status before window name
WindowTabs¶
-
class
libqtile.widget.WindowTabs(**config)[source]¶ Displays the name of each window in the current group. Contrary to TaskList this is not an interactive widget. The window that currently has focus is highlighted.
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. selected('<', '>')Selected task indicator separator' | 'Task separator text.
Wlan¶
-
class
libqtile.widget.Wlan(**config)[source]¶ Displays Wifi ssid and quality
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color disconnected_message'Disconnected'String to show when the wlan is diconnected. font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{essid} {quality}/70'Display format. For percents you can use “{essid} {percent:2.0%}” interface'wlan0'The interface to monitor markupFalseWhether or not to use pango markup paddingNonePadding. Calculated if None. update_interval1The update interval.
YahooWeather¶
-
class
libqtile.widget.YahooWeather(**config)[source]¶ A weather widget, data provided by the Yahoo! Weather API.
Format options:
- astronomy_sunrise
- astronomy_sunset
- atmosphere_humidity
- atmosphere_visibility
- atmosphere_pressure
- atmosphere_rising
- condition_text
- condition_code
- condition_temp
- condition_date
- location_city
- location_region
- location_country
- units_temperature
- units_distance
- units_pressure
- units_speed
- wind_chill
Supported bar orientations: horizontal only
key default description backgroundNoneWidget background color dataNonePost Data down'v'symbol for falling atmospheric pressure font'sans'Default font fontshadowNonefont shadow color, default is None(no shadow) fontsizeNoneFont size. Calculated if None. foreground'ffffff'Foreground colour format'{location_city}: {condition_temp} °{units_temperature}'Display format headers{}Extra Headers jsonTrueIs Json? locationNoneLocation to fetch weather for. Ignored if woeid is set. markupFalseWhether or not to use pango markup metricTrueTrue to use metric/C, False to use imperial/F paddingNonePadding. Calculated if None. parseNoneParse Function steady's'symbol for steady atmospheric pressure up'^'symbol for rising atmospheric pressure update_interval600Update interval in seconds, if none, the widget updates whenever the event loop is idle. urlNoneUrl user_agent'Qtile'Set the user agent woeidNoneWhere On Earth ID. Auto-calculated if location is set. xmlFalseIs XML?