]> git.llucax.com Git - personal/ion3-config.git/blob - default/cfg_statusbar.lua
71ac8995af3ddce892e376f14d2268f1ddb0cc61
[personal/ion3-config.git] / default / cfg_statusbar.lua
1 --
2 -- Ion statusbar module configuration file
3 --
4
5
6 --defwinprop {
7 --    class = "Docker",
8 --    statusbar = "dock"
9 --}
10
11 -- Create a statusbar
12 mod_statusbar.create{
13     -- First screen, bottom left corner
14     screen = 0,
15     pos    = 'bl',
16     -- Set this to true if you want a full-width statusbar
17     fullsize = false,
18     -- Swallow systray windows
19     systray = true,
20
21     -- Template. Tokens %string are replaced with the value of the
22     -- corresponding meter. Currently supported meters are:
23     --   date          date
24     --   load          load average (1min, 5min, 15min)
25     --   load_Nmin     N minute load average (N=1, 5, 15)
26     --   mail_new      mail count (mbox format file $MAIL)
27     --   mail_unread   mail count
28     --   mail_total    mail count
29     --   mail_*_new    mail count (from an alternate mail folder, see below)
30     --   mail_*_unread mail count
31     --   mail_*_total  mail count
32     --
33     -- Space preceded by % adds stretchable space for alignment of variable
34     -- meter value widths. > before meter name aligns right using this
35     -- stretchable space , < left, and | centers.
36     -- Meter values may be zero-padded to a width preceding the meter name.
37     -- These alignment and padding specifiers and the meter name may be
38     -- enclosed in braces {}.
39     --
40     -- %filler causes things on the marker's sides to be aligned left and
41     -- right, respectively, and %systray is a placeholder for system tray
42     -- windows and icons.
43     --
44     template = "%mpd %filler [mails: %exec_maildir | im: %exec_psi] " ..
45         "[mem: %mem_hused/%mem_cached/%mem_total | " ..
46         "swap: %mem_sw_used/%mem_sw_total | load: %load] %date %systray",
47     --template="[ %date || load: %05load_1min || mail: %02mail_new/%02mail_total ] %filler%systray",
48     --template="[ %date || load:% %>load ] %filler %systray_dock",
49 }
50
51
52 -- Launch ion-statusd. This must be done after creating any statusbars
53 -- for necessary statusd modules to be parsed from the templates.
54 mod_statusbar.launch_statusd{
55     -- Date meter
56     date = {
57         -- ISO-8601 date format with additional abbreviated day name
58         date_format = '%a %d, %H:%M',
59         -- Finnish etc. date format
60         --date_format = '%a %d.%m.%Y %H:%M',
61         -- Locale date format (usually shows seconds, which would require
62         -- updating rather often and can be distracting)
63         --date_format = '%c',
64
65         -- Additional date formats.
66         --[[
67         formats = {
68             time = '%H:%M', -- %date_time
69         }
70         --]]
71     },
72
73     -- Load meter
74     load = {
75         --update_interval=10*1000,
76         --important_threshold=1.5,
77         --critical_threshold=4.0,
78     },
79
80     -- Mail meter
81     --
82     -- To monitor more mbox files, add them to the files table.  For
83     -- example, add mail_work_new and mail_junk_new to the template
84     -- above, and define them in the files table:
85     --
86     -- files = { work = "/path/to/work_email", junk = "/path/to/junk" }
87     --
88     -- Don't use the keyword 'spool' as it's reserved for mbox.
89     --mail = {
90     --    update_interval = 60*1000,
91     --    mbox = os.getenv("MAIL"),
92     --    files = {},
93     --},
94
95     -- MPD
96     mpd = {
97         -- netcat path
98         netcat = 'nc',
99
100         -- 500 or less makes seconds increment relatively smoothly while playing
101         update_interval = 1000,
102
103         -- mpd server info (localhost:6600 are mpd defaults)
104         address = "localhost",
105         port    = 6600,
106
107         -- mpd password (if any)
108         password = nil,
109
110         -- seconds to consider the mpd in 'important' hint (0 never, -1 always)
111         important_time = 15, -- seconds
112
113         -- display template
114         -- ---
115         -- can use the following:
116         --   track metadata: %artist, %title, %num, %album, %year, %len
117         --   current track position: %pos
118         --   escape for the percent character: %%
119         template = "%title by %artist, track %num from %album, %year " ..
120                     "(%pos/%len) [%volume]",
121
122         -- output debug filename (false or nil for no debug output)
123         debug = false,
124     },
125
126     -- Memory monitor
127     mem = {
128         used_alarm    = 75,   -- Limits percentaje
129         used_sw_alarm = 75,
130         units         = "m", -- "g" , "m" or "k"
131     },
132
133     -- Scripts
134     exec = {
135         psi = {
136             program = '~/.ion3/psi_status_server.py 1', -- 1 segundo
137             retry_delay = 1 * 1000, -- 1 segundo
138             hint_regexp = {
139                 important = '^[0-9]',
140             },
141         },
142         maildir = {
143             program = '~/.ion3/maildir_status_server.py 10', -- 10 segundos
144             retry_delay = 10 * 1000, -- 10 segundos
145             hint_regexp = {
146                 important = '([0-9]+)',
147             },
148         },
149     },
150 }
151
152 -- vim: set et sw=4 sts=4 :