diff --git a/lib/pure/strformat.nim b/lib/pure/strformat.nim index 257751088c..1233317135 100644 --- a/lib/pure/strformat.nim +++ b/lib/pure/strformat.nim @@ -707,6 +707,9 @@ when isMainModule: var tm = fromUnix(0) discard &"{tm}" + var noww = now() + check &"{noww}", $noww + # Unicode string tests check &"""{"αβγ"}""", "αβγ" check &"""{"αβγ":>5}""", " αβγ" diff --git a/lib/pure/times.nim b/lib/pure/times.nim index 9af39920d8..4cf8a5e988 100644 --- a/lib/pure/times.nim +++ b/lib/pure/times.nim @@ -2316,9 +2316,10 @@ proc format*(dt: DateTime, f: static[string]): string {.raises: [].} = const f2 = initTimeFormat(f) result = dt.format(f2) -template formatValue*(result: var string; value: DateTime, specifier: string) = +proc formatValue*(result: var string; value: DateTime, specifier: string) = ## adapter for strformat. Not intended to be called directly. - result.add format(value, specifier) + result.add format(value, + if specifier.len == 0: "yyyy-MM-dd'T'HH:mm:sszzz" else: specifier) proc format*(time: Time, f: string, zone: Timezone = local()): string {.raises: [TimeFormatParseError].} =