1waybar-clock(5)                   User Manual                  waybar-clock(5)
2
3
4

NAME

6       waybar - clock module
7

DESCRIPTION

9       clock module displays current date and time
10

FILES

12       $XDG_CONFIG_HOME/waybar/config
13            Per user configuration file
14

CONFIGURATION

16       1. Addressed by clock
17
18       ┌────────────────┬─────────────────┬────────────────┬─────────────────────────────────────────────────┐
19Option      Typeof      Default     Description                   
20       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
21interval        │ integer         │ 60             │ The interval in                                 │
22       │                │                 │                │ which the infor‐                                │
23       │                │                 │                │ mation gets                                     │
24       │                │                 │                │ polled                                          │
25       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
26format          │ string          │ {:%H:%M}       │ The format, how                                 │
27       │                │                 │                │ the date and                                    │
28       │                │                 │                │ time should be                                  │
29       │                │                 │                │ displayed. See                                  │
30       │                │                 │                │ format options                                  │
31       │                │                 │                │ below                                           │
32       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
33timezone        │ 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       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
46timezones       │ 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       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
52locale          │ 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       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
56max-length      │ integer         │                │ The maximum length in character the module      │
57       │                │                 │                │ should display                                  │
58       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
59rotate          │ integer         │                │ Positive value to rotate the text label         │
60       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
61on-click        │ string          │                │ Command to execute when clicked on the module   │
62       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
63on-click-middle │ string          │                │ Command to execute when you middle clicked on   │
64       │                │                 │                │ the module using mousewheel                     │
65       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
66on-click-right  │ string          │                │ Command to execute when you right clicked on    │
67       │                │                 │                │ the module                                      │
68       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
69on-scroll-up    │ string          │                │ Command to execute when scrolling up on the     │
70       │                │                 │                │ module                                          │
71       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
72on-scroll-down  │ string          │                │ Command to execute when scrolling down on the   │
73       │                │                 │                │ module                                          │
74       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
75smooth-         │ double          │                │ Threshold to be used when scrolling             │
76scrolling-      │                 │                │                                                 │
77threshold       │                 │                │                                                 │
78       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
79tooltip         │ bool            │ true           │ Option to enable tooltip on hover               │
80       ├────────────────┼─────────────────┼────────────────┼─────────────────────────────────────────────────┤
81tooltip-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       ┌─────────────┬─────────┬─────────┬──────────────────┐
89Option    Typeof  Default Description    
90       ├─────────────┼─────────┼─────────┼──────────────────┤
91mode         │ string  │ month   │ Calendar view    │
92       │             │         │         │ mode. Possible   │
93       │             │         │         │ values:          │
94       │             │         │         │ year|month       │
95       ├─────────────┼─────────┼─────────┼──────────────────┤
96mode-mon-col │ integer │ 3       │ Relevant for     │
97       │             │         │         │ mode=year. Count │
98       │             │         │         │ of months per    │
99       │             │         │         │ row              │
100       ├─────────────┼─────────┼─────────┼──────────────────┤
101weeks-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       ├─────────────┼─────────┼─────────┼──────────────────┤
110on-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       ┌─────────┬────────┬──────────────────┬───────────────────────┐
121Option  Typeof Default      Description      
122       ├─────────┼────────┼──────────────────┼───────────────────────┤
123months   │ string │                  │ Format is ap‐         │
124       │         │        │                  │ plied to months       │
125       │         │        │                  │ header(January,       │
126       │         │        │                  │ Febru‐                │
127       │         │        │                  │ ary,...etc.)          │
128       ├─────────┼────────┼──────────────────┼───────────────────────┤
129days     │ string │                  │ Format is ap‐         │
130       │         │        │                  │ plied to days         │
131       ├─────────┼────────┼──────────────────┼───────────────────────┤
132weeks    │ 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       ├─────────┼────────┼──────────────────┼───────────────────────┤
144weekdays │ string │                  │ Format is ap‐         │
145       │         │        │                  │ plied to weeks        │
146       │         │        │                  │ header(Su,Mo,...etc.) │
147       ├─────────┼────────┼──────────────────┼───────────────────────┤
148today    │ string │ <b><u>{}</u></b> │ Format is applied to  │
149       │         │        │                  │ Today                 │
150       └─────────┴────────┴──────────────────┴───────────────────────┘
151
152   Actions
153       ┌───────────┬───────────────────────────┐
154String   Action           
155       ├───────────┼───────────────────────────┤
156mode       │ Switch calendar mode be‐  │
157       │           │ tween year/month          │
158       ├───────────┼───────────────────────────┤
159tz_up      │ Switch to the next pro‐   │
160       │           │ vided time zone           │
161       ├───────────┼───────────────────────────┤
162tz_down    │ Switch to the previous    │
163       │           │ provided time zone        │
164       ├───────────┼───────────────────────────┤
165shift_up   │ Switch to the next calen‐ │
166       │           │ dar month/year            │
167       ├───────────┼───────────────────────────┤
168shift_down │ Switch to the previous    │
169       │           │ calendar month/year       │
170       └───────────┴───────────────────────────┘
171

FORMAT REPLACEMENTS

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

EXAMPLES

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

STYLE

226#clock
227
228

Troubleshooting

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

AUTHOR

283       Alexis Rouillard <contact@arouillard.fr>
284
285
286
287waybar-clock                      2023-08-16                   waybar-clock(5)
Impressum