summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2022-03-21 18:20:06 (EDT)
committer P. J. McDermott <pj@pehjota.net>2022-03-21 18:21:00 (EDT)
commitd4c012ddd14daefe1372c9118d8cc364f08073d0 (patch)
tree7f1e3cca8fbc7de4fdba6076538805f4265ffc2a
parenta8ed98c4de4fec655fff74ef43e3c40f9a00a3eb (diff)
downloadatsign-d4c012ddd14daefe1372c9118d8cc364f08073d0.zip
atsign-d4c012ddd14daefe1372c9118d8cc364f08073d0.tar.gz
atsign-d4c012ddd14daefe1372c9118d8cc364f08073d0.tar.bz2
formats: Add formats with "%a." and "%b."
-rw-r--r--TODO1
-rw-r--r--src/formats.h49
-rw-r--r--tests/formats.exp49
3 files changed, 98 insertions, 1 deletions
diff --git a/TODO b/TODO
index d4b721a..80653a8 100644
--- a/TODO
+++ b/TODO
@@ -3,7 +3,6 @@ spaces between specifiers in strptime() formats -- strftime()?
parsing: copy format one char at a time, changing placeholder to space
test with other libc's (newlib? musl? fbsd? obsd?)
`./@ 7:00 PM` doesn't work with musl strptime()
-add formats with "%a." and "%b."
update formats in README (or move to another file?)
test other times
gettext?
diff --git a/src/formats.h b/src/formats.h
index a2ae5e7..1dae905 100644
--- a/src/formats.h
+++ b/src/formats.h
@@ -24,6 +24,7 @@
* to be of equal lengths */
static const char *FORMATS_DATE[] = {
" %a ", /* Wed */
+ " %a. ", /* Wed. */
" %Y-%m-%d ", /* 1969-12-31 */
" %Y/%m/%d ", /* 1969/12/31 */
" %Y.%m.%d ", /* 1969.12.31 */
@@ -34,37 +35,65 @@ static const char *FORMATS_DATE[] = {
" %m.%d.%Y ", /* 12.31.1969 */
" %m.%d ", /* 12.31 */
" %e %b %Y ", /* 31 Dec 1969 */
+ " %e %b. %Y ", /* 31 Dec. 1969 */
" %e %b ", /* 31 Dec */
+ " %e %b. ", /* 31 Dec. */
" %d-%b-%Y ", /* 31-Dec-1969 */
" %d-%b ", /* 31-Dec */
" %d/%b/%Y ", /* 31/Dec/1969 */
" %d/%b ", /* 31/Dec */
" %a %e %b %Y ", /* Wed 31 Dec 1969 */
+ " %a %e %b. %Y ", /* Wed 31 Dec. 1969 */
" %a %e %b ", /* Wed 31 Dec */
+ " %a %e %b. ", /* Wed 31 Dec. */
" %a %d-%b-%Y ", /* Wed 31-Dec-1969 */
" %a %d-%b ", /* Wed 31-Dec */
" %a %d/%b/%Y ", /* Wed 31/Dec/1969 */
" %a %d/%b ", /* Wed 31/Dec */
+ " %a. %e %b %Y ", /* Wed. 31 Dec 1969 */
+ " %a. %e %b. %Y ", /* Wed. 31 Dec. 1969 */
+ " %a. %e %b ", /* Wed. 31 Dec */
+ " %a. %e %b. ", /* Wed. 31 Dec. */
+ " %a. %d-%b-%Y ", /* Wed. 31-Dec-1969 */
+ " %a. %d-%b ", /* Wed. 31-Dec */
+ " %a. %d/%b/%Y ", /* Wed. 31/Dec/1969 */
+ " %a. %d/%b ", /* Wed. 31/Dec */
" %a, %e %b %Y ", /* Wed, 31 Dec 1969 */
+ " %a, %e %b. %Y ", /* Wed, 31 Dec. 1969 */
" %a, %e %b ", /* Wed, 31 Dec */
+ " %a, %e %b. ", /* Wed, 31 Dec. */
" %a, %d-%b-%Y ", /* Wed, 31-Dec-1969 */
" %a, %d-%b ", /* Wed, 31-Dec */
" %a, %d/%b/%Y ", /* Wed, 31/Dec/1969 */
" %a, %d/%b ", /* Wed, 31/Dec */
" %b %e, %Y ", /* Dec 31, 1969 */
+ " %b. %e, %Y ", /* Dec. 31, 1969 */
" %b %e ", /* Dec 31 */
+ " %b. %e ", /* Dec. 31 */
" %b-%d-%Y ", /* Dec-31-1969 */
" %b-%d ", /* Dec-31 */
" %b/%d/%Y ", /* Dec/31/1969 */
" %b/%d ", /* Dec/31 */
" %a %b %e, %Y ", /* Wed Dec 31, 1969 */
+ " %a %b. %e, %Y ", /* Wed Dec. 31, 1969 */
" %a %b %e ", /* Wed Dec 31 */
+ " %a %b. %e ", /* Wed Dec. 31 */
" %a %b-%d-%Y ", /* Wed Dec-31-1969 */
" %a %b-%d ", /* Wed Dec-31 */
" %a %b/%d/%Y ", /* Wed Dec/31/1969 */
" %a %b/%d ", /* Wed Dec/31 */
+ " %a. %b %e, %Y ", /* Wed. Dec 31, 1969 */
+ " %a. %b. %e, %Y ", /* Wed. Dec. 31, 1969 */
+ " %a. %b %e ", /* Wed. Dec 31 */
+ " %a. %b. %e ", /* Wed. Dec. 31 */
+ " %a. %b-%d-%Y ", /* Wed. Dec-31-1969 */
+ " %a. %b-%d ", /* Wed. Dec-31 */
+ " %a. %b/%d/%Y ", /* Wed. Dec/31/1969 */
+ " %a. %b/%d ", /* Wed. Dec/31 */
" %a, %b %e, %Y ", /* Wed, Dec 31, 1969 */
+ " %a, %b. %e, %Y ", /* Wed, Dec. 31, 1969 */
" %a, %b %e ", /* Wed, Dec 31 */
+ " %a, %b. %e ", /* Wed, Dec. 31 */
" %a, %b-%d-%Y ", /* Wed, Dec-31-1969 */
" %a, %b-%d ", /* Wed, Dec-31 */
" %a, %b/%d/%Y ", /* Wed, Dec/31/1969 */
@@ -72,25 +101,33 @@ static const char *FORMATS_DATE[] = {
"", /* End of parsing formats */
" %A ", /* Wednesday */
" %A %e %b %Y ", /* Wednesday 31 Dec 1969 */
+ " %A %e %b. %Y ", /* Wednesday 31 Dec. 1969 */
" %A %e %b ", /* Wednesday 31 Dec */
+ " %A %e %b. ", /* Wednesday 31 Dec. */
" %A %d-%b-%Y ", /* Wednesday 31-Dec-1969 */
" %A %d-%b ", /* Wednesday 31-Dec */
" %A %d/%b/%Y ", /* Wednesday 31/Dec/1969 */
" %A %d/%b ", /* Wednesday 31/Dec */
" %A, %e %b %Y ", /* Wednesday, 31 Dec 1969 */
+ " %A, %e %b. %Y ", /* Wednesday, 31 Dec. 1969 */
" %A, %e %b ", /* Wednesday, 31 Dec */
+ " %A, %e %b. ", /* Wednesday, 31 Dec. */
" %A, %d-%b-%Y ", /* Wednesday, 31-Dec-1969 */
" %A, %d-%b ", /* Wednesday, 31-Dec */
" %A, %d/%b/%Y ", /* Wednesday, 31/Dec/1969 */
" %A, %d/%b ", /* Wednesday, 31/Dec */
" %A %b %e, %Y ", /* Wednesday Dec 31, 1969 */
+ " %A %b. %e, %Y ", /* Wednesday Dec. 31, 1969 */
" %A %b %e ", /* Wednesday Dec 31 */
+ " %A %b. %e ", /* Wednesday Dec. 31 */
" %A %b-%d-%Y ", /* Wednesday Dec-31-1969 */
" %A %b-%d ", /* Wednesday Dec-31 */
" %A %b/%d/%Y ", /* Wednesday Dec/31/1969 */
" %A %b/%d ", /* Wednesday Dec/31 */
" %A, %b %e, %Y ", /* Wednesday, Dec 31, 1969 */
+ " %A, %b. %e, %Y ", /* Wednesday, Dec. 31, 1969 */
" %A, %b %e ", /* Wednesday, Dec 31 */
+ " %A, %b. %e ", /* Wednesday, Dec. 31 */
" %A, %b-%d-%Y ", /* Wednesday, Dec-31-1969 */
" %A, %b-%d ", /* Wednesday, Dec-31 */
" %A, %b/%d/%Y ", /* Wednesday, Dec/31/1969 */
@@ -107,6 +144,12 @@ static const char *FORMATS_DATE[] = {
" %a %d-%B ", /* Wed 31-December */
" %a %d/%B/%Y ", /* Wed 31/December/1969 */
" %a %d/%B ", /* Wed 31/December */
+ " %a. %e %B %Y ", /* Wed. 31 December 1969 */
+ " %a. %e %B ", /* Wed. 31 December */
+ " %a. %d-%B-%Y ", /* Wed. 31-December-1969 */
+ " %a. %d-%B ", /* Wed. 31-December */
+ " %a. %d/%B/%Y ", /* Wed. 31/December/1969 */
+ " %a. %d/%B ", /* Wed. 31/December */
" %a, %e %B %Y ", /* Wed, 31 December 1969 */
" %a, %e %B ", /* Wed, 31 December */
" %a, %d-%B-%Y ", /* Wed, 31-December-1969 */
@@ -125,6 +168,12 @@ static const char *FORMATS_DATE[] = {
" %a %B-%d ", /* Wed December-31 */
" %a %B/%d/%Y ", /* Wed December/31/1969 */
" %a %B/%d ", /* Wed December/31 */
+ " %a. %B %e, %Y ", /* Wed. December 31, 1969 */
+ " %a. %B %e ", /* Wed. December 31 */
+ " %a. %B-%d-%Y ", /* Wed. December-31-1969 */
+ " %a. %B-%d ", /* Wed. December-31 */
+ " %a. %B/%d/%Y ", /* Wed. December/31/1969 */
+ " %a. %B/%d ", /* Wed. December/31 */
" %a, %B %e, %Y ", /* Wed, December 31, 1969 */
" %a, %B %e ", /* Wed, December 31 */
" %a, %B-%d-%Y ", /* Wed, December-31-1969 */
diff --git a/tests/formats.exp b/tests/formats.exp
index 502102b..20b49c9 100644
--- a/tests/formats.exp
+++ b/tests/formats.exp
@@ -13,6 +13,7 @@ Time formats:
* 0304
Date formats:
* Fri
+ * Fri.
* 1970-01-02
* 1970/01/02
* 1970.01.02
@@ -23,62 +24,98 @@ Date formats:
* 01.02.1970
* 01.02
* 2 Jan 1970
+ * 2 Jan. 1970
* 2 Jan
+ * 2 Jan.
* 02-Jan-1970
* 02-Jan
* 02/Jan/1970
* 02/Jan
* Fri 2 Jan 1970
+ * Fri 2 Jan. 1970
* Fri 2 Jan
+ * Fri 2 Jan.
* Fri 02-Jan-1970
* Fri 02-Jan
* Fri 02/Jan/1970
* Fri 02/Jan
+ * Fri. 2 Jan 1970
+ * Fri. 2 Jan. 1970
+ * Fri. 2 Jan
+ * Fri. 2 Jan.
+ * Fri. 02-Jan-1970
+ * Fri. 02-Jan
+ * Fri. 02/Jan/1970
+ * Fri. 02/Jan
* Fri, 2 Jan 1970
+ * Fri, 2 Jan. 1970
* Fri, 2 Jan
+ * Fri, 2 Jan.
* Fri, 02-Jan-1970
* Fri, 02-Jan
* Fri, 02/Jan/1970
* Fri, 02/Jan
* Jan 2, 1970
+ * Jan. 2, 1970
* Jan 2
+ * Jan. 2
* Jan-02-1970
* Jan-02
* Jan/02/1970
* Jan/02
* Fri Jan 2, 1970
+ * Fri Jan. 2, 1970
* Fri Jan 2
+ * Fri Jan. 2
* Fri Jan-02-1970
* Fri Jan-02
* Fri Jan/02/1970
* Fri Jan/02
+ * Fri. Jan 2, 1970
+ * Fri. Jan. 2, 1970
+ * Fri. Jan 2
+ * Fri. Jan. 2
+ * Fri. Jan-02-1970
+ * Fri. Jan-02
+ * Fri. Jan/02/1970
+ * Fri. Jan/02
* Fri, Jan 2, 1970
+ * Fri, Jan. 2, 1970
* Fri, Jan 2
+ * Fri, Jan. 2
* Fri, Jan-02-1970
* Fri, Jan-02
* Fri, Jan/02/1970
* Fri, Jan/02
* Friday
* Friday 2 Jan 1970
+ * Friday 2 Jan. 1970
* Friday 2 Jan
+ * Friday 2 Jan.
* Friday 02-Jan-1970
* Friday 02-Jan
* Friday 02/Jan/1970
* Friday 02/Jan
* Friday, 2 Jan 1970
+ * Friday, 2 Jan. 1970
* Friday, 2 Jan
+ * Friday, 2 Jan.
* Friday, 02-Jan-1970
* Friday, 02-Jan
* Friday, 02/Jan/1970
* Friday, 02/Jan
* Friday Jan 2, 1970
+ * Friday Jan. 2, 1970
* Friday Jan 2
+ * Friday Jan. 2
* Friday Jan-02-1970
* Friday Jan-02
* Friday Jan/02/1970
* Friday Jan/02
* Friday, Jan 2, 1970
+ * Friday, Jan. 2, 1970
* Friday, Jan 2
+ * Friday, Jan. 2
* Friday, Jan-02-1970
* Friday, Jan-02
* Friday, Jan/02/1970
@@ -95,6 +132,12 @@ Date formats:
* Fri 02-January
* Fri 02/January/1970
* Fri 02/January
+ * Fri. 2 January 1970
+ * Fri. 2 January
+ * Fri. 02-January-1970
+ * Fri. 02-January
+ * Fri. 02/January/1970
+ * Fri. 02/January
* Fri, 2 January 1970
* Fri, 2 January
* Fri, 02-January-1970
@@ -113,6 +156,12 @@ Date formats:
* Fri January-02
* Fri January/02/1970
* Fri January/02
+ * Fri. January 2, 1970
+ * Fri. January 2
+ * Fri. January-02-1970
+ * Fri. January-02
+ * Fri. January/02/1970
+ * Fri. January/02
* Fri, January 2, 1970
* Fri, January 2
* Fri, January-02-1970