Sha256: a3ee959274ee75674c540acb3eb9e47232165fff8ac938f8498403f2ff5b192f
Contents?: true
Size: 1.53 KB
Versions: 3
Compression:
Stored size: 1.53 KB
Contents
= Chronic Duration A simple Ruby natural language parser for elapsed time. (For example, 4 hours and 30 minutes, 6 minutes 4 seconds, 3 days, etc.) Returns all results in seconds. Will return an integer unless you get tricky and need a float. (4 minutes and 13.47 seconds, for example.) The reverse can also be accomplished with the output method. So pass in seconds and you can get strings like 4 mins 31.51 secs (default format), 4h 3m 30s, or 4:01:29. == Installation $ sudo gem sources -a http://gemcutter.org $ sudo gem install chronic_duration == Usage >> require 'chronic_duration' => true >> ChronicDuration.parse('4 minutes and 30 seconds') => 270 >> ChronicDuration.output(270) => 4 mins 30 secs >> ChronicDuration.output(270, :format => :short) => 4m 30s >> ChronicDuration.output(270, :format => :long) => 4 minutes 30 seconds >> ChronicDuration.output(270, :format => :chrono) => 4:30 Nil is returned if the string can't be parsed Examples of parse-able strings: * '12.4 secs' * '1:20' * '1:20.51' * '4:01:01' * '3 mins 4 sec' * '2 hrs 20 min' * '2h20min' * '6 mos 1 day' * '47 yrs 6 mos and 4d' * 'two hours and twenty minutes' == Contributors jduff, olauzon == TODO * Benchmark, optimize * Context specific matching (E.g., for '4m30s', assume 'm' is minutes not months) * Smartly parse vacation-like durations (E.g., '4 days and 3 nights') * :chrono output option should probably change to something like 4 days 4:00:12 instead of 4:04:00:12 * Other locale support
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
chronic_duration-0.8.1 | README.rdoc |
chronic_duration-0.8.0 | README.rdoc |
chronic_duration-0.7.5 | README.rdoc |