1waybar-clock(5) User Manual waybar-clock(5)
2
3
4
6 waybar - clock module
7
9 clock module displays current date and time
10
12 $XDG_CONFIG_HOME/waybar/config
13 Per user configuration file
14
16 1. Addressed by clock
17
18 ┌────────────────┬─────────────────┬────────────────┬─────────────────────────────────────────────────┐
19 │ Option │ Typeof │ Default │ Description │
20 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
21 │interval │ integer │ 60 │ The interval in │
22 │ │ │ │ which the infor‐ │
23 │ │ │ │ mation gets │
24 │ │ │ │ polled │
25 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
26 │format │ string │ {:%H:%M} │ The format, how │
27 │ │ │ │ the date and │
28 │ │ │ │ time should be │
29 │ │ │ │ displayed. See │
30 │ │ │ │ format options │
31 │ │ │ │ below │
32 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
33 │timezone │ string │ │ The timezone to │
34 │ │ │ │ display the time │
35 │ │ │ │ in, e.g. Amer‐ │
36 │ │ │ │ ica/New_York. "" │
37 │ │ │ │ represents the │
38 │ │ │ │ system's local │
39 │ │ │ │ timezone. See │
40 │ │ │ │ Wikipedia's un‐ │
41 │ │ │ │ official list of │
42 │ │ │ │ timezones │
43 │ │ │ │ <https://en.wikipedia.org/wiki/List_of_tz_data‐ │
44 │ │ │ │ base_time_zones> │
45 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
46 │timezones │ list of strings │ │ A list of timezones (as in timezone) to use for │
47 │ │ │ │ time display, changed using the scroll wheel. │
48 │ │ │ │ Do not specify timezone option when timezones │
49 │ │ │ │ is specified. "" represents the system's local │
50 │ │ │ │ timezone │
51 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
52 │locale │ string │ │ A locale to be used to display the time. In‐ │
53 │ │ │ │ tended to render times in custom timezones with │
54 │ │ │ │ the proper language and format │
55 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
56 │max-length │ integer │ │ The maximum length in character the module │
57 │ │ │ │ should display │
58 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
59 │rotate │ integer │ │ Positive value to rotate the text label │
60 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
61 │on-click │ string │ │ Command to execute when clicked on the module │
62 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
63 │on-click-middle │ string │ │ Command to execute when you middle clicked on │
64 │ │ │ │ the module using mousewheel │
65 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
66 │on-click-right │ string │ │ Command to execute when you right clicked on │
67 │ │ │ │ the module │
68 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
69 │on-scroll-up │ string │ │ Command to execute when scrolling up on the │
70 │ │ │ │ module │
71 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
72 │on-scroll-down │ string │ │ Command to execute when scrolling down on the │
73 │ │ │ │ module │
74 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
75 │smooth- │ double │ │ Threshold to be used when scrolling │
76 │scrolling- │ │ │ │
77 │threshold │ │ │ │
78 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
79 │tooltip │ bool │ true │ Option to enable tooltip on hover │
80 ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
81 │tooltip-format │ string │ same as format │ Tooltip on hover │
82 └────────────────┴─────────────────┴────────────────┴─────────────────────────────────────────────────┘
83 View all valid format options in strftime(3) or have a look
84 <https://fmt.dev/latest/syntax.html#chrono-specs>
85
86 2. Addressed by clock: calendar
87
88 ┌─────────────┬─────────┬─────────┬──────────────────┐
89 │ Option │ Typeof │ Default │ Description │
90 ├─────────────┼─────────┼─────────┼──────────────────┤
91 │mode │ string │ month │ Calendar view │
92 │ │ │ │ mode. Possible │
93 │ │ │ │ values: │
94 │ │ │ │ year|month │
95 ├─────────────┼─────────┼─────────┼──────────────────┤
96 │mode-mon-col │ integer │ 3 │ Relevant for │
97 │ │ │ │ mode=year. Count │
98 │ │ │ │ of months per │
99 │ │ │ │ row │
100 ├─────────────┼─────────┼─────────┼──────────────────┤
101 │weeks-pos │ integer │ │ The position │
102 │ │ │ │ where week num‐ │
103 │ │ │ │ bers should be │
104 │ │ │ │ displayed. Dis‐ │
105 │ │ │ │ abled when is │
106 │ │ │ │ empty. Possible │
107 │ │ │ │ values: │
108 │ │ │ │ left|right │
109 ├─────────────┼─────────┼─────────┼──────────────────┤
110 │on-scroll │ integer │ 1 │ Value to scroll │
111 │ │ │ │ months/years │
112 │ │ │ │ forward/back‐ │
113 │ │ │ │ ward. Can be │
114 │ │ │ │ negative. Is │
115 │ │ │ │ configured under │
116 │ │ │ │ on-scroll option │
117 └─────────────┴─────────┴─────────┴──────────────────┘
118 3. Addressed by clock: calendar: format
119
120 ┌─────────┬────────┬──────────────────┬───────────────────────┐
121 │ Option │ Typeof │ Default │ Description │
122 ├─────────┼────────┼──────────────────┼───────────────────────┤
123 │months │ string │ │ Format is ap‐ │
124 │ │ │ │ plied to months │
125 │ │ │ │ header(January, │
126 │ │ │ │ Febru‐ │
127 │ │ │ │ ary,...etc.) │
128 ├─────────┼────────┼──────────────────┼───────────────────────┤
129 │days │ string │ │ Format is ap‐ │
130 │ │ │ │ plied to days │
131 ├─────────┼────────┼──────────────────┼───────────────────────┤
132 │weeks │ string │ {:%U} │ Format is ap‐ │
133 │ │ │ │ plied to week │
134 │ │ │ │ numbers. When │
135 │ │ │ │ weekday format │
136 │ │ │ │ is not provided │
137 │ │ │ │ then is used de‐ │
138 │ │ │ │ fault format: │
139 │ │ │ │ '{:%W}' when │
140 │ │ │ │ week starts with │
141 │ │ │ │ Monday, '{:%U}' │
142 │ │ │ │ otherwise │
143 ├─────────┼────────┼──────────────────┼───────────────────────┤
144 │weekdays │ string │ │ Format is ap‐ │
145 │ │ │ │ plied to weeks │
146 │ │ │ │ header(Su,Mo,...etc.) │
147 ├─────────┼────────┼──────────────────┼───────────────────────┤
148 │today │ string │ <b><u>{}</u></b> │ Format is applied to │
149 │ │ │ │ Today │
150 └─────────┴────────┴──────────────────┴───────────────────────┘
151
152 Actions
153 ┌───────────┬───────────────────────────┐
154 │ String │ Action │
155 ├───────────┼───────────────────────────┤
156 │mode │ Switch calendar mode be‐ │
157 │ │ tween year/month │
158 ├───────────┼───────────────────────────┤
159 │tz_up │ Switch to the next pro‐ │
160 │ │ vided time zone │
161 ├───────────┼───────────────────────────┤
162 │tz_down │ Switch to the previous │
163 │ │ provided time zone │
164 ├───────────┼───────────────────────────┤
165 │shift_up │ Switch to the next calen‐ │
166 │ │ dar month/year │
167 ├───────────┼───────────────────────────┤
168 │shift_down │ Switch to the previous │
169 │ │ calendar month/year │
170 └───────────┴───────────────────────────┘
171
173 • {calendar}: Current month calendar
174 • {timezoned_time_list}: List of time in the rest timezones, if more
175 than one timezone is set in the config
176
177
179 1. General
180
181 "clock": {
182 "interval": 60,
183 "format": "{:%H:%M}",
184 "max-length": 25
185 }
186
187 2. Calendar
188
189 "clock": {
190 "format": "{:%H:%M} ",
191 "format-alt": "{:%A, %B %d, %Y (%R)} ",
192 "tooltip-format": "<tt><small>{calendar}</small></tt>",
193 "calendar": {
194 "mode" : "year",
195 "mode-mon-col" : 3,
196 "weeks-pos" : "right",
197 "on-scroll" : 1,
198 "on-click-right": "mode",
199 "format": {
200 "months": "<span color='#ffead3'><b>{}</b></span>",
201 "days": "<span color='#ecc6d9'><b>{}</b></span>",
202 "weeks": "<span color='#99ffdd'><b>W{}</b></span>",
203 "weekdays": "<span color='#ffcc66'><b>{}</b></span>",
204 "today": "<span color='#ff6699'><b><u>{}</u></b></span>"
205 }
206 },
207 "actions": {
208 "on-click-right": "mode",
209 "on-click-forward": "tz_up",
210 "on-click-backward": "tz_down",
211 "on-scroll-up": "shift_up",
212 "on-scroll-down": "shift_down"
213 }
214 },
215
216 3. Full date on hover
217
218 "clock": {
219 "interval": 60,
220 "tooltip": true,
221 "format": "{:%H.%M}",
222 "tooltip-format": "{:%Y-%m-%d}",
223 }
224
226 • #clock
227
228
230 If clock module is disabled at startup with locale::facet::_S_cre‐
231 ate_c_locale
232 name not valid error message try one of the followings:
233
234 • check if LC_TIME is set properly (glibc)
235 • set locale to C in the config file (musl)
236
237
238 The locale option must be set for {calendar} to use the correct start-
239 of-week, regardless of system locale.
240
241 Calendar in Chinese. Alignment
242 In order to have aligned Chinese calendar there are some useful recom‐
243 mendations:
244
245 1. Use "WenQuanYi Zen Hei Mono" which is provided in most Linux dis‐
246 tributions
247 2. Try different font sizes and find best for you. size = 9pt should
248 be fine
249 3. In case when "WenQuanYi Zen Hei Mono" font is used disable mono‐
250 space font pango tag
251
252
253 Example of working config
254
255 "clock": {
256 "format": "{:%H:%M} ",
257 "format-alt": "{:%A, %B %d, %Y (%R)} ",
258 "tooltip-format": "n<span size='9pt' font='WenQuanYi Zen Hei Mono'>{calendar}</span>",
259 "calendar": {
260 "mode" : "year",
261 "mode-mon-col" : 3,
262 "weeks-pos" : "right",
263 "on-scroll" : 1,
264 "on-click-right": "mode",
265 "format": {
266 "months": "<span color='#ffead3'><b>{}</b></span>",
267 "days": "<span color='#ecc6d9'><b>{}</b></span>",
268 "weeks": "<span color='#99ffdd'><b>W{}</b></span>",
269 "weekdays": "<span color='#ffcc66'><b>{}</b></span>",
270 "today": "<span color='#ff6699'><b><u>{}</u></b></span>"
271 }
272 },
273 "actions": {
274 "on-click-right": "mode",
275 "on-click-forward": "tz_up",
276 "on-click-backward": "tz_down",
277 "on-scroll-up": "shift_up",
278 "on-scroll-down": "shift_down"
279 }
280 },
281
283 Alexis Rouillard <contact@arouillard.fr>
284
285
286
287waybar-clock 2023-08-16 waybar-clock(5)