213 lines
13 KiB
Diff
213 lines
13 KiB
Diff
From b90829918891af8a3207bdc54a25326481b2fa6e Mon Sep 17 00:00:00 2001
|
|
From: Aurelien LAJOIE <orel@melix.net>
|
|
Date: Sat, 28 Mar 2020 23:33:40 +0100
|
|
Subject: [PATCH 186/389] cal: Correctly center the year
|
|
|
|
Signed-off-by: Aurelien LAJOIE <orel@melix.net>
|
|
---
|
|
misc-utils/cal.c | 7 +++----
|
|
tests/expected/cal/weeknum-ymjw | 14 +++++++-------
|
|
tests/expected/cal/weeknum-ysjw | 14 +++++++-------
|
|
tests/expected/cal/year-ymj | 2 +-
|
|
tests/expected/cal/year-ymjw | 2 +-
|
|
tests/expected/cal/year-ysj | 2 +-
|
|
tests/expected/cal/year-ysjw | 2 +-
|
|
7 files changed, 21 insertions(+), 22 deletions(-)
|
|
|
|
diff --git a/misc-utils/cal.c b/misc-utils/cal.c
|
|
index 7286003..7cd6545 100644
|
|
--- a/misc-utils/cal.c
|
|
+++ b/misc-utils/cal.c
|
|
@@ -907,11 +907,10 @@ static void monthly(const struct cal_control *ctl)
|
|
static void yearly(const struct cal_control *ctl)
|
|
{
|
|
char out[FMT_ST_CHARS];
|
|
- int year_width = 0;
|
|
+ int year_width;
|
|
|
|
- year_width += (ctl->week_width + 1) * (ctl->julian ? 2 : 3);
|
|
- if (ctl->julian)
|
|
- year_width--;
|
|
+ year_width = ctl->months_in_row * (ctl->week_width - 1) +
|
|
+ (ctl->months_in_row - 1) * ctl->gutter_width;
|
|
|
|
if (ctl->header_year) {
|
|
snprintf(out, sizeof(out), "%04d", ctl->req.year);
|
|
diff --git a/tests/expected/cal/weeknum-ymjw b/tests/expected/cal/weeknum-ymjw
|
|
index d4a1072..bcf9a1e 100644
|
|
--- a/tests/expected/cal/weeknum-ymjw
|
|
+++ b/tests/expected/cal/weeknum-ymjw
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Monday-based week with week numbers
|
|
- 2001
|
|
+ 2001
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -33,7 +33,7 @@ Julian - Monday-based week with week numbers
|
|
43 295 296 297 298 299 300 301 47 323 324 325 326 327 328 329 51 351 352 353 354 355 356 357
|
|
44 302 303 304 48 330 331 332 333 334 52 358 359 360 361 362 363 364
|
|
1 365
|
|
- 2002
|
|
+ 2002
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -67,7 +67,7 @@ Julian - Monday-based week with week numbers
|
|
43 294 295 296 297 298 299 300 47 322 323 324 325 326 327 328 51 350 351 352 353 354 355 356
|
|
44 301 302 303 304 48 329 330 331 332 333 334 52 357 358 359 360 361 362 363
|
|
1 364 365
|
|
- 2003
|
|
+ 2003
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -101,7 +101,7 @@ Julian - Monday-based week with week numbers
|
|
43 293 294 295 296 297 298 299 47 321 322 323 324 325 326 327 52 356 357 358 359 360 361 362
|
|
44 300 301 302 303 304 48 328 329 330 331 332 333 334 1 363 364 365
|
|
|
|
- 2009
|
|
+ 2009
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -135,7 +135,7 @@ Julian - Monday-based week with week numbers
|
|
43 292 293 294 295 296 297 298 47 320 321 322 323 324 325 326 52 355 356 357 358 359 360 361
|
|
44 299 300 301 302 303 304 48 327 328 329 330 331 332 333 53 362 363 364 365
|
|
49 334
|
|
- 2010
|
|
+ 2010
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -169,7 +169,7 @@ Julian - Monday-based week with week numbers
|
|
42 291 292 293 294 295 296 297 47 326 327 328 329 330 331 332 51 354 355 356 357 358 359 360
|
|
43 298 299 300 301 302 303 304 48 333 334 52 361 362 363 364 365
|
|
|
|
- 2011
|
|
+ 2011
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
@@ -203,7 +203,7 @@ Julian - Monday-based week with week numbers
|
|
42 290 291 292 293 294 295 296 47 325 326 327 328 329 330 331 51 353 354 355 356 357 358 359
|
|
43 297 298 299 300 301 302 303 48 332 333 334 52 360 361 362 363 364 365
|
|
44 304
|
|
- 2012
|
|
+ 2012
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
diff --git a/tests/expected/cal/weeknum-ysjw b/tests/expected/cal/weeknum-ysjw
|
|
index 16b91ad..b5a8527 100644
|
|
--- a/tests/expected/cal/weeknum-ysjw
|
|
+++ b/tests/expected/cal/weeknum-ysjw
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Sunday-based week with week numbers
|
|
- 2001
|
|
+ 2001
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -33,7 +33,7 @@ Julian - Sunday-based week with week numbers
|
|
43 294 295 296 297 298 299 300 47 322 323 324 325 326 327 328 51 350 351 352 353 354 355 356
|
|
44 301 302 303 304 48 329 330 331 332 333 334 52 357 358 359 360 361 362 363
|
|
53 364 365
|
|
- 2002
|
|
+ 2002
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -67,7 +67,7 @@ Julian - Sunday-based week with week numbers
|
|
43 293 294 295 296 297 298 299 47 321 322 323 324 325 326 327 52 356 357 358 359 360 361 362
|
|
44 300 301 302 303 304 48 328 329 330 331 332 333 334 53 363 364 365
|
|
|
|
- 2003
|
|
+ 2003
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -101,7 +101,7 @@ Julian - Sunday-based week with week numbers
|
|
43 292 293 294 295 296 297 298 47 320 321 322 323 324 325 326 52 355 356 357 358 359 360 361
|
|
44 299 300 301 302 303 304 48 327 328 329 330 331 332 333 53 362 363 364 365
|
|
49 334
|
|
- 2009
|
|
+ 2009
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -135,7 +135,7 @@ Julian - Sunday-based week with week numbers
|
|
43 291 292 293 294 295 296 297 48 326 327 328 329 330 331 332 52 354 355 356 357 358 359 360
|
|
44 298 299 300 301 302 303 304 49 333 334 53 361 362 363 364 365
|
|
|
|
- 2010
|
|
+ 2010
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -169,7 +169,7 @@ Julian - Sunday-based week with week numbers
|
|
43 290 291 292 293 294 295 296 48 325 326 327 328 329 330 331 52 353 354 355 356 357 358 359
|
|
44 297 298 299 300 301 302 303 49 332 333 334 53 360 361 362 363 364 365
|
|
45 304
|
|
- 2011
|
|
+ 2011
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
@@ -203,7 +203,7 @@ Julian - Sunday-based week with week numbers
|
|
43 289 290 291 292 293 294 295 48 324 325 326 327 328 329 330 52 352 353 354 355 356 357 358
|
|
44 296 297 298 299 300 301 302 49 331 332 333 334 53 359 360 361 362 363 364 365
|
|
45 303 304
|
|
- 2012
|
|
+ 2012
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
diff --git a/tests/expected/cal/year-ymj b/tests/expected/cal/year-ymj
|
|
index caa3db0..f3b7143 100644
|
|
--- a/tests/expected/cal/year-ymj
|
|
+++ b/tests/expected/cal/year-ymj
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Monday-based week
|
|
- 2006
|
|
+ 2006
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
diff --git a/tests/expected/cal/year-ymjw b/tests/expected/cal/year-ymjw
|
|
index b62e167..e6a569e 100644
|
|
--- a/tests/expected/cal/year-ymjw
|
|
+++ b/tests/expected/cal/year-ymjw
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Monday-based week with week numbers
|
|
- 2006
|
|
+ 2006
|
|
|
|
January February March
|
|
Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
|
|
diff --git a/tests/expected/cal/year-ysj b/tests/expected/cal/year-ysj
|
|
index 080e257..2b40099 100644
|
|
--- a/tests/expected/cal/year-ysj
|
|
+++ b/tests/expected/cal/year-ysj
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Sunday-based week
|
|
- 2006
|
|
+ 2006
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
diff --git a/tests/expected/cal/year-ysjw b/tests/expected/cal/year-ysjw
|
|
index 69dbae3..800ec0c 100644
|
|
--- a/tests/expected/cal/year-ysjw
|
|
+++ b/tests/expected/cal/year-ysjw
|
|
@@ -1,5 +1,5 @@
|
|
Julian - Sunday-based week with week numbers
|
|
- 2006
|
|
+ 2006
|
|
|
|
January February March
|
|
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
|
|
--
|
|
1.8.3.1
|
|
|