summaryrefslogtreecommitdiffstats
path: root/misc-utils
diff options
context:
space:
mode:
authorJ William Piggott2018-01-22 13:03:27 +0100
committerKarel Zak2018-01-22 14:16:57 +0100
commit6304358cb79f628ce13ec51964db176c0c083429 (patch)
treecb40d2617fcd300a273c04358c0422850caf81c4 /misc-utils
parentcal: fix week calculations for 1752 (diff)
downloadkernel-qcow2-util-linux-6304358cb79f628ce13ec51964db176c0c083429.tar.gz
kernel-qcow2-util-linux-6304358cb79f628ce13ec51964db176c0c083429.tar.xz
kernel-qcow2-util-linux-6304358cb79f628ce13ec51964db176c0c083429.zip
cal: fix first week calculation
Commit efafeaf set 1 Jan as week 1, but the change was missed in week_to_day() and in the man page. Before cal --week=40 --iso 1752 October 1752 Su Mo Tu We Th Fr Sa 41 1 2 3 4 5 6 7 42 8 9 10 11 12 13 14 43 15 16 17 18 19 20 21 44 22 23 24 25 26 27 28 45 29 30 31 Patched cal --week=40 --iso 1752 September 1752 Su Mo Tu We Th Fr Sa 36 1 2 37 3 4 5 6 7 8 9 38 10 11 12 13 14 15 16 39 17 18 19 20 21 22 23 40 24 25 26 27 28 29 30 Signed-off-by: J William Piggott <elseifthen@gmx.com>
Diffstat (limited to 'misc-utils')
-rw-r--r--misc-utils/cal.112
-rw-r--r--misc-utils/cal.c2
2 files changed, 7 insertions, 7 deletions
diff --git a/misc-utils/cal.1 b/misc-utils/cal.1
index f99c6b495..60eaa5c3b 100644
--- a/misc-utils/cal.1
+++ b/misc-utils/cal.1
@@ -195,13 +195,13 @@ highlighted if the calendar is displayed on a terminal. If no parameters are
specified, the current month's calendar is displayed.
.SH NOTES
A year starts on January 1. The first day of the week is determined by the
-locale.
+locale or the
+.BR \-\-sunday \ and \ \-\-monday \ options.
.PP
-The week numbering depends on the choice of the first day of the week. If Sunday
-(the default) is used for the first day of the week, then the customary North
-American numbering will be used, i.e. the first Sunday of the year starts the
-first week. If Monday is selected, then the ISO-8601 standard week numbering
-is used, where the first Thursday of the year is in week number 1.
+The week numbering depends on the choice of the first day of the week. If it
+is Sunday then the customary North American numbering is used, where 1 January
+is in week number 1. If it is Monday then the ISO 8601 standard week numbering
+is used, where the first Thursday is in week number 1.
.SH COLORS
Implicit coloring can be disabled as follows:
.RS
diff --git a/misc-utils/cal.c b/misc-utils/cal.c
index 894894ab6..438e7f09b 100644
--- a/misc-utils/cal.c
+++ b/misc-utils/cal.c
@@ -1003,7 +1003,7 @@ static int week_to_day(const struct cal_control *ctl)
if (ctl->weektype & WEEK_NUM_ISO)
yday -= (wday >= FRIDAY ? -2 : 5);
else
- yday -= (wday == SUNDAY ? 6 : -1); /* WEEK_NUM_US */
+ yday -= 6; /* WEEK_NUM_US */
if (yday <= 0)
return 1;