Class: R18n::Locales::En

Inherits:
R18n::Locale show all
Defined in:
lib/r18n-core/locales/en.rb

Overview

English locale

Direct Known Subclasses

EnAU, EnGB, EnUS

Instance Attribute Summary

Attributes inherited from R18n::Locale

#code, #downcased_code, #language, #parent, #region

Instance Method Summary collapse

Methods inherited from R18n::Locale

#==, capitalize, exists?, #format_date_human, #format_date_standard, #format_float, #format_integer, #format_time, #format_time_full, #format_time_human, #format_time_standard, #initialize, #inspect, load, #localize, #ltr?, #month_abbrs, #month_standalone, #pluralize, sanitize_code, set, #strftime, #supported?, #wday_abbrs

Constructor Details

This class inherits a constructor from R18n::Locale

Instance Method Details

#format_date_full(date, year = true, *_params) ⇒ Object



44
45
46
47
48
# File 'lib/r18n-core/locales/en.rb', line 44

def format_date_full(date, year = true, *_params)
  format = full_format
  format = year_format.sub('_', format) if year
  strftime(date, format.sub('%-d', ordinalize(date.mday)))
end

#ordinalize(number) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/r18n-core/locales/en.rb', line 31

def ordinalize(number)
  if (11..13).cover?(number % 100)
    "#{number}th"
  else
    case number % 10
    when 1 then "#{number}st"
    when 2 then "#{number}nd"
    when 3 then "#{number}rd"
    else        "#{number}th"
    end
  end
end