Mercurial > public > mercurial-scm > hg
comparison mercurial/util.py @ 18614:b2586e2cc67a
parsedate: understand "now" as a shortcut for the current time
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Sat, 09 Feb 2013 15:39:22 -0600 |
parents | 2251b3184e6e |
children | 4034b8d551b1 |
comparison
equal
deleted
inserted
replaced
18613:1a2f4c633410 | 18614:b2586e2cc67a |
---|---|
1058 True | 1058 True |
1059 >>> parsedate( 'yesterday ') == parsedate((datetime.date.today() -\ | 1059 >>> parsedate( 'yesterday ') == parsedate((datetime.date.today() -\ |
1060 datetime.timedelta(days=1)\ | 1060 datetime.timedelta(days=1)\ |
1061 ).strftime('%b %d')) | 1061 ).strftime('%b %d')) |
1062 True | 1062 True |
1063 >>> now, tz = makedate() | |
1064 >>> strnow, strtz = parsedate('now') | |
1065 >>> (strnow - now) < 1 | |
1066 True | |
1067 >>> tz == strtz | |
1068 True | |
1063 """ | 1069 """ |
1064 if not date: | 1070 if not date: |
1065 return 0, 0 | 1071 return 0, 0 |
1066 if isinstance(date, tuple) and len(date) == 2: | 1072 if isinstance(date, tuple) and len(date) == 2: |
1067 return date | 1073 return date |
1068 if not formats: | 1074 if not formats: |
1069 formats = defaultdateformats | 1075 formats = defaultdateformats |
1070 date = date.strip() | 1076 date = date.strip() |
1071 | 1077 |
1078 if date == _('now'): | |
1079 return makedate() | |
1072 if date == _('today'): | 1080 if date == _('today'): |
1073 date = datetime.date.today().strftime('%b %d') | 1081 date = datetime.date.today().strftime('%b %d') |
1074 elif date == _('yesterday'): | 1082 elif date == _('yesterday'): |
1075 date = (datetime.date.today() - | 1083 date = (datetime.date.today() - |
1076 datetime.timedelta(days=1)).strftime('%b %d') | 1084 datetime.timedelta(days=1)).strftime('%b %d') |