Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kevinlawler/NSDate-TimeAgo
A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad
https://github.com/kevinlawler/NSDate-TimeAgo
Last synced: 8 days ago
JSON representation
A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad
- Host: GitHub
- URL: https://github.com/kevinlawler/NSDate-TimeAgo
- Owner: kevinlawler
- License: isc
- Archived: true
- Created: 2011-11-13T01:02:47.000Z (about 13 years ago)
- Default Branch: master
- Last Pushed: 2020-11-02T03:16:14.000Z (about 4 years ago)
- Last Synced: 2024-11-28T12:01:49.325Z (14 days ago)
- Language: Objective-C
- Homepage:
- Size: 173 KB
- Stars: 1,751
- Watchers: 52
- Forks: 322
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios - NSDate-TimeAgo - A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad. (Date & Time / Getting Started)
- awesome-ios-star - NSDate-TimeAgo - A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad. (Date & Time / Getting Started)
- fucking-awesome-ios - NSDate-TimeAgo - A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad. (Date & Time / Getting Started)
- fucking-awesome-ios - NSDate-TimeAgo - A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad. (Date & Time / Getting Started)
README
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
## Migration 2014.04.12
NSDate+TimeAgo has merged with DateTools. DateTools is the parent project and Matthew York is the project head.
This project is now part of DateTools. Please visit https://github.com/MatthewYork/DateTools
This repo is here in archive form. New work should be contributed to DateTools.
2016.01.04. To reiterate, all issues and contributions should go to DateTools, there is zero promise anything here will be looked at. Kevin's attention is on [Kerf](http://kerfsoftware.com).
## Description
This is an iOS, Objective-C, Cocoa Touch, iPhone, iPad category for `NSDate`. It gives `NSDate` the ability to report times like `"A moment ago"`, `"30 seconds ago"`, `"5 minutes ago"`, `"Yesterday"`, `"Last month"`, `"2 years ago"`, and so on.
This functionality has variously been referred to as a "time ago", "time since", "relative date", or "fuzzy date" feature.
`NSDate+TimeAgo` currently supports the following languages:
- en (English)
- ee (Estonian)
- es (Spanish)
- zh_Hans (Chinese Simplified)
- zh_Hant (Chinese Traditional)
- pt (Portuguese)
- fr (French)
- it (Italian)
- ru (Russian)
- de (German)
- nl (Dutch)
- hu (Hungarian)
- fi (Finnish)
- ja (Japanese)
- vi (Vietnamese)
- ro (Romanian)
- da (Danish)
- cs (Czech)
- nb (Norwegian)
- lv (Latvian)
- tr (Turkish)
- ko (Korean)
- bg (Bulgarian)
- he (Hebrew)
- ar (Arabic)
- gre (Greek)
- pl (Polish)
- sv (Swedish)
- th (Thai)
- uk (Ukrainian)
- is (Icelandic)
- sq (Albanian)
- sk (Slovak)
- ms (Malay)
- km (Cambodian)
- id (Bahasa-Indonesia)
- mn (Mongolian)
- ur (Urdu)If you know a language not listed here, please consider submitting a translation. [Localization codes by language](http://stackoverflow.com/questions/3040677/locale-codes-for-iphone-lproj-folders).
This project is user driven (by people like you). Pull requests close faster than issues (merged or rejected).
## Use
1. `Add` the files to your project - manually or via Cocoapods (`pod 'NSDate+TimeAgo'`)
2. Import the header using `#import "NSDate+TimeAgo.h"`
3. Call the `timeAgo` method in the following way:
NSDate *date = [[NSDate alloc] initWithTimeIntervalSince1970:0];
NSString *ago = [date timeAgo];
NSLog(@"Output is: \"%@\"", ago);
2011-11-12 17:19:25.608 Proj[0:0] Output is: "41 years ago"2 other methods are available:
* `dateTimeAgo`: returns times with only strings of the type: "*{value}* *{unit}* ago"
* `dateTimeUntilNow`: returns only "yesterday" / "this morning" / "last week" / "this month" -- less precise than `dateTimeAgo` but more naturalThose three methods can be interchanged as they have the same signature.
## Future Directions
Would be nice to
1. add customization options (e.g., should it report seconds or just "a minute ago")
2. add string customization
3. have more localizations
4. make `dateTimeUntilNow` more precise: instead of "Last week" use "Last Friday", "Last Monday" etc.
5. other## License
Released under ISC (similar to 2-clause BSD)
http://wikipedia.org/wiki/ISC_license
## Credits
Originally based on code Christopher Pickslay posted to Forrst. Used with permission. http://twitter.com/cpickslay
Ramon Torres began support for internationalization/localization. Added `es` strings. http://rtorres.me/
Dennis Zhuang added `zh_Hans` Chinese Simplified strings. http://fnil.net/
Mozart Petter added `pt_BR` Brazilian Portuguese strings. http://www.mozartpetter.com/
Stéphane Gerardot added `fr` French strings.
Marco Sanson added `it` Italian strings. http://marcosanson.tumblr.com/
Almas Adilbek added `ru` Russian strings. Extended logic to support Russian idioms. http://mixdesign.kz/
Mallox51 added `de` German strings. https://github.com/Mallox51
Tieme van Veen added `nl` Dutch strings. http://www.tiemevanveen.nl
Árpád Goretity added `hu` Hungarian strings. http://apaczai.elte.hu/~13akga/
Anajavi added `fi` Finnish strings. https://github.com/anajavi
Tonydyb added `ja` Japanese strings.
Vinhnx added `vi` Vietnamese strings. http://vinhnx.github.io/
Ronail added `zh_Hant` Traditional Chinese strings. https://github.com/ronail
SorinAntohi added `ro` Romanian strings. https://github.com/SorinAntohi
spookd added `da` Danish strings. https://github.com/spookd
Barrett Jacobsen added `cs` Czech strings. https://github.com/barrettj
Dmitry Shmidt added `nb` Norwegian strings. https://github.com/shmidt
Martins Rudens added `lv` Latvian strings. https://github.com/rudensm
Osman Saral added `tr` Turkish strings. https://github.com/osrl
analogstyle added `ko` Korean strings. http://almacreative.net/
Flavio Caetano fixed `pt` Portuguese strings. http://flaviocaetano.com
kolarski added `bg` Bulgarian strings. http://github.com/kolarski
Vladimir Kofman added `he` Hebrew strings. https://github.com/vladimirkofman
Viraf Sarkari added `ar` Arabic, `gre` Greek, `pl` Polish, `sv` Swedish, and `th` Thai strings. https://github.com/viraf
Vasyl Skrypii added `uk` Ukranian strings. https://github.com/medlay
Maggi Trymbill added `is` Icelandic strings. https://github.com/grundvollur
Erid Bardhaj added `sq` Albanian strings. https://github.com/eridbardhaj
Joan Biscarri added `ca` Catalan strings. https://github.com/jbiscarri
Gantulga added `mn` Mongolian strings. https://github.com/gangstarmn
ali-ehsan added `ur` Urdu strings. https://github.com/ali-ehsan
Zonily Jame Pesquera added `id` Bahasa Indonesia strings. https://github.com/kuyazee
Zonily Jame Pesquera added `km` Khmer strings. https://github.com/kuyazee