summary refs log tree commit diff
path: root/bin/man1/when.1
blob: 3f2735f70015fa0f2a3c18af7d75a7a943f38b15 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
.Dd September 19, 2022
.Dt WHEN 1
.Os
.
.Sh NAME
.Nm when
.Nd date calculator
.
.Sh SYNOPSIS
.Nm
.Op Ar expr
.Nm
.Cm -
.
.Sh DESCRIPTION
.Nm
is a date calculator.
If no
.Ar expr
is given,
expressions are read
from standard input.
If
.Cm -
is given,
the intervals between each named date
and today are printed.
.
.Pp
The grammar is as follows:
.Bl -tag -width Ds
.It Sy \&.
Today's date.
The empty expression is equivalent.
.
.It Ar name Op Sy = Ar date
A named date.
Names are alphanumeric including underscores.
.
.It Ar month Ar date Op Ar year
A full date,
or a date in the current year.
Months can be abbreviated to three letters.
.
.It Ar day
A day of the week
in the current week.
Days can be abbreviated to three letters.
.
.It Sy < Ar date
The date one week before.
.
.It Sy > Ar date
The date one week after.
.
.It Ar date Sy + Ar interval
The date after some interval.
.
.It Ar date Sy - Ar interval
The date before some interval.
.
.It Ar date Sy - Ar date
The interval between two dates.
.
.It Ar num Sy d
A number of days.
.
.It Ar num Sy w
A number of weeks.
.
.It Ar num Sy m
A number of months.
.
.It Ar num Sy y
A number of years.
.El
.
.Sh FILES
The file
.Pa $XDG_CONFIG_HOME/when/dates
or
.Pa ~/.config/when/dates
is read before any other expressions,
if it exists.
.
.Sh EXAMPLES
.Bl -tag -width "Dec 25 - ."
.It Ic Dec 25 - \&.
How long until Christmas.
.It Ic >Fri
The date next Friday.
.It Ic \&. + 2w
Your last day at work.
.El
.Pp
Checking a milestone:
.Bd -literal -offset indent
$ echo 'hrt = oct 15 2021' >> ~/.config/when/dates
$ when -hrt
.Ed