19 Dec 2014

Tags: awesome-widgets,pytextmonitor

Related posts:
FFXIV Astrologian guide
How to upload screenshots to S3 from linux
Awesome Widgets - Introducing custom formatters and macros

Awesome Widgets - bells and whistles

The paper deals with settings of a custom scripts and graphical bars in the new version of Awesome Widgets (2.1).

Introduction

For a start it is highly recommended copy file $HOME/.kde4/share/config/extsysmon.conf after widget update before you open widget settings, because old and new script settings are incompatible. Also I should note that these features can be configured from graphical interface, but I will describe how it can be done by simply editing the desktop file.

General

Items are stored in the two directories: /usr/share/awesomewidgets/%TYPE%/ and $HOME/.local/share/awesomewidgets/%TYPE%/ (path may be differ in depend from your distro). Settings in the home directory have a higher priority that global ones. Common settings for all extensions are:

Field Required Value Default
Name yes name none
Comment no comment empty
X-AW-Active no whether or not the item is active, N/A for bars true
X-AW-ApiVersion yes API compatibility index. Do not touch it if you don't know what does it mean 0
X-AW-Interval no update interval in standard widget intervals, N/A for bars. Will be ignored if any of X-AW-Schedule or X-AW-Socket set 1
X-AW-Number yes unique number which will be associated with the item random number which is less than 1000
X-AW-Schedule no cron-like update schedule. Allowed fields minutes hours days month weekdays, allowed additional characters -, *, , (empty)
X-AW-Socket no path to socket file. Extension will be activated in case if socket triggered (empty)

Bars

Directory is desktops, configuration files have the following fields:

Field Required Value Default
X-AW-Custom yes does value have custom formula or not, boolean false
X-AW-Value yes bar value. The following tags are available cpu*, gpu, mem, swap, hdd*, bat. In case of X-AW-Custom=true it uses syntax similar to lambda functions cpu
X-AW-Max no maximal possible value, float 100.0
X-AW-Min no minimal possible value, float 0.0
X-AW-Count no points count, used in case of X-AW-Type=Graph 100
X-AW-ActiveColor yes active part fill in format R,G,B,A or full path to image 0,0,0,130
X-AW-InactiveColor yes inactive part fill in format R,G,B,A or full path to image 255,255,255,130
X-AW-Type yes bar type. The following types are supported Horizontal, Vertical, Circle, Graph Horizontal
X-AW-Direction yes the fill direction. The following variants are supported LeftToRight, RightToLeft LeftToRight
X-AW-Height yes height, pixels 100
X-AW-Width yes width, pixels 100

Quotes

To provide these data to users Yahoo! Finance API iis used. Directory is quotes, configuration files have the following fields:

Field Required Value Default
X-AW-Ticker yes ticker from Yahoo! Finance system EURUSD=X

Requests

GET requests to external sites. Directory is requests, configuration files have the following fields:

Field Required Value Default
X-AW-Url yes url for GET request https://httpbin.org/get

Scripts

Directory is scripts, configuration files have the following fields:

Field Required Value Default
Exec yes path to executable file /usr/bin/true
X-AW-Prefix no prefix to executable file. Usually it's not required, but in other you may want to specify interpreter for example
X-AW-Redirect no stream redirection. The following variants are available stderr2stdout, nothing, stdout2stderr, swap. stderr will be available, if you run application in the debug mode nothing
X-AW-Filters no comma separated filters from awesomewidgets-extscripts-filters.json

Upgrade

Directory is upgrade, configuration files have the following fields:

Field Required Value Default
Exec yes path to executable file /usr/bin/true
X-AW-Filter no the regexp which will be applied to command output. If set X-AW-Null will be ignored
X-AW-Null no the number of lines which should be skipped in output 0

Weather

The weather uses data and API from Yahoo! Weather. Directory is weather, configuration files have the following fields:

Field Required Value Default
X-AW-City yes city London
X-AW-Country yes two-letter country code uk
X-AW-Image no use images as weather icon or text. false
X-AW-Provider yes weather provider. Supported ones are Yahoo, OWM OWM
X-AW-TS yes time to which weather should be. 0 is a current weather, 1 - weather 3 hours later, etc 0