diff --git a/Cargo.lock b/Cargo.lock index 052613a4f88..cb458ea6e9b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -106,14 +106,6 @@ dependencies = [ "rustc-demangle", ] -[[package]] -name = "baked" -version = "1.0.0" -dependencies = [ - "icu_list", - "icu_provider", -] - [[package]] name = "bare-metal" version = "0.2.5" @@ -1312,8 +1304,10 @@ version = "0.6.0" dependencies = [ "displaydoc", "icu", + "icu_calendar", "icu_locid", "icu_provider", + "icu_testdata", "serde", "tinystr 0.6.0", "zerovec", @@ -1662,6 +1656,7 @@ dependencies = [ "postcard", "serde", "serde_json", + "stable_deref_trait", "static_assertions", "writeable", "yoke", @@ -1758,13 +1753,13 @@ dependencies = [ name = "icu_testdata" version = "0.6.0" dependencies = [ - "baked", "cargo_metadata", "clap", "displaydoc", "eyre", "futures", "icu_datagen", + "icu_list", "icu_locid", "icu_plurals", "icu_provider", diff --git a/components/calendar/Cargo.toml b/components/calendar/Cargo.toml index 5635ec15062..a4851917a8c 100644 --- a/components/calendar/Cargo.toml +++ b/components/calendar/Cargo.toml @@ -46,3 +46,5 @@ zerovec = { version = "0.7", path = "../../utils/zerovec", default-features = fa [dev-dependencies] icu = { path = "../icu", default-features = false } +icu_calendar = { version = "0.6", path = "../calendar", features = ["serde"] } +icu_testdata = { version = "0.6", path = "../../provider/testdata" } diff --git a/components/calendar/README.md b/components/calendar/README.md index ab45aaa5606..cd97808c028 100644 --- a/components/calendar/README.md +++ b/components/calendar/README.md @@ -28,7 +28,9 @@ use icu_calendar::{Date, types::IsoWeekday}; // Creating ISO date: 1992-09-02. -let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2).unwrap(); +let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2) + .expect("Failed to initialize ISO Date instance."); + assert_eq!(date_iso.day_of_week(), IsoWeekday::Wednesday); assert_eq!(date_iso.year().number, 1992); assert_eq!(date_iso.month().number, 9); @@ -51,7 +53,8 @@ assert_eq!(date_iso.month().number, 9); assert_eq!(date_iso.day_of_month().0, 2); // Creating ISO date: 2022-01-30. -let newer_date_iso = Date::new_iso_date_from_integers(2022, 1, 30).unwrap(); +let newer_date_iso = Date::new_iso_date_from_integers(2022, 1, 30) + .expect("Failed to initialize ISO Date instance."); // Comparing dates: 2022-01-30 and 1992-09-02. let duration = newer_date_iso.until(&date_iso, DateDurationUnit::Years, DateDurationUnit::Days); @@ -74,7 +77,9 @@ use icu_calendar::{Date, indian::Indian}; // Creating ISO date: 1992-09-02. -let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2).unwrap(); +let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2) + .expect("Failed to initialize ISO Date instance."); + assert_eq!(date_iso.year().number, 1992); assert_eq!(date_iso.month().number, 9); assert_eq!(date_iso.day_of_month().0, 2); @@ -108,7 +113,9 @@ use icu_calendar::{DateTime, types::Time}; // Creating ISO date: 1992-09-02 8:59 -let mut datetime_iso = DateTime::new_iso_datetime_from_integers(1992, 9, 2, 8, 59, 0).unwrap(); +let mut datetime_iso = DateTime::new_iso_datetime_from_integers(1992, 9, 2, 8, 59, 0) + .expect("Failed to initialize ISO DateTime instance."); + assert_eq!(datetime_iso.date.day_of_week(), IsoWeekday::Wednesday); assert_eq!(datetime_iso.date.year().number, 1992); assert_eq!(datetime_iso.date.month().number, 9); @@ -121,7 +128,8 @@ assert_eq!(datetime_iso.time.nanosecond, NanoSecond::new_unchecked(0)); // Advancing date by 1 year, 2 months, 3 weeks, 4 days. datetime_iso.date.add(DateDuration::new(1, 2, 3, 4)); // New time of 14:30 -datetime_iso.time = Time::try_new(14, 30, 0, 0).unwrap(); +datetime_iso.time = Time::try_new(14, 30, 0, 0) + .expect("Failed to initialize Time instance."); assert_eq!(datetime_iso.date.year().number, 1993); assert_eq!(datetime_iso.date.month().number, 11); diff --git a/components/calendar/src/any_calendar.rs b/components/calendar/src/any_calendar.rs index 114db30f2ec..74f1f0e32e0 100644 --- a/components/calendar/src/any_calendar.rs +++ b/components/calendar/src/any_calendar.rs @@ -6,6 +6,7 @@ use crate::buddhist::Buddhist; use crate::coptic::Coptic; +use crate::ethiopic::Ethiopic; use crate::gregorian::Gregorian; use crate::indian::Indian; use crate::iso::Iso; @@ -33,6 +34,7 @@ pub enum AnyCalendar { Gregorian(Gregorian), Buddhist(Buddhist), Japanese(Japanese), + Ethiopic(Ethiopic), Indian(Indian), Coptic(Coptic), Iso(Iso), @@ -45,6 +47,7 @@ pub enum AnyDateInner { Gregorian(::DateInner), Buddhist(::DateInner), Japanese(::DateInner), + Ethiopic(::DateInner), Indian(::DateInner), Coptic(::DateInner), Iso(::DateInner), @@ -56,6 +59,7 @@ macro_rules! match_cal_and_date { (&Self::Gregorian(ref $cal_matched), &AnyDateInner::Gregorian(ref $date_matched)) => $e, (&Self::Buddhist(ref $cal_matched), &AnyDateInner::Buddhist(ref $date_matched)) => $e, (&Self::Japanese(ref $cal_matched), &AnyDateInner::Japanese(ref $date_matched)) => $e, + (&Self::Ethiopic(ref $cal_matched), &AnyDateInner::Ethiopic(ref $date_matched)) => $e, (&Self::Indian(ref $cal_matched), &AnyDateInner::Indian(ref $date_matched)) => $e, (&Self::Coptic(ref $cal_matched), &AnyDateInner::Coptic(ref $date_matched)) => $e, (&Self::Iso(ref $cal_matched), &AnyDateInner::Iso(ref $date_matched)) => $e, @@ -75,6 +79,7 @@ impl Calendar for AnyCalendar { Self::Gregorian(ref c) => AnyDateInner::Gregorian(c.date_from_iso(iso)), Self::Buddhist(ref c) => AnyDateInner::Buddhist(c.date_from_iso(iso)), Self::Japanese(ref c) => AnyDateInner::Japanese(c.date_from_iso(iso)), + Self::Ethiopic(ref c) => AnyDateInner::Ethiopic(c.date_from_iso(iso)), Self::Indian(ref c) => AnyDateInner::Indian(c.date_from_iso(iso)), Self::Coptic(ref c) => AnyDateInner::Coptic(c.date_from_iso(iso)), Self::Iso(ref c) => AnyDateInner::Iso(c.date_from_iso(iso)), @@ -108,6 +113,9 @@ impl Calendar for AnyCalendar { (&Self::Japanese(ref c), &mut AnyDateInner::Japanese(ref mut d)) => { c.offset_date(d, offset.cast_unit()) } + (&Self::Ethiopic(ref c), &mut AnyDateInner::Ethiopic(ref mut d)) => { + c.offset_date(d, offset.cast_unit()) + } (&Self::Indian(ref c), &mut AnyDateInner::Indian(ref mut d)) => { c.offset_date(d, offset.cast_unit()) } @@ -160,6 +168,14 @@ impl Calendar for AnyCalendar { ) => c1 .until(d1, d2, c2, largest_unit, smallest_unit) .cast_unit(), + ( + &Self::Ethiopic(ref c1), + &Self::Ethiopic(ref c2), + &AnyDateInner::Ethiopic(ref d1), + &AnyDateInner::Ethiopic(ref d2), + ) => c1 + .until(d1, d2, c2, largest_unit, smallest_unit) + .cast_unit(), ( &Self::Indian(ref c1), &Self::Indian(ref c2), @@ -224,6 +240,7 @@ impl Calendar for AnyCalendar { Self::Gregorian(_) => "AnyCalendar (Gregorian)", Self::Buddhist(_) => "AnyCalendar (Buddhist)", Self::Japanese(_) => "AnyCalendar (Japanese)", + Self::Ethiopic(_) => "AnyCalendar (Ethiopic)", Self::Indian(_) => "AnyCalendar (Indian)", Self::Coptic(_) => "AnyCalendar (Coptic)", Self::Iso(_) => "AnyCalendar (Iso)", @@ -308,6 +325,7 @@ impl AnyCalendar { Self::Gregorian(_) => "Gregorian", Self::Buddhist(_) => "Buddhist", Self::Japanese(_) => "Japanese", + Self::Ethiopic(_) => "Ethiopic", Self::Indian(_) => "Indian", Self::Coptic(_) => "Coptic", Self::Iso(_) => "Iso", @@ -321,6 +339,7 @@ impl AnyDateInner { AnyDateInner::Gregorian(_) => "Gregorian", AnyDateInner::Buddhist(_) => "Buddhist", AnyDateInner::Japanese(_) => "Japanese", + AnyDateInner::Ethiopic(_) => "Ethiopic", AnyDateInner::Indian(_) => "Indian", AnyDateInner::Coptic(_) => "Coptic", AnyDateInner::Iso(_) => "Iso", @@ -447,6 +466,18 @@ impl IncludedInAnyCalendar for Japanese { } } +impl IncludedInAnyCalendar for Ethiopic { + fn to_any(self) -> AnyCalendar { + AnyCalendar::Ethiopic(self) + } + fn to_any_cloned(&self) -> AnyCalendar { + AnyCalendar::Ethiopic(Ethiopic) + } + fn date_to_any(d: &Self::DateInner) -> AnyDateInner { + AnyDateInner::Ethiopic(*d) + } +} + impl IncludedInAnyCalendar for Indian { fn to_any(self) -> AnyCalendar { AnyCalendar::Indian(Indian) diff --git a/components/calendar/src/buddhist.rs b/components/calendar/src/buddhist.rs index fbf77d1d747..4809fa722c7 100644 --- a/components/calendar/src/buddhist.rs +++ b/components/calendar/src/buddhist.rs @@ -10,11 +10,13 @@ //! buddhist::Buddhist}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_buddhist = Date::new_from_iso(date_iso, Buddhist); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_buddhist = DateTime::new_from_iso(datetime_iso, Buddhist); //! //! // `Date` checks @@ -131,7 +133,8 @@ impl Date { /// use icu::calendar::Date; /// use std::convert::TryFrom; /// - /// let date_buddhist = Date::new_buddhist_date(1970, 1, 2).unwrap(); + /// let date_buddhist = Date::new_buddhist_date(1970, 1, 2) + /// .expect("Failed to initialize Buddhist Date instance."); /// /// assert_eq!(date_buddhist.year().number, 1970); /// assert_eq!(date_buddhist.month().number, 1); @@ -158,7 +161,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_buddhist = DateTime::new_buddhist_datetime(1970, 1, 2, 13, 1, 0).unwrap(); + /// let datetime_buddhist = DateTime::new_buddhist_datetime(1970, 1, 2, 13, 1, 0) + /// .expect("Failed to initialize Buddhist DateTime instance."); /// /// assert_eq!(datetime_buddhist.date.year().number, 1970); /// assert_eq!(datetime_buddhist.date.month().number, 1); diff --git a/components/calendar/src/coptic.rs b/components/calendar/src/coptic.rs index cce67611372..a9bf11c7de2 100644 --- a/components/calendar/src/coptic.rs +++ b/components/calendar/src/coptic.rs @@ -10,11 +10,13 @@ //! coptic::Coptic}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_coptic = Date::new_from_iso(date_iso, Coptic); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_coptic = DateTime::new_from_iso(datetime_iso, Coptic); //! //! // `Date` checks @@ -202,7 +204,8 @@ impl Date { /// ```rust /// use icu::calendar::Date; /// - /// let date_coptic = Date::new_coptic_date(1686, 5, 6).unwrap(); + /// let date_coptic = Date::new_coptic_date(1686, 5, 6) + /// .expect("Failed to initialize Coptic Date instance."); /// /// assert_eq!(date_coptic.year().number, 1686); /// assert_eq!(date_coptic.month().number, 5); @@ -234,7 +237,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_coptic = DateTime::new_coptic_datetime(1686, 5, 6, 13, 1, 0).unwrap(); + /// let datetime_coptic = DateTime::new_coptic_datetime(1686, 5, 6, 13, 1, 0) + /// .expect("Failed to initialize Coptic DateTime instance."); /// /// assert_eq!(datetime_coptic.date.year().number, 1686); /// assert_eq!(datetime_coptic.date.month().number, 5); diff --git a/components/calendar/src/ethiopic.rs b/components/calendar/src/ethiopic.rs index 6a1897cf432..ea1ae8abcf7 100644 --- a/components/calendar/src/ethiopic.rs +++ b/components/calendar/src/ethiopic.rs @@ -10,11 +10,13 @@ //! ethiopic::Ethiopic}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_ethiopic = Date::new_from_iso(date_iso, Ethiopic); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_ethiopic = DateTime::new_from_iso(datetime_iso, Ethiopic); //! //! // `Date` checks @@ -216,7 +218,8 @@ impl Date { /// ```rust /// use icu::calendar::Date; /// - /// let date_ethiopic = Date::new_ethiopic_date(2014, 8, 25).unwrap(); + /// let date_ethiopic = Date::new_ethiopic_date(2014, 8, 25) + /// .expect("Failed to initialize Ethopic Date instance."); /// /// assert_eq!(date_ethiopic.year().number, 2014); /// assert_eq!(date_ethiopic.month().number, 8); @@ -256,7 +259,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_ethiopic = DateTime::new_ethiopic_datetime(2014, 8, 25, 13, 1, 0, 0).unwrap(); + /// let datetime_ethiopic = DateTime::new_ethiopic_datetime(2014, 8, 25, 13, 1, 0, 0) + /// .expect("Failed to initialize Ethiopic DateTime instance."); /// /// assert_eq!(datetime_ethiopic.date.year().number, 2014); /// assert_eq!(datetime_ethiopic.date.month().number, 8); @@ -298,4 +302,19 @@ mod test { assert_eq!(ethiopic_date.0.month, 13); assert_eq!(ethiopic_date.0.day, 6); } + + #[test] + fn test_iso_to_ethiopic_conversion_and_back() { + let iso_date = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); + let date_ethiopic = Date::new_from_iso(iso_date, Ethiopic); + + assert_eq!(date_ethiopic.inner.0.year, 1962); + assert_eq!(date_ethiopic.inner.0.month, 4); + assert_eq!(date_ethiopic.inner.0.day, 24); + + assert_eq!( + date_ethiopic.to_iso(), + Date::new_iso_date_from_integers(1970, 1, 2).unwrap() + ); + } } diff --git a/components/calendar/src/gregorian.rs b/components/calendar/src/gregorian.rs index b979e714bc0..a3d1c1f586c 100644 --- a/components/calendar/src/gregorian.rs +++ b/components/calendar/src/gregorian.rs @@ -10,11 +10,13 @@ //! gregorian::Gregorian}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_gregorian = Date::new_from_iso(date_iso, Gregorian); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_gregorian = DateTime::new_from_iso(datetime_iso, Gregorian); //! //! // `Date` checks @@ -130,11 +132,14 @@ impl Date { /// use std::convert::TryFrom; /// /// let iso_year = IsoYear(1970); - /// let iso_month = IsoMonth::try_from(1).unwrap(); - /// let iso_day = IsoDay::try_from(2).unwrap(); + /// let iso_month = IsoMonth::try_from(1) + /// .expect("Failed to initialize IsoMonth instance."); + /// let iso_day = IsoDay::try_from(2) + /// .expect("Failed to initialize IsoDay instance."); /// /// // Conversion from ISO to Gregorian - /// let date_gregorian = Date::new_gregorian_date(iso_year, iso_month, iso_day).unwrap(); + /// let date_gregorian = Date::new_gregorian_date(iso_year, iso_month, iso_day) + /// .expect("Failed to initialize Gregorian Date instance."); /// /// assert_eq!(date_gregorian.year().number, 1970); /// assert_eq!(date_gregorian.month().number, 1); @@ -160,7 +165,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_gregorian = DateTime::new_gregorian_datetime_from_integers(1970, 1, 2, 13, 1, 0, 0).unwrap(); + /// let datetime_gregorian = DateTime::new_gregorian_datetime_from_integers(1970, 1, 2, 13, 1, 0, 0) + /// .expect("Failed to initialize Gregorian DateTime instance."); /// /// assert_eq!(datetime_gregorian.date.year().number, 1970); /// assert_eq!(datetime_gregorian.date.month().number, 1); diff --git a/components/calendar/src/indian.rs b/components/calendar/src/indian.rs index d1f03b40158..21ab1d1928a 100644 --- a/components/calendar/src/indian.rs +++ b/components/calendar/src/indian.rs @@ -10,11 +10,13 @@ //! indian::Indian}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_indian = Date::new_from_iso(date_iso, Indian); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_indian = DateTime::new_from_iso(datetime_iso, Indian); //! //! // `Date` checks @@ -185,7 +187,8 @@ impl Date { /// ```rust /// use icu::calendar::Date; /// - /// let date_indian = Date::new_indian_date(1891, 10, 12).unwrap(); + /// let date_indian = Date::new_indian_date(1891, 10, 12) + /// .expect("Failed to initialize Indian Date instance."); /// /// assert_eq!(date_indian.year().number, 1891); /// assert_eq!(date_indian.month().number, 10); @@ -217,7 +220,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_indian = DateTime::new_indian_datetime(1891, 10, 12, 13, 1, 0).unwrap(); + /// let datetime_indian = DateTime::new_indian_datetime(1891, 10, 12, 13, 1, 0) + /// .expect("Failed to initialize Indian DateTime instance."); /// /// assert_eq!(datetime_indian.date.year().number, 1891); /// assert_eq!(datetime_indian.date.month().number, 10); diff --git a/components/calendar/src/iso.rs b/components/calendar/src/iso.rs index 333dade3e69..b9448061536 100644 --- a/components/calendar/src/iso.rs +++ b/components/calendar/src/iso.rs @@ -9,10 +9,12 @@ //! types::IsoHour, types::IsoMinute, types::IsoSecond}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! //! // `Date` checks //! assert_eq!(date_iso.year().number, 1970); @@ -330,17 +332,18 @@ impl Date { /// /// ```rust /// use icu::calendar::{Date, - /// iso::IsoYear, - /// iso::IsoMonth, - /// iso::IsoDay}; + /// iso::IsoYear, iso::IsoMonth, iso::IsoDay}; /// use std::convert::TryFrom; /// /// let iso_year = IsoYear(1996); - /// let iso_month = IsoMonth::try_from(2).unwrap(); - /// let iso_day = IsoDay::try_from(3).unwrap(); + /// let iso_month = IsoMonth::try_from(2) + /// .expect("Failed to initialize IsoMonth instance."); + /// let iso_day = IsoDay::try_from(3) + /// .expect("Failed to initialize IsoDay instance."); /// /// // Creation of ISO date - /// let date_iso = Date::new_iso_date(iso_year, iso_month, iso_day).unwrap(); + /// let date_iso = Date::new_iso_date(iso_year, iso_month, iso_day) + /// .expect("Failed to initialize ISO Date instance."); /// /// assert_eq!(date_iso.year().number, 1996); /// assert_eq!(date_iso.month().number, 2); @@ -366,7 +369,8 @@ impl Date { /// ```rust /// use icu::calendar::Date; /// - /// let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); + /// let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) + /// .expect("Failed to initialize ISO Date instance."); /// /// assert_eq!(date_iso.year().number, 1970); /// assert_eq!(date_iso.month().number, 1); @@ -386,11 +390,10 @@ impl DateTime { /// /// ```rust /// use icu::calendar::{DateTime, - /// types::IsoHour, - /// types::IsoMinute, - /// types::IsoSecond}; + /// types::IsoHour, types::IsoMinute, types::IsoSecond}; /// - /// let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); + /// let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) + /// .expect("Failed to initialize ISO DateTime instance."); /// /// assert_eq!(datetime_iso.date.year().number, 1970); /// assert_eq!(datetime_iso.date.month().number, 1); @@ -493,7 +496,7 @@ impl Iso { let year = 400 * n_400 + 100 * n_100 + 4 * n_4 + n_1; - if n_400 == 4 || n_4 == 1 { + if n_100 == 4 || n_1 == 4 { year } else { year + 1 diff --git a/components/calendar/src/japanese.rs b/components/calendar/src/japanese.rs index 00f90fdaca9..875d164e6ba 100644 --- a/components/calendar/src/japanese.rs +++ b/components/calendar/src/japanese.rs @@ -2,7 +2,45 @@ // called LICENSE at the top level of the ICU4X source tree // (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ). -//! This module contains types and implementations for the Japanese calendar +//! This module contains types and implementations for the Japanese calendar. +//! +//! ```rust +//! use icu::calendar::{Date, DateTime, +//! types::IsoHour, types::IsoMinute, types::IsoSecond, types::Era, +//! japanese::Japanese}; +//! use tinystr::tinystr; +//! +//! // `icu_testdata::get_provider` contains information specifying era dates. +//! // Production code should probably use its own data provider +//! let provider = icu_testdata::get_provider(); +//! let japanese_calendar = Japanese::try_new(&provider) +//! .expect("Cannot load japanese data"); +//! +//! // `Date` type +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); +//! let date_japanese = Date::new_from_iso(date_iso, japanese_calendar.clone()); +//! +//! // `DateTime` type +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); +//! let datetime_japanese = DateTime::new_from_iso(datetime_iso, japanese_calendar.clone()); +//! +//! // `Date` checks +//! assert_eq!(date_japanese.year().number, 45); +//! assert_eq!(date_japanese.month().number, 1); +//! assert_eq!(date_japanese.day_of_month().0, 2); +//! assert_eq!(date_japanese.year().era, Era(tinystr!(16, "showa"))); +//! +//! // `DateTime` type +//! assert_eq!(datetime_japanese.date.year().number, 45); +//! assert_eq!(datetime_japanese.date.month().number, 1); +//! assert_eq!(datetime_japanese.date.day_of_month().0, 2); +//! assert_eq!(datetime_japanese.date.year().era, Era(tinystr!(16, "showa"))); +//! assert_eq!(datetime_japanese.time.hour, IsoHour::new_unchecked(13)); +//! assert_eq!(datetime_japanese.time.minute, IsoMinute::new_unchecked(1)); +//! assert_eq!(datetime_japanese.time.second, IsoSecond::new_unchecked(0)); +//! ``` use crate::iso::{Iso, IsoDateInner}; use crate::provider::{self, EraStartDate}; diff --git a/components/calendar/src/julian.rs b/components/calendar/src/julian.rs index a89cd308de5..65b6c92438a 100644 --- a/components/calendar/src/julian.rs +++ b/components/calendar/src/julian.rs @@ -10,11 +10,13 @@ //! julian::Julian}; //! //! // `Date` type -//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2).unwrap(); +//! let date_iso = Date::new_iso_date_from_integers(1970, 1, 2) +//! .expect("Failed to initialize ISO Date instance."); //! let date_julian = Date::new_from_iso(date_iso, Julian); //! //! // `DateTime` type -//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0).unwrap(); +//! let datetime_iso = DateTime::new_iso_datetime_from_integers(1970, 1, 2, 13, 1, 0) +//! .expect("Failed to initialize ISO DateTime instance."); //! let datetime_julian = DateTime::new_from_iso(datetime_iso, Julian); //! //! // `Date` checks @@ -231,7 +233,8 @@ impl Date { /// ```rust /// use icu::calendar::Date; /// - /// let date_julian = Date::new_julian_date(1969, 12, 20).unwrap(); + /// let date_julian = Date::new_julian_date(1969, 12, 20) + /// .expect("Failed to initialize Julian Date instance."); /// /// assert_eq!(date_julian.year().number, 1969); /// assert_eq!(date_julian.month().number, 12); @@ -265,7 +268,8 @@ impl DateTime { /// types::IsoMinute, /// types::IsoSecond}; /// - /// let datetime_julian = DateTime::new_julian_datetime(1969, 12, 20, 13, 1, 0).unwrap(); + /// let datetime_julian = DateTime::new_julian_datetime(1969, 12, 20, 13, 1, 0) + /// .expect("Failed to initialize Julian DateTime instance."); /// /// assert_eq!(datetime_julian.date.year().number, 1969); /// assert_eq!(datetime_julian.date.month().number, 12); diff --git a/components/calendar/src/lib.rs b/components/calendar/src/lib.rs index 2f4ce6391c1..b8f2d4ceaa5 100644 --- a/components/calendar/src/lib.rs +++ b/components/calendar/src/lib.rs @@ -30,7 +30,9 @@ //! types::IsoWeekday}; //! //! // Creating ISO date: 1992-09-02. -//! let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2).unwrap(); +//! let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2) +//! .expect("Failed to initialize ISO Date instance."); +//! //! assert_eq!(date_iso.day_of_week(), IsoWeekday::Wednesday); //! assert_eq!(date_iso.year().number, 1992); //! assert_eq!(date_iso.month().number, 9); @@ -53,7 +55,8 @@ //! assert_eq!(date_iso.day_of_month().0, 2); //! //! // Creating ISO date: 2022-01-30. -//! let newer_date_iso = Date::new_iso_date_from_integers(2022, 1, 30).unwrap(); +//! let newer_date_iso = Date::new_iso_date_from_integers(2022, 1, 30) +//! .expect("Failed to initialize ISO Date instance."); //! //! // Comparing dates: 2022-01-30 and 1992-09-02. //! let duration = newer_date_iso.until(&date_iso, DateDurationUnit::Years, DateDurationUnit::Days); @@ -76,7 +79,9 @@ //! indian::Indian}; //! //! // Creating ISO date: 1992-09-02. -//! let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2).unwrap(); +//! let mut date_iso = Date::new_iso_date_from_integers(1992, 9, 2) +//! .expect("Failed to initialize ISO Date instance."); +//! //! assert_eq!(date_iso.year().number, 1992); //! assert_eq!(date_iso.month().number, 9); //! assert_eq!(date_iso.day_of_month().0, 2); @@ -110,7 +115,9 @@ //! types::Time}; //! //! // Creating ISO date: 1992-09-02 8:59 -//! let mut datetime_iso = DateTime::new_iso_datetime_from_integers(1992, 9, 2, 8, 59, 0).unwrap(); +//! let mut datetime_iso = DateTime::new_iso_datetime_from_integers(1992, 9, 2, 8, 59, 0) +//! .expect("Failed to initialize ISO DateTime instance."); +//! //! assert_eq!(datetime_iso.date.day_of_week(), IsoWeekday::Wednesday); //! assert_eq!(datetime_iso.date.year().number, 1992); //! assert_eq!(datetime_iso.date.month().number, 9); @@ -123,7 +130,8 @@ //! // Advancing date by 1 year, 2 months, 3 weeks, 4 days. //! datetime_iso.date.add(DateDuration::new(1, 2, 3, 4)); //! // New time of 14:30 -//! datetime_iso.time = Time::try_new(14, 30, 0, 0).unwrap(); +//! datetime_iso.time = Time::try_new(14, 30, 0, 0) +//! .expect("Failed to initialize Time instance."); //! //! assert_eq!(datetime_iso.date.year().number, 1993); //! assert_eq!(datetime_iso.date.month().number, 11); diff --git a/components/datetime/src/calendar.rs b/components/datetime/src/calendar.rs index 5217fdc3755..da52afbbc53 100644 --- a/components/datetime/src/calendar.rs +++ b/components/datetime/src/calendar.rs @@ -3,7 +3,8 @@ // (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ). use icu_calendar::{ - buddhist::Buddhist, coptic::Coptic, indian::Indian, japanese::Japanese, Gregorian, + buddhist::Buddhist, coptic::Coptic, ethiopic::Ethiopic, indian::Indian, japanese::Japanese, + Gregorian, }; use icu_locid::extensions::unicode::Value; use icu_locid::unicode_ext_value; @@ -36,3 +37,7 @@ impl CldrCalendar for Coptic { impl CldrCalendar for Indian { const BCP_47_IDENTIFIER: Value = unicode_ext_value!("indian"); } + +impl CldrCalendar for Ethiopic { + const BCP_47_IDENTIFIER: Value = unicode_ext_value!("ethiopic"); +} diff --git a/components/datetime/src/pattern/common/serde.rs b/components/datetime/src/pattern/common/serde.rs index 19bc76bd84b..382d96fdad3 100644 --- a/components/datetime/src/pattern/common/serde.rs +++ b/components/datetime/src/pattern/common/serde.rs @@ -129,7 +129,7 @@ mod runtime { struct PatternForSerde<'data> { #[serde(borrow)] pub items: ZeroVec<'data, PatternItem>, - pub(crate) time_granularity: TimeGranularity, + pub time_granularity: TimeGranularity, } impl<'data> From> for Pattern<'data> { @@ -141,15 +141,6 @@ mod runtime { } } - impl<'data> From<&Pattern<'data>> for PatternForSerde<'data> { - fn from(pfs: &Pattern<'data>) -> Self { - Self { - items: pfs.items.clone(), - time_granularity: pfs.time_granularity, - } - } - } - #[allow(clippy::upper_case_acronyms)] struct DeserializePatternUTS35String; @@ -195,7 +186,10 @@ mod runtime { if serializer.is_human_readable() { serializer.serialize_str(&self.to_string()) } else { - let pfs = PatternForSerde::from(self); + let pfs = PatternForSerde { + items: self.items.clone(), + time_granularity: self.time_granularity, + }; pfs.serialize(serializer) } } diff --git a/components/datetime/src/pattern/mod.rs b/components/datetime/src/pattern/mod.rs index 814da323299..f53232193f1 100644 --- a/components/datetime/src/pattern/mod.rs +++ b/components/datetime/src/pattern/mod.rs @@ -22,7 +22,8 @@ pub use item::{GenericPatternItem, PatternItem}; )] #[cfg_attr(feature = "datagen", derive(serde::Serialize))] #[cfg_attr(feature = "serde", derive(serde::Deserialize))] -pub(crate) enum TimeGranularity { +#[allow(clippy::exhaustive_enums)] // part of data struct +pub enum TimeGranularity { None, Hours, Minutes, diff --git a/components/datetime/src/pattern/runtime/pattern.rs b/components/datetime/src/pattern/runtime/pattern.rs index c07dd12565a..723a45de2c3 100644 --- a/components/datetime/src/pattern/runtime/pattern.rs +++ b/components/datetime/src/pattern/runtime/pattern.rs @@ -9,9 +9,12 @@ use icu_provider::{yoke, zerofrom}; use zerovec::ZeroVec; #[derive(Debug, PartialEq, Clone, yoke::Yokeable, zerofrom::ZeroFrom)] +#[allow(clippy::exhaustive_structs)] // part of data struct pub struct Pattern<'data> { pub items: ZeroVec<'data, PatternItem>, - pub(crate) time_granularity: TimeGranularity, + /// This field should contain the smallest time unit from the `items` vec. + /// If it doesn't, unexpected results for day periods may be encountered. + pub time_granularity: TimeGranularity, } impl<'data> Pattern<'data> { diff --git a/components/datetime/tests/datetime.rs b/components/datetime/tests/datetime.rs index 82b680d0141..6c6c2d57eb4 100644 --- a/components/datetime/tests/datetime.rs +++ b/components/datetime/tests/datetime.rs @@ -8,8 +8,8 @@ mod fixtures; mod patterns; use icu_calendar::{ - buddhist::Buddhist, coptic::Coptic, indian::Indian, japanese::Japanese, AsCalendar, DateTime, - Gregorian, + buddhist::Buddhist, coptic::Coptic, ethiopic::Ethiopic, indian::Indian, japanese::Japanese, + AsCalendar, DateTime, Gregorian, }; use icu_datetime::provider::time_zones::{MetaZoneId, TimeZoneBcp47Id}; use icu_datetime::{ @@ -51,6 +51,7 @@ fn test_fixture(fixture_name: &str) { let input_japanese = input_value.to_calendar(japanese); let input_coptic = input_value.to_calendar(Coptic); let input_indian = input_value.to_calendar(Indian); + let input_ethiopic = input_value.to_calendar(Ethiopic); let description = match fx.description { Some(description) => { @@ -98,6 +99,15 @@ fn test_fixture(fixture_name: &str) { &options, &description, ) + } else if let Some(locale) = locale.strip_prefix("ethiopic/") { + assert_fixture_element( + locale, + &input_ethiopic, + &output_value, + &provider, + &options, + &description, + ) } else { assert_fixture_element( &locale, diff --git a/components/datetime/tests/fixtures/tests/components-width-differences.json b/components/datetime/tests/fixtures/tests/components-width-differences.json index efd2bd596c7..06902840bcc 100644 --- a/components/datetime/tests/fixtures/tests/components-width-differences.json +++ b/components/datetime/tests/fixtures/tests/components-width-differences.json @@ -31,7 +31,8 @@ "en": "2020 AD", "buddhist/en": "2563 BE", "coptic/en": "1736 ERA1", - "coptic/fr": "1736 ap. D." + "coptic/fr": "1736 ap. D.", + "ethiopic/en" : "2012 ERA0" } } }, diff --git a/components/datetime/tests/fixtures/tests/components.json b/components/datetime/tests/fixtures/tests/components.json index 98b300a01d7..959e4a84a6b 100644 --- a/components/datetime/tests/fixtures/tests/components.json +++ b/components/datetime/tests/fixtures/tests/components.json @@ -23,7 +23,8 @@ "japanese/ja": "令和2年1月21日火曜日 8:25:07", "coptic/en": "Tuesday, Toba 12, 1736 ERA1 at 08:25:07", "coptic/fr": "mardi 12 toubah 1736 après Dioclétien à 08:25:07", - "indian/en": "Tuesday, Chaitra 21, 1942 Saka at 08:25:07" + "indian/en": "Tuesday, Chaitra 21, 1942 Saka at 08:25:07", + "ethiopic/en": "Tuesday, Ter 12, 2012 ERA0 at 08:25:07" } } } diff --git a/experimental/segmenter/src/language.rs b/experimental/segmenter/src/language.rs index e2d2322a58c..052b7052f9e 100644 --- a/experimental/segmenter/src/language.rs +++ b/experimental/segmenter/src/language.rs @@ -2,6 +2,11 @@ // called LICENSE at the top level of the ICU4X source tree // (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ). +use alloc::string::{String, ToString}; +use alloc::vec::Vec; +use core::slice::Iter; +use core::str::Chars; + #[derive(PartialEq)] pub enum Language { Burmese, @@ -19,3 +24,135 @@ pub fn get_language(codepoint: u32) -> Language { _ => Language::Unknown, } } + +/// This struct is an iterator that returns the string per language from the +/// given string. +/// +/// Actually supported LSTM model is Thai and Burmese only. If using other +/// code point, it causes panic. +pub struct LanguageIterator<'s> { + input: Chars<'s>, + current_ch: Option, +} + +impl<'s> LanguageIterator<'s> { + #[allow(dead_code)] + pub fn new(input: &'s str) -> Self { + let mut input = input.chars(); + let current_ch = input.next(); + Self { input, current_ch } + } +} + +impl<'s> Iterator for LanguageIterator<'s> { + type Item = String; + + fn next(&mut self) -> Option { + let mut s = "".to_string(); + + let lang = get_language(self.current_ch? as u32); + s.push(self.current_ch.unwrap()); + for c in self.input.by_ref() { + self.current_ch = Some(c); + let new_lang = get_language(c as u32); + if lang != new_lang { + return Some(s); + } + s.push(c); + } + self.current_ch = None; + Some(s) + } +} + +pub struct LanguageIteratorUtf16<'s> { + input: Iter<'s, u16>, + current_ch: Option<&'s u16>, +} + +impl<'s> LanguageIteratorUtf16<'s> { + #[allow(dead_code)] + pub fn new(input: &'s [u16]) -> Self { + let mut input = input.iter(); + let current_ch = input.next(); + Self { input, current_ch } + } +} + +impl<'s> Iterator for LanguageIteratorUtf16<'s> { + type Item = Vec; + + fn next(&mut self) -> Option { + let mut s: Vec = Vec::new(); + + let lang = get_language(*self.current_ch? as u32); + s.push(*self.current_ch.unwrap()); + for c in self.input.by_ref() { + self.current_ch = Some(c); + let new_lang = get_language(*c as u32); + if lang != new_lang { + return Some(s); + } + s.push(*c); + } + self.current_ch = None; + Some(s) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_thai_only() { + let s = "ภาษาไทยภาษาไทย"; + let utf16: Vec = s.encode_utf16().collect(); + let mut iter = LanguageIteratorUtf16::new(&utf16); + assert_eq!(iter.next(), Some(utf16), "Thai language only with UTF-16"); + let mut iter = LanguageIterator::new(s); + assert_eq!( + iter.next(), + Some(s.to_string()), + "Thai language only with UTF-8" + ); + assert_eq!(iter.next(), None, "Iterator for UTF-8 is finished"); + } + + #[test] + fn test_combine() { + const TEST_STR_THAI: &str = "ภาษาไทยภาษาไทย"; + const TEST_STR_BURMESE: &str = "ဗမာနွယ်ဘာသာစကားမျာ"; + let mut s = String::from(TEST_STR_THAI); + s.push_str(TEST_STR_BURMESE); + let utf16: Vec = s.encode_utf16().collect(); + let thai_utf16: Vec = TEST_STR_THAI.encode_utf16().collect(); + let burmese_utf16: Vec = TEST_STR_BURMESE.encode_utf16().collect(); + + let mut iter = LanguageIteratorUtf16::new(&utf16); + assert_eq!( + iter.next(), + Some(thai_utf16), + "Thai language with UTF-16 at first" + ); + assert_eq!( + iter.next(), + Some(burmese_utf16), + "Burmese language with UTF-16 at second" + ); + assert_eq!(iter.next(), None, "Iterator for UTF-16 is finished"); + + let mut iter = LanguageIterator::new(&s); + assert_eq!( + iter.next(), + Some(TEST_STR_THAI.to_string()), + "Thai language with UTF-8 at first" + ); + assert_eq!( + iter.next(), + Some(TEST_STR_BURMESE.to_string()), + "Burmese language with UTF-8 at second" + ); + assert_eq!(iter.next(), None, "Iterator for UTF-8 is finished"); + } +} diff --git a/experimental/segmenter/src/lstm.rs b/experimental/segmenter/src/lstm.rs index e4e159f4f47..c707737c7d6 100644 --- a/experimental/segmenter/src/lstm.rs +++ b/experimental/segmenter/src/lstm.rs @@ -8,7 +8,6 @@ use alloc::string::String; use alloc::string::ToString; use alloc::vec::Vec; use core::char::decode_utf16; -use core::str::Chars; use icu_provider::DataPayload; use icu_segmenter_lstm::lstm::Lstm; use icu_segmenter_lstm::structs; @@ -40,49 +39,6 @@ fn get_best_lstm_model(codepoint: u32) -> Lstm { } } -/// This struct is an iterator that returns the string per language from the -/// given string. -/// -/// Actually supported LSTM model is Thai and Burmese only. If using other -/// code point, it causes panic. -struct LanguageIterator<'a> { - input: Chars<'a>, - last: Option, -} - -impl<'a> LanguageIterator<'a> { - pub fn new(input: &'a str) -> Self { - let mut input = input.chars(); - let last = input.next(); - Self { input, last } - } -} - -impl<'a> Iterator for LanguageIterator<'a> { - type Item = String; - - fn next(&mut self) -> Option { - let mut s = "".to_string(); - - let lang = get_language(self.last? as u32); - s.push(self.last.unwrap()); - loop { - let c = self.input.next(); - if c.is_none() { - self.last = None; - break; - } - self.last = c; - let new_lang = get_language(c.unwrap() as u32); - if lang != new_lang { - break; - } - s.push(c.unwrap()); - } - Some(s) - } -} - // A word break iterator using LSTM model. Input string have to be same language. struct LstmSegmenterIterator { diff --git a/experimental/segmenter_lstm/tests/lstm_test.rs b/experimental/segmenter_lstm/tests/lstm_test.rs index 3b7edec00da..e72b0ce4734 100644 --- a/experimental/segmenter_lstm/tests/lstm_test.rs +++ b/experimental/segmenter_lstm/tests/lstm_test.rs @@ -9,7 +9,6 @@ use icu_segmenter_lstm::structs; use serde::{Deserialize, Serialize}; use std::fs::File; use std::io::BufReader; -use std::rc::Rc; /// `TestCase` is a struct used to store a single test case. /// Each test case has two attributs: `unseg` which denots the unsegmented line, and `true_bies` which indicates the Bies @@ -39,10 +38,12 @@ impl TestText { } fn load_lstm_data(filename: &str) -> DataPayload { - let buf = std::fs::read(filename).expect("File can read to end"); - DataPayload::::try_from_rc_buffer_badly(Rc::from(buf), |bytes| { - serde_json::from_slice(bytes) - }) + DataPayload::::try_from_rc_buffer_badly( + std::fs::read(filename) + .expect("File can read to end") + .into(), + |bytes| serde_json::from_slice(bytes), + ) .expect("JSON syntax error") } diff --git a/ffi/diplomat/src/provider.rs b/ffi/diplomat/src/provider.rs index 6b5cc76f870..79ec71cc1d1 100644 --- a/ffi/diplomat/src/provider.rs +++ b/ffi/diplomat/src/provider.rs @@ -75,7 +75,7 @@ pub mod ffi { /// Constructs a `BlobDataProvider` and returns it as an [`ICU4XDataProvider`]. #[diplomat::rust_link(icu_provider_blob::BlobDataProvider, Struct)] pub fn create_from_byte_slice(blob: &[u8]) -> ICU4XCreateDataProviderResult { - make_result!(BlobDataProvider::new_from_rc_blob(alloc::rc::Rc::from(blob)).ok()) + make_result!(BlobDataProvider::new_from_blob(blob).ok()) } /// Constructs an empty `StaticDataProvider` and returns it as an [`ICU4XDataProvider`]. diff --git a/provider/blob/Cargo.toml b/provider/blob/Cargo.toml index 54fea0474f8..5f32b029359 100644 --- a/provider/blob/Cargo.toml +++ b/provider/blob/Cargo.toml @@ -46,6 +46,7 @@ icu_locid = { version = "0.6", path = "../../components/locid", features = ["ser path = "src/lib.rs" [features] +default = [] export = [ "log", "postcard/alloc", diff --git a/provider/blob/src/blob_data_provider.rs b/provider/blob/src/blob_data_provider.rs index 5cf4a377d5e..1d4b82eddcf 100644 --- a/provider/blob/src/blob_data_provider.rs +++ b/provider/blob/src/blob_data_provider.rs @@ -3,9 +3,9 @@ // (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ). use crate::blob_schema::BlobSchema; -use alloc::rc::Rc; use icu_provider::buf::BufferFormat; use icu_provider::prelude::*; +use icu_provider::RcWrap; use serde::de::Deserialize; use writeable::Writeable; use yoke::*; @@ -18,6 +18,11 @@ use zerovec::maps::{KeyError, ZeroMap2dBorrowed}; /// /// If you prefer to bake the data into your binary, see [`StaticDataProvider`]. /// +/// # `Sync + Send` +/// +/// This provider uses a [`icu_provider::RcWrap`] internally, which can be made `Sync + Send` with the +/// `sync` feature on the [`icu_provider`] crate. +/// /// # Examples /// /// ``` @@ -34,7 +39,7 @@ use zerovec::maps::{KeyError, ZeroMap2dBorrowed}; /// )).expect("Reading pre-computed postcard buffer"); /// /// // Create a DataProvider from it: -/// let provider = BlobDataProvider::new_from_rc_blob(blob.into()) +/// let provider = BlobDataProvider::new_from_blob(blob) /// .expect("Deserialization should succeed"); /// /// // Check that it works: @@ -53,14 +58,14 @@ use zerovec::maps::{KeyError, ZeroMap2dBorrowed}; /// [`StaticDataProvider`]: crate::StaticDataProvider pub struct BlobDataProvider { #[allow(clippy::type_complexity)] - data: Yoke, Rc<[u8]>>, + data: Yoke, RcWrap>, } impl BlobDataProvider { - /// Create a [`BlobDataProvider`] from an `Rc` blob of ICU4X data. - pub fn new_from_rc_blob(blob: Rc<[u8]>) -> Result { + /// Create a [`BlobDataProvider`] from a blob of ICU4X data. + pub fn new_from_blob>(blob: B) -> Result { Ok(BlobDataProvider { - data: Yoke::try_attach_to_cart_badly(blob, |bytes| { + data: Yoke::try_attach_to_cart_badly(blob.into(), |bytes| { BlobSchema::deserialize(&mut postcard::Deserializer::from_bytes(bytes)).map( |blob| { let BlobSchema::V001(blob) = blob; diff --git a/provider/blob/src/export/mod.rs b/provider/blob/src/export/mod.rs index b3c0f61cda2..12374bf0562 100644 --- a/provider/blob/src/export/mod.rs +++ b/provider/blob/src/export/mod.rs @@ -39,7 +39,7 @@ //! } //! //! // Create a blob provider reading from the buffer -//! let provider = BlobDataProvider::new_from_rc_blob(buffer.into()) +//! let provider = BlobDataProvider::new_from_blob(buffer) //! .expect("Should successfully read from buffer"); //! //! // Read the key from the filesystem and ensure it is as expected diff --git a/provider/core/Cargo.toml b/provider/core/Cargo.toml index 8b44af17b83..6cee45385de 100644 --- a/provider/core/Cargo.toml +++ b/provider/core/Cargo.toml @@ -35,6 +35,8 @@ extra_features = ["serde"] all-features = true [features] +default = [] +sync = [] std = ["icu_locid/std"] serde = ["dep:serde", "yoke/serde"] macros = ["icu_provider_macros"] @@ -48,7 +50,7 @@ deserialize_bincode_1 = ["serde", "bincode", "std"] deserialize_postcard_07 = ["serde", "postcard"] # Dependencies for running data generation -datagen = ["dhat", "serde", "erased-serde", "crabbake"] +datagen = ["dhat", "serde", "erased-serde", "crabbake", "std"] [dependencies] icu_locid = { version = "0.6", path = "../../components/locid" } @@ -58,6 +60,7 @@ yoke = { version = "0.5.0", path = "../../utils/yoke", features = ["derive"] } zerofrom = { version = "0.1.0", path = "../../utils/zerofrom", features = ["derive"] } zerovec = { version = "0.7.0", path = "../../utils/zerovec", features = ["derive"]} litemap = { version = "0.4.0", path = "../../utils/litemap" } +stable_deref_trait = { version = "1.2.0", default-features = false } log = { version = "0.4", optional = true } icu_provider_macros = { version = "0.6", path = "../macros", optional = true } diff --git a/provider/core/src/any.rs b/provider/core/src/any.rs index 3e194c1235d..a06dabc7ed6 100644 --- a/provider/core/src/any.rs +++ b/provider/core/src/any.rs @@ -384,9 +384,8 @@ mod test { #[test] fn test_non_owned_any_marker() { // This test demonstrates a code path that can trigger the InvalidState error kind. - let rc_buffer: Rc<[u8]> = Rc::from([]); let payload_result: Result, core::convert::Infallible> = - DataPayload::try_from_rc_buffer_badly(rc_buffer, |_| { + DataPayload::try_from_rc_buffer_badly((&[] as &[u8]).into(), |_| { Ok(AnyPayload::from_static_ref(&CONST_DATA)) }); let err = payload_result diff --git a/provider/core/src/data_provider.rs b/provider/core/src/data_provider.rs index e3ac09b219b..a6af9821448 100644 --- a/provider/core/src/data_provider.rs +++ b/provider/core/src/data_provider.rs @@ -14,8 +14,6 @@ use crate::resource::ResourceOptions; use crate::yoke::trait_hack::YokeTraitHack; use crate::yoke::*; -use alloc::rc::Rc; - use core::convert::TryFrom; use core::fmt; use core::fmt::Debug; @@ -76,6 +74,11 @@ pub struct DataResponseMetadata { /// To transform a [`DataPayload`] to a different type backed by the same data store (cart), use /// [`DataPayload::map_project()`] or one of its sister methods. /// +/// # `sync` feature +/// +/// By default, the payload uses an [`Rc<[u8]>`] internally and hence is neither [`Sync`] nor [`Send`]. +/// If these traits are required, the `sync` feature can be enabled to use an [`Arc<[u8]>`] instead. +/// /// # Examples /// /// Basic usage, using the `CowStrMarker` marker: @@ -93,7 +96,7 @@ pub struct DataPayload where M: DataMarker, { - pub(crate) yoke: Yoke>>, + pub(crate) yoke: Yoke>, } impl Debug for DataPayload @@ -147,6 +150,42 @@ where { } +/// A wrapper type that wraps either an [`Rc`](alloc::rc::Rc) or an +/// [`Arc`](alloc::sync::Arc), depending on the "sync" feature. Create +/// this from a `&[u8]`. +#[derive(Clone)] +pub struct RcWrap( + #[cfg(not(feature = "sync"))] alloc::rc::Rc<[u8]>, + #[cfg(feature = "sync")] alloc::sync::Arc<[u8]>, +); + +impl core::ops::Deref for RcWrap { + type Target = [u8]; + fn deref(&self) -> &Self::Target { + self.0.deref() + } +} + +// Safe because both Rc and Arc are CloneableCart +unsafe impl CloneableCart for RcWrap {} + +// Safe because both Rc and Arc are StableDeref +unsafe impl stable_deref_trait::StableDeref for RcWrap {} + +impl From> for RcWrap { + fn from(other: alloc::vec::Vec) -> Self { + Self(other.into()) + } +} + +// Constructing from `Box<[u8]>` copies the whole slice, so we might +// as well define this on a slice directly. +impl From<&[u8]> for RcWrap { + fn from(other: &[u8]) -> Self { + Self(other.into()) + } +} + #[test] fn test_clone_eq() { use crate::marker::CowStrMarker; @@ -169,10 +208,10 @@ where /// [`try_from_rc_buffer_badly()`](Self::try_from_rc_buffer_badly) instead. #[inline] pub fn try_from_rc_buffer( - rc_buffer: Rc<[u8]>, + buffer: RcWrap, f: impl for<'de> FnOnce(&'de [u8]) -> Result<>::Output, E>, ) -> Result { - let yoke = Yoke::try_attach_to_cart(rc_buffer, f)?.wrap_cart_in_option(); + let yoke = Yoke::try_attach_to_cart(buffer, f)?.wrap_cart_in_option(); Ok(Self { yoke }) } @@ -190,13 +229,9 @@ where /// # #[cfg(feature = "serde_json")] { /// use icu_provider::prelude::*; /// use icu_provider::hello_world::*; - /// use std::rc::Rc; - /// - /// let json_text = "{\"message\":\"Hello World\"}"; - /// let json_rc_buffer: Rc<[u8]> = json_text.as_bytes().into(); /// /// let payload = DataPayload::::try_from_rc_buffer_badly( - /// json_rc_buffer.clone(), + /// "{\"message\":\"Hello World\"}".as_bytes().into(), /// |bytes| { /// serde_json::from_slice(bytes) /// } @@ -208,10 +243,10 @@ where /// ``` #[allow(clippy::type_complexity)] pub fn try_from_rc_buffer_badly( - rc_buffer: Rc<[u8]>, + buffer: RcWrap, f: for<'de> fn(&'de [u8]) -> Result<>::Output, E>, ) -> Result { - let yoke = Yoke::try_attach_to_cart(rc_buffer, f)?.wrap_cart_in_option(); + let yoke = Yoke::try_attach_to_cart(buffer, f)?.wrap_cart_in_option(); Ok(Self { yoke }) } @@ -219,7 +254,7 @@ where /// conversion. This can often be a Serde deserialization operation. /// /// This function is similar to [`DataPayload::try_from_rc_buffer`], but it accepts a buffer - /// that is already yoked to an Rc buffer cart. + /// that is already yoked. /// /// # Examples /// @@ -227,18 +262,12 @@ where /// # #[cfg(feature = "serde_json")] { /// use icu_provider::prelude::*; /// use icu_provider::hello_world::*; - /// use std::rc::Rc; /// use icu_provider::yoke::Yoke; /// - /// let json_text = "{\"message\":\"Hello World\"}"; - /// let json_rc_buffer: Rc<[u8]> = json_text.as_bytes().into(); - /// /// let payload = DataPayload::::try_from_yoked_buffer( - /// Yoke::attach_to_zero_copy_cart(json_rc_buffer), + /// Yoke::attach_to_cart_badly("{\"message\":\"Hello World\"}".as_bytes().into(), |b| b), /// (), - /// |bytes, _, _| { - /// serde_json::from_slice(bytes) - /// } + /// |bytes, _, _| serde_json::from_slice(bytes) /// ) /// .expect("JSON is valid"); /// @@ -247,7 +276,7 @@ where /// ``` #[allow(clippy::type_complexity)] pub fn try_from_yoked_buffer( - yoked_buffer: Yoke<&'static [u8], Rc<[u8]>>, + yoked_buffer: Yoke<&'static [u8], RcWrap>, capture: T, f: for<'de> fn( <&'static [u8] as yoke::Yokeable<'de>>::Output, @@ -684,15 +713,16 @@ where } impl DataPayload { - /// Converts a reference-counted byte buffer into a `DataPayload`. - pub fn from_rc_buffer(buffer: Rc<[u8]>) -> Self { + /// Converts an [`RcWrap`] into a `DataPayload`. The [`RcWrap`] + /// can be obtained from a `&[u8]`. + pub fn from_rc_buffer(buffer: RcWrap) -> Self { Self { - yoke: Yoke::attach_to_zero_copy_cart(buffer).wrap_cart_in_option(), + yoke: Yoke::attach_to_cart_badly(buffer, |b| b).wrap_cart_in_option(), } } /// Converts a yoked byte buffer into a `DataPayload`. - pub fn from_yoked_buffer(yoked_buffer: Yoke<&'static [u8], Rc<[u8]>>) -> Self { + pub fn from_yoked_buffer(yoked_buffer: Yoke<&'static [u8], RcWrap>) -> Self { Self { yoke: yoked_buffer.wrap_cart_in_option(), } diff --git a/provider/core/src/dynutil.rs b/provider/core/src/dynutil.rs index e35370ac062..fd878db1a64 100644 --- a/provider/core/src/dynutil.rs +++ b/provider/core/src/dynutil.rs @@ -268,7 +268,7 @@ macro_rules! impl_dyn_provider { impl $crate::datagen::IterableDynProvider<$crate::serde::SerializeMarker> for $provider { - fn supported_options_for_key(&self, key: $crate::ResourceKey) -> Result + '_>, $crate::DataError> { + fn supported_options_for_key(&self, key: $crate::ResourceKey) -> Result + '_>, $crate::DataError> { match key { $( <$struct_m as $crate::ResourceMarker>::KEY => { @@ -283,7 +283,7 @@ macro_rules! impl_dyn_provider { ($provider:ty, { $($pat:pat $(if $guard:expr)? => $struct_m:ty),+, }, ITERABLE_SERDE_SE) => { impl $crate::datagen::IterableDynProvider<$crate::serde::SerializeMarker> for $provider { - fn supported_options_for_key(&self, key: $crate::ResourceKey) -> Result + '_>, $crate::DataError> { + fn supported_options_for_key(&self, key: $crate::ResourceKey) -> Result + '_>, $crate::DataError> { match key { $( $pat $(if $guard)? => { diff --git a/provider/core/src/hello_world.rs b/provider/core/src/hello_world.rs index d10dfea2a69..136ae8b0dc1 100644 --- a/provider/core/src/hello_world.rs +++ b/provider/core/src/hello_world.rs @@ -14,8 +14,6 @@ use crate::prelude::*; use crate::yoke::{self, *}; use crate::zerofrom::{self, *}; use alloc::borrow::Cow; -use alloc::boxed::Box; -use alloc::rc::Rc; use alloc::string::String; use core::fmt::Debug; use icu_locid::locale; @@ -167,10 +165,9 @@ impl BufferProvider for HelloWorldJsonProvider { buffer.push_str("{\"message\":\""); helpers::escape_for_json(&old_payload.get().message, &mut buffer); buffer.push_str("\"}"); - let boxed_u8: Box<[u8]> = buffer.into_boxed_str().into(); Ok(DataResponse { metadata, - payload: Some(DataPayload::from_rc_buffer(Rc::from(boxed_u8))), + payload: Some(DataPayload::from_rc_buffer(buffer.as_bytes().into())), }) } } @@ -179,8 +176,8 @@ impl BufferProvider for HelloWorldJsonProvider { impl IterableResourceProvider for HelloWorldProvider { fn supported_options( &self, - ) -> Result + '_>, DataError> { - Ok(Box::new( + ) -> Result + '_>, DataError> { + Ok(alloc::boxed::Box::new( self.map .iter_keys() .cloned() diff --git a/provider/core/src/lib.rs b/provider/core/src/lib.rs index d29e01a78bd..b5cadafc262 100644 --- a/provider/core/src/lib.rs +++ b/provider/core/src/lib.rs @@ -184,13 +184,13 @@ pub mod prelude { #[cfg(feature = "serde")] pub use crate::serde::AsDeserializingBufferProvider; + /// Re-export of the yoke and zerofrom crates for convenience of downstream implementors. pub use yoke; pub use zerofrom; } -/// Re-export of the yoke and zerofrom crates for convenience of downstream implementors. -pub use yoke; -pub use zerofrom; - // Also include the same symbols at the top level for selective inclusion pub use prelude::*; + +// Less important non-prelude item +pub use crate::data_provider::RcWrap; diff --git a/provider/datagen/src/bin/fingerprint-data.rs b/provider/datagen/src/bin/fingerprint-data.rs index 5227a399d3d..1e0775e75a4 100644 --- a/provider/datagen/src/bin/fingerprint-data.rs +++ b/provider/datagen/src/bin/fingerprint-data.rs @@ -100,7 +100,7 @@ fn main() -> eyre::Result<()> { } } else if format == "blob" { let blob = fs::read(base)?; - let provider = BlobDataProvider::new_from_rc_blob(blob.into())?; + let provider = BlobDataProvider::new_from_blob(blob)?; let mut all_keys = icu_datagen::get_all_keys(); all_keys.sort_by_key(|k| k.get_path()); let map = provider.get_map(); diff --git a/provider/datagen/src/transform/cldr/datetime/mod.rs b/provider/datagen/src/transform/cldr/datetime/mod.rs index 478df1c71e6..3f9fa5e082c 100644 --- a/provider/datagen/src/transform/cldr/datetime/mod.rs +++ b/provider/datagen/src/transform/cldr/datetime/mod.rs @@ -37,6 +37,7 @@ impl From<&SourceData> for CommonDateProvider { (icu_locid::unicode_ext_value!("japanese"), "japanese"), (icu_locid::unicode_ext_value!("coptic"), "coptic"), (icu_locid::unicode_ext_value!("indian"), "indian"), + (icu_locid::unicode_ext_value!("ethiopic"), "ethiopic"), ] .into_iter() .collect(), diff --git a/provider/datagen/src/transform/cldr/datetime/symbols.rs b/provider/datagen/src/transform/cldr/datetime/symbols.rs index ffb04a2b735..8a5727d6437 100644 --- a/provider/datagen/src/transform/cldr/datetime/symbols.rs +++ b/provider/datagen/src/transform/cldr/datetime/symbols.rs @@ -56,6 +56,12 @@ fn get_era_code_map(calendar: &str) -> BTreeMap { "indian" => vec![("0".to_string(), tinystr!(16, "saka"))] .into_iter() .collect(), + "ethiopic" => vec![ + ("0".to_string(), tinystr!(16, "incarnation")), + ("1".to_string(), tinystr!(16, "before-incar")), + ] + .into_iter() + .collect(), #[allow(clippy::panic)] // TODO(#1668) Clippy exceptions need docs or fixing. _ => panic!("Era map unknown for {}", calendar), } diff --git a/provider/testdata/Cargo.toml b/provider/testdata/Cargo.toml index 4205f7d27ff..95f5e2edda1 100644 --- a/provider/testdata/Cargo.toml +++ b/provider/testdata/Cargo.toml @@ -122,6 +122,7 @@ cldr_json_glob = [ "cldr-cal-japanese-full/main/$LOCALES/ca-japanese.json", "cldr-cal-coptic-full/main/$LOCALES/ca-coptic.json", "cldr-cal-indian-full/main/$LOCALES/ca-indian.json", + "cldr-cal-ethiopic-full/main/$LOCALES/ca-ethiopic.json", "cldr-bcp47/bcp47/timezone.json", # Extra data for feature coverage in provider_cldr tests: "cldr-dates-full/main/cs/ca-gregorian.json", @@ -146,7 +147,6 @@ denylist = ["bench"] icu_provider = { version = "0.6", path = "../core" } icu_provider_blob = { version = "0.6", path = "../blob", optional = true } icu_provider_fs = { version = "0.6", path = "../fs", optional = true } -baked = { path = "./data/baked", optional = true } # bin feature clap = { version = "2.33", optional = true } @@ -166,6 +166,9 @@ serde_json = { version = "1.0", optional = true, default-features = false, featu displaydoc = { version = "0.2.3", default-features = false, optional = true } writeable = { version = "0.4", path = "../../utils/writeable", optional = true } +# crabbake deps +icu_list = { version = "0.6", path = "../../components/list", optional = true } + [dev-dependencies] icu_plurals = { version = "0.6", path = "../../components/plurals" } @@ -183,7 +186,7 @@ metadata = [ ] fs = ["icu_provider/deserialize_json", "icu_provider_fs", "std"] static = ["icu_provider_blob"] -baked = ["dep:baked"] +baked = ["icu_list"] std = [] bin = [ "clap", diff --git a/provider/testdata/data/baked/Cargo.toml b/provider/testdata/data/baked/Cargo.toml deleted file mode 100644 index 9d2bbc31280..00000000000 --- a/provider/testdata/data/baked/Cargo.toml +++ /dev/null @@ -1,12 +0,0 @@ -[package] -name = "baked" -version = "1.0.0" -edition = "2021" -include = ["src/**/*.rs", "Cargo.toml"] - -[lib] -path = "src/lib.rs" - -[dependencies] -icu_provider = { path = "../../../../provider/core"} -icu_list = { path = "../../../../components/list" } diff --git a/provider/testdata/data/baked/LICENSE b/provider/testdata/data/baked/LICENSE deleted file mode 100644 index 5ab1f57507b..00000000000 --- a/provider/testdata/data/baked/LICENSE +++ /dev/null @@ -1,331 +0,0 @@ -Except as otherwise noted below, ICU4X is licensed under the Apache -License, Version 2.0 (included below) or the MIT license (included -below), at your option. Unless importing data or code in the manner -stated below, any contribution intentionally submitted for inclusion -in ICU4X by you, as defined in the Apache-2.0 license, shall be dual -licensed in the foregoing manner, without any additional terms or -conditions. - -As exceptions to the above: -* Portions of ICU4X that have been adapted from ICU4C and/or ICU4J are -under the Unicode license (included below) and/or the ICU license -(included below) as indicated by source code comments. -* Unicode data incorporated in ICU4X is under the Unicode license -(included below). -* Your contributions may import code from ICU4C and/or ICU4J and -Unicode data under these licenses. Indicate the license and the ICU4C -or ICU4J origin in source code comments. - -- - - - - -Apache License, version 2.0 - - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -- - - - - -MIT License - -Copyright The ICU4X Authors - -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - -- - - - - -Unicode License - -COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) - -Copyright © 1991-2020 Unicode, Inc. All rights reserved. -Distributed under the Terms of Use in https://www.unicode.org/copyright.html. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Unicode data files and any associated documentation -(the "Data Files") or Unicode software and any associated documentation -(the "Software") to deal in the Data Files or Software -without restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, and/or sell copies of -the Data Files or Software, and to permit persons to whom the Data Files -or Software are furnished to do so, provided that either -(a) this copyright and permission notice appear with all copies -of the Data Files or Software, or -(b) this copyright and permission notice appear in associated -Documentation. - -THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT OF THIRD PARTY RIGHTS. -IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS -NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL -DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, -DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER -TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THE DATA FILES OR SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, -use or other dealings in these Data Files or Software without prior -written authorization of the copyright holder. - -- - - - - -ICU License - ICU 1.8.1 to ICU 57.1 - -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1995-2016 International Business Machines Corporation and others -All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, and/or sell copies of the Software, and to permit persons -to whom the Software is furnished to do so, provided that the above -copyright notice(s) and this permission notice appear in all copies of -the Software and that both the above copyright notice(s) and this -permission notice appear in supporting documentation. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY -SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER -RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF -CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN -CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - -Except as contained in this notice, the name of a copyright holder -shall not be used in advertising or otherwise to promote the sale, use -or other dealings in this Software without prior written authorization -of the copyright holder. - -All trademarks and registered trademarks mentioned herein are the -property of their respective owners. - -- - - - diff --git a/provider/testdata/data/baked/src/data/list/and_v1.rs b/provider/testdata/data/baked/list/and_v1.rs similarity index 100% rename from provider/testdata/data/baked/src/data/list/and_v1.rs rename to provider/testdata/data/baked/list/and_v1.rs diff --git a/provider/testdata/data/baked/src/data/list/mod.rs b/provider/testdata/data/baked/list/mod.rs similarity index 100% rename from provider/testdata/data/baked/src/data/list/mod.rs rename to provider/testdata/data/baked/list/mod.rs diff --git a/provider/testdata/data/baked/src/data/list/or_v1.rs b/provider/testdata/data/baked/list/or_v1.rs similarity index 100% rename from provider/testdata/data/baked/src/data/list/or_v1.rs rename to provider/testdata/data/baked/list/or_v1.rs diff --git a/provider/testdata/data/baked/src/data/list/unit_v1.rs b/provider/testdata/data/baked/list/unit_v1.rs similarity index 100% rename from provider/testdata/data/baked/src/data/list/unit_v1.rs rename to provider/testdata/data/baked/list/unit_v1.rs diff --git a/provider/testdata/data/baked/src/data/mod.rs b/provider/testdata/data/baked/mod.rs similarity index 100% rename from provider/testdata/data/baked/src/data/mod.rs rename to provider/testdata/data/baked/mod.rs diff --git a/provider/testdata/data/baked/src/lib.rs b/provider/testdata/data/baked/src/lib.rs deleted file mode 100644 index d61bdb83f20..00000000000 --- a/provider/testdata/data/baked/src/lib.rs +++ /dev/null @@ -1,13 +0,0 @@ -// This file is part of ICU4X. For terms of use, please see the file -// called LICENSE at the top level of the ICU4X source tree -// (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ). - -//! Generated data provider crate. - -#![no_std] - -extern crate alloc; - -mod data; - -pub use data::*; diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar-EG/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar-EG/ca-ethiopic.json new file mode 100644 index 00000000000..92006448282 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar-EG/ca-ethiopic.json @@ -0,0 +1,553 @@ +{ + "main": { + "ar-EG": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "ar", + "territory": "EG" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + } + }, + "stand-alone": { + "abbreviated": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + }, + "narrow": { + "sun": "ح", + "mon": "ن", + "tue": "ث", + "wed": "ر", + "thu": "خ", + "fri": "ج", + "sat": "س" + }, + "short": { + "sun": "أحد", + "mon": "إثنين", + "tue": "ثلاثاء", + "wed": "أربعاء", + "thu": "خميس", + "fri": "جمعة", + "sat": "سبت" + }, + "wide": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + }, + "narrow": { + "sun": "ح", + "mon": "ن", + "tue": "ث", + "wed": "ر", + "thu": "خ", + "fri": "ج", + "sat": "س" + }, + "short": { + "sun": "أحد", + "mon": "إثنين", + "tue": "ثلاثاء", + "wed": "أربعاء", + "thu": "خميس", + "fri": "جمعة", + "sat": "سبت" + }, + "wide": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + }, + "narrow": { + "1": "١", + "2": "٢", + "3": "٣", + "4": "٤" + }, + "wide": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + } + }, + "stand-alone": { + "abbreviated": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + }, + "narrow": { + "1": "١", + "2": "٢", + "3": "٣", + "4": "٤" + }, + "wide": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "ص", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "في المساء", + "night2": "ليلاً" + }, + "narrow": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "wide": { + "am": "ص", + "pm": "م", + "morning1": "في الصباح", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "في المساء", + "night2": "ليلاً" + } + }, + "stand-alone": { + "abbreviated": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "ص", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "narrow": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "wide": { + "am": "صباحًا", + "pm": "مساءً", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE، d MMMM y G", + "long": "d MMMM y G", + "medium": "dd‏/MM‏/y G", + "short": "d‏/M‏/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMdd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} في {0}", + "long": "{1} في {0}", + "medium": "{1} في {0}", + "short": "{1} في {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E، d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "d‏/M‏/y G", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E، d MMM y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/‏M", + "MEd": "E، d/‏M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E، d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M‏/y G", + "yyyyMd": "d‏/M‏/y G", + "yyyyMEd": "E، d/‏M/‏y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMEd": "E، d MMM y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y–y G" + }, + "GyM": { + "G": "MM-y GGGG – MM-y GGGG", + "M": "MM-y – MM-y GGGG", + "y": "MM-y – MM-y GGGG" + }, + "GyMd": { + "d": "dd-MM-y – dd-MM-y GGGG", + "G": "dd-MM-y GGGG – dd-MM-y GGGG", + "M": "dd-MM-y – dd-MM-y GGGG", + "y": "dd-MM-y – dd-MM-y GGGG" + }, + "GyMEd": { + "d": "E, dd-MM-y – E, dd-MM-y GGGG", + "G": "E, dd-MM-y GGGG – E, dd-MM-y GGGG", + "M": "E, dd-MM-y – E, dd-MM-y GGGG", + "y": "E, dd-MM-y – E,dd-MM-y GGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "d–d MMM y G", + "G": "d MMM y G – d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "GyMMMEd": { + "d": "E, d MMM – E, d MMM y G", + "G": "E, d MMM y G – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d-M – d-M", + "M": "d-M – d-M" + }, + "MEd": { + "d": "E، d/‏M –‏ E، d/‏M", + "M": "E، d/‏M – E، d/‏M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E، d – E، d MMM", + "M": "E، d MMM – E، d MMM" + }, + "MMMM": { + "M": "LLLL–LLLL" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M‏/y – M‏/y G", + "y": "M‏/y – M‏/y G" + }, + "yMd": { + "d": "d‏/M‏/y – d‏/M‏/y G", + "M": "d‏/M‏/y – d‏/M‏/y G", + "y": "d‏/M‏/y – d‏/M‏/y G" + }, + "yMEd": { + "d": "E، dd‏/MM‏/y – E، dd‏/MM‏/y G", + "M": "E، d‏/M‏/y – E، d‏/M‏/y G", + "y": "E، d‏/M‏/y – E، d‏/M‏/y G" + }, + "yMMM": { + "M": "MMM – MMM y G", + "y": "MMM، y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "yMMMEd": { + "d": "E، d – E، d MMM y G", + "M": "E، d MMM – E، d MMM y G", + "y": "E، d MMM y – E، d MMM y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar/ca-ethiopic.json new file mode 100644 index 00000000000..dde9e30f4df --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ar/ca-ethiopic.json @@ -0,0 +1,552 @@ +{ + "main": { + "ar": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "ar" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + } + }, + "stand-alone": { + "abbreviated": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "مسكريم", + "2": "تكمت", + "3": "هدار", + "4": "تهساس", + "5": "تر", + "6": "يكتت", + "7": "مجابيت", + "8": "ميازيا", + "9": "جنبت", + "10": "سين", + "11": "هامل", + "12": "نهاس", + "13": "باجمن" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + }, + "narrow": { + "sun": "ح", + "mon": "ن", + "tue": "ث", + "wed": "ر", + "thu": "خ", + "fri": "ج", + "sat": "س" + }, + "short": { + "sun": "أحد", + "mon": "إثنين", + "tue": "ثلاثاء", + "wed": "أربعاء", + "thu": "خميس", + "fri": "جمعة", + "sat": "سبت" + }, + "wide": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + }, + "narrow": { + "sun": "ح", + "mon": "ن", + "tue": "ث", + "wed": "ر", + "thu": "خ", + "fri": "ج", + "sat": "س" + }, + "short": { + "sun": "أحد", + "mon": "إثنين", + "tue": "ثلاثاء", + "wed": "أربعاء", + "thu": "خميس", + "fri": "جمعة", + "sat": "سبت" + }, + "wide": { + "sun": "الأحد", + "mon": "الاثنين", + "tue": "الثلاثاء", + "wed": "الأربعاء", + "thu": "الخميس", + "fri": "الجمعة", + "sat": "السبت" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + }, + "narrow": { + "1": "١", + "2": "٢", + "3": "٣", + "4": "٤" + }, + "wide": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + } + }, + "stand-alone": { + "abbreviated": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + }, + "narrow": { + "1": "١", + "2": "٢", + "3": "٣", + "4": "٤" + }, + "wide": { + "1": "الربع الأول", + "2": "الربع الثاني", + "3": "الربع الثالث", + "4": "الربع الرابع" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "ص", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "في المساء", + "night2": "ليلاً" + }, + "narrow": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "wide": { + "am": "ص", + "pm": "م", + "morning1": "في الصباح", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "في المساء", + "night2": "ليلاً" + } + }, + "stand-alone": { + "abbreviated": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "ص", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "narrow": { + "am": "ص", + "pm": "م", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + }, + "wide": { + "am": "صباحًا", + "pm": "مساءً", + "morning1": "فجرًا", + "morning2": "صباحًا", + "afternoon1": "ظهرًا", + "afternoon2": "بعد الظهر", + "evening1": "مساءً", + "night1": "منتصف الليل", + "night2": "ليلاً" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE، d MMMM y G", + "long": "d MMMM y G", + "medium": "dd‏/MM‏/y G", + "short": "d‏/M‏/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMdd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} في {0}", + "long": "{1} في {0}", + "medium": "{1} في {0}", + "short": "{1} في {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E، d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "d‏/M‏/y G", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E، d MMM y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/‏M", + "MEd": "E، d/‏M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E، d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M‏/y G", + "yyyyMd": "d‏/M‏/y G", + "yyyyMEd": "E، d/‏M/‏y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMEd": "E، d MMM y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y–y G" + }, + "GyM": { + "G": "MM-y GGGG – MM-y GGGG", + "M": "MM-y – MM-y GGGG", + "y": "MM-y – MM-y GGGG" + }, + "GyMd": { + "d": "dd-MM-y – dd-MM-y GGGG", + "G": "dd-MM-y GGGG – dd-MM-y GGGG", + "M": "dd-MM-y – dd-MM-y GGGG", + "y": "dd-MM-y – dd-MM-y GGGG" + }, + "GyMEd": { + "d": "E, dd-MM-y – E, dd-MM-y GGGG", + "G": "E, dd-MM-y GGGG – E, dd-MM-y GGGG", + "M": "E, dd-MM-y – E, dd-MM-y GGGG", + "y": "E, dd-MM-y – E,dd-MM-y GGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "d–d MMM y G", + "G": "d MMM y G – d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "GyMMMEd": { + "d": "E, d MMM – E, d MMM y G", + "G": "E, d MMM y G – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d-M – d-M", + "M": "d-M – d-M" + }, + "MEd": { + "d": "E، d/‏M –‏ E، d/‏M", + "M": "E، d/‏M – E، d/‏M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E، d – E، d MMM", + "M": "E، d MMM – E، d MMM" + }, + "MMMM": { + "M": "LLLL–LLLL" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M‏/y – M‏/y G", + "y": "M‏/y – M‏/y G" + }, + "yMd": { + "d": "d‏/M‏/y – d‏/M‏/y G", + "M": "d‏/M‏/y – d‏/M‏/y G", + "y": "d‏/M‏/y – d‏/M‏/y G" + }, + "yMEd": { + "d": "E، dd‏/MM‏/y – E، dd‏/MM‏/y G", + "M": "E، d‏/M‏/y – E، d‏/M‏/y G", + "y": "E، d‏/M‏/y – E، d‏/M‏/y G" + }, + "yMMM": { + "M": "MMM – MMM y G", + "y": "MMM، y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "yMMMEd": { + "d": "E، d – E، d MMM y G", + "M": "E، d MMM – E، d MMM y G", + "y": "E، d MMM y – E، d MMM y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/bn/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/bn/ca-ethiopic.json new file mode 100644 index 00000000000..38660b33399 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/bn/ca-ethiopic.json @@ -0,0 +1,546 @@ +{ + "main": { + "bn": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "bn" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "মাস্কেরেম", + "2": "টেকেমট", + "3": "হিডার", + "4": "তাহসাস", + "5": "টের", + "6": "ইয়েকাটিট", + "7": "মেগাবিট", + "8": "মিয়াজিয়া", + "9": "গেনবট", + "10": "সিনি", + "11": "হ্যামলি", + "12": "নেহাসে", + "13": "পাগুমেন" + }, + "narrow": { + "1": "১", + "2": "২", + "3": "৩", + "4": "৪", + "5": "৫", + "6": "৬", + "7": "৭", + "8": "৮", + "9": "৯", + "10": "১০", + "11": "১১", + "12": "১২", + "13": "১৩" + }, + "wide": { + "1": "মাস্কেরেম", + "2": "টেকেমট", + "3": "হিডার", + "4": "তাহসাস", + "5": "টের", + "6": "ইয়েকাটিট", + "7": "মেগাবিট", + "8": "মিয়াজিয়া", + "9": "গেনবট", + "10": "সিনি", + "11": "হ্যামলি", + "12": "নেহাসে", + "13": "পাগুমেন" + } + }, + "stand-alone": { + "abbreviated": { + "1": "মাস্কেরেম", + "2": "টেকেমট", + "3": "হিডার", + "4": "তাহসাস", + "5": "টের", + "6": "ইয়েকাটিট", + "7": "মেগাবিট", + "8": "মিয়াজিয়া", + "9": "গেনবট", + "10": "সিনি", + "11": "হ্যামলি", + "12": "নেহাসে", + "13": "পাগুমেন" + }, + "narrow": { + "1": "১", + "2": "২", + "3": "৩", + "4": "৪", + "5": "৫", + "6": "৬", + "7": "৭", + "8": "৮", + "9": "৯", + "10": "১০", + "11": "১১", + "12": "১২", + "13": "১৩" + }, + "wide": { + "1": "মাস্কেরেম", + "2": "টেকেমট", + "3": "হিডার", + "4": "তাহসাস", + "5": "টের", + "6": "ইয়েকাটিট", + "7": "মেগাবিট", + "8": "মিয়াজিয়া", + "9": "গেনবট", + "10": "সিনি", + "11": "হ্যামলি", + "12": "নেহাসে", + "13": "পাগুমেন" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "রবি", + "mon": "সোম", + "tue": "মঙ্গল", + "wed": "বুধ", + "thu": "বৃহস্পতি", + "fri": "শুক্র", + "sat": "শনি" + }, + "narrow": { + "sun": "র", + "mon": "সো", + "tue": "ম", + "wed": "বু", + "thu": "বৃ", + "fri": "শু", + "sat": "শ" + }, + "short": { + "sun": "রঃ", + "mon": "সোঃ", + "tue": "মঃ", + "wed": "বুঃ", + "thu": "বৃঃ", + "fri": "শুঃ", + "sat": "শনি" + }, + "wide": { + "sun": "রবিবার", + "mon": "সোমবার", + "tue": "মঙ্গলবার", + "wed": "বুধবার", + "thu": "বৃহস্পতিবার", + "fri": "শুক্রবার", + "sat": "শনিবার" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "রবি", + "mon": "সোম", + "tue": "মঙ্গল", + "wed": "বুধ", + "thu": "বৃহস্পতি", + "fri": "শুক্র", + "sat": "শনি" + }, + "narrow": { + "sun": "র", + "mon": "সো", + "tue": "ম", + "wed": "বু", + "thu": "বৃ", + "fri": "শু", + "sat": "শ" + }, + "short": { + "sun": "রঃ", + "mon": "সোঃ", + "tue": "মঃ", + "wed": "বুঃ", + "thu": "বৃঃ", + "fri": "শুঃ", + "sat": "শনি" + }, + "wide": { + "sun": "রবিবার", + "mon": "সোমবার", + "tue": "মঙ্গলবার", + "wed": "বুধবার", + "thu": "বৃহস্পতিবার", + "fri": "শুক্রবার", + "sat": "শনিবার" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "ত্রৈমাসিক", + "2": "দ্বিতীয় ত্রৈমাসিক", + "3": "তৃতীয় ত্রৈমাসিক", + "4": "চতুর্থ ত্রৈমাসিক" + }, + "narrow": { + "1": "১", + "2": "২", + "3": "৩", + "4": "৪" + }, + "wide": { + "1": "ত্রৈমাসিক", + "2": "দ্বিতীয় ত্রৈমাসিক", + "3": "তৃতীয় ত্রৈমাসিক", + "4": "চতুর্থ ত্রৈমাসিক" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "১", + "2": "২", + "3": "৩", + "4": "৪" + }, + "wide": { + "1": "ত্রৈমাসিক", + "2": "দ্বিতীয় ত্রৈমাসিক", + "3": "তৃতীয় ত্রৈমাসিক", + "4": "চতুর্থ ত্রৈমাসিক" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রি" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রি" + }, + "wide": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রিতে" + } + }, + "stand-alone": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রি" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রি" + }, + "wide": { + "am": "AM", + "pm": "PM", + "morning1": "ভোর", + "morning2": "সকাল", + "afternoon1": "দুপুর", + "afternoon2": "বিকাল", + "evening1": "সন্ধ্যা", + "night1": "রাত্রি" + } + } + }, + "eras": { + "eraNames": { + "0": "যুগ ০", + "1": "যুগ ১" + }, + "eraAbbr": { + "0": "যুগ ০", + "1": "যুগ ১" + }, + "eraNarrow": { + "0": "যুগ ০", + "1": "যুগ ১" + } + }, + "dateFormats": { + "full": "EEEE, d MMMM, y G", + "long": "d MMMM, y G", + "medium": "d MMM, y G", + "short": "d/M/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "d E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM, y G", + "GyMMMEd": "E, d MMM, y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/M", + "MEd": "E, d-M", + "MMdd": "dd-MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E d MMM", + "MMMMd": "d MMMM", + "MMMMEd": "E d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y G", + "yyyyMEd": "E, d/M/y G", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM, y G", + "yyyyMMMEd": "E, d MMM, y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y – y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "d/M/y – d/M/y GGGGG", + "G": "d/M/y GGGGG – d/M/y GGGGG", + "M": "d/M/y – d/M/y GGGGG", + "y": "d/M/y – d/M/y GGGGG" + }, + "GyMEd": { + "d": "E, d/M/y – E, d/M/y GGGGG", + "G": "E, d/M/y GGGGG – E, d/M/y GGGGG", + "M": "E, d/M/y – E, d/M/y GGGGG", + "y": "E, d/M/y – E, d/M/y GGGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "MMM d – d, y G", + "G": "MMM d, y G – MMM d, y G", + "M": "MMM d – MMM d, y G", + "y": "MMM d, y – MMM d, y G" + }, + "GyMMMEd": { + "d": "E, MMM d – E, MMM d, y G", + "G": "E, MMM d, y G – E, MMM d, y G", + "M": "E, MMM d – E, MMM d, y G", + "y": "E, MMM d, y – E, MMM d, y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d/M – d/M", + "M": "d/M – d/M" + }, + "MEd": { + "d": "E, d/M – E, d/M", + "M": "E, d/M – E, d/M" + }, + "MMM": { + "M": "MMM – MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E, d MMM – E, d MMM", + "M": "E, d MMM – E, d MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M/y – M/y G", + "y": "M/y – M/y G" + }, + "yMd": { + "d": "d/M/y – d/M/y G", + "M": "d/M/y – d/M/y G", + "y": "d/M/y – d/M/y G" + }, + "yMEd": { + "d": "E, d/M/y – E, d/M/y G", + "M": "E, d/M/y – E, d/M/y G", + "y": "E, d/M/y – E, d/M/y G" + }, + "yMMM": { + "M": "MMM–MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM, y G", + "M": "d MMM – d MMM, y G", + "y": "d MMM, y – d MMM, y G" + }, + "yMMMEd": { + "d": "E, d MMM – E, d MMM, y G", + "M": "E, d MMM – E, d MMM, y G", + "y": "E, d MMM, y – E, d MMM, y G" + }, + "yMMMM": { + "M": "MMMM–MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ccp/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ccp/ca-ethiopic.json new file mode 100644 index 00000000000..da48f508a81 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ccp/ca-ethiopic.json @@ -0,0 +1,546 @@ +{ + "main": { + "ccp": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "ccp" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "𑄢𑄧𑄝𑄨", + "mon": "𑄥𑄧𑄟𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "wed": "𑄝𑄪𑄖𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨" + }, + "narrow": { + "sun": "𑄢𑄧", + "mon": "𑄥𑄧", + "tue": "𑄟𑄧", + "wed": "𑄝𑄪", + "thu": "𑄝𑄳𑄢𑄨", + "fri": "𑄥𑄪", + "sat": "𑄥𑄧" + }, + "short": { + "sun": "𑄢𑄧𑄝𑄨", + "mon": "𑄥𑄧𑄟𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "wed": "𑄝𑄪𑄖𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨" + }, + "wide": { + "sun": "𑄢𑄧𑄝𑄨𑄝𑄢𑄴", + "mon": "𑄥𑄧𑄟𑄴𑄝𑄢𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴𑄝𑄢𑄴", + "wed": "𑄝𑄪𑄖𑄴𑄝𑄢𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴𑄝𑄢𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴𑄝𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨𑄝𑄢𑄴" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "𑄢𑄧𑄝𑄨", + "mon": "𑄥𑄧𑄟𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "wed": "𑄝𑄪𑄖𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨" + }, + "narrow": { + "sun": "𑄢𑄧", + "mon": "𑄥𑄧", + "tue": "𑄟𑄧", + "wed": "𑄝𑄪", + "thu": "𑄝𑄳𑄢𑄨", + "fri": "𑄥𑄪", + "sat": "𑄥𑄧" + }, + "short": { + "sun": "𑄢𑄧𑄝𑄨", + "mon": "𑄥𑄧𑄟𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "wed": "𑄝𑄪𑄖𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨" + }, + "wide": { + "sun": "𑄢𑄧𑄝𑄨𑄝𑄢𑄴", + "mon": "𑄥𑄧𑄟𑄴𑄝𑄢𑄴", + "tue": "𑄟𑄧𑄁𑄉𑄧𑄣𑄴𑄝𑄢𑄴", + "wed": "𑄝𑄪𑄖𑄴𑄝𑄢𑄴", + "thu": "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴𑄝𑄢𑄴", + "fri": "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴𑄝𑄢𑄴", + "sat": "𑄥𑄧𑄚𑄨𑄝𑄢𑄴" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "𑄷", + "2": "𑄸", + "3": "𑄹", + "4": "𑄺" + }, + "wide": { + "1": "𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "2": "𑄘𑄨 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "3": "𑄖𑄨𑄚𑄴 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "4": "𑄌𑄳𑄆𑄬𑄢𑄴 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "𑄷", + "2": "𑄸", + "3": "𑄹", + "4": "𑄺" + }, + "wide": { + "1": "𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "2": "𑄘𑄨 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "3": "𑄖𑄨𑄚𑄴 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴", + "4": "𑄌𑄳𑄆𑄬𑄢𑄴 𑄛𑄳𑄆𑄘𑄳𑄠𑄬 𑄖𑄨𑄚𑄴𑄟𑄎𑄧𑄢𑄴" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + }, + "wide": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + } + }, + "stand-alone": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + }, + "wide": { + "am": "AM", + "pm": "PM", + "morning1": "𑄛𑄧𑄖𑄳𑄠𑄃𑄟𑄧𑄣𑄳𑄠𑄬", + "morning2": "𑄝𑄬𑄚𑄳𑄠𑄬", + "afternoon1": "𑄘𑄨𑄝𑄪𑄎𑄳𑄠", + "afternoon2": "𑄝𑄬𑄣𑄳𑄠𑄬", + "evening1": "𑄥𑄎𑄧𑄚𑄳𑄠", + "night1": "𑄢𑄬𑄖𑄴" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d MMMM, y G", + "long": "d MMMM, y G", + "medium": "d MMM, y G", + "short": "d/M/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "d E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "GGGGG y-MM-dd", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM, y G", + "GyMMMEd": "E, d MMM, y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/M", + "MEd": "E, d-M", + "MMdd": "dd-MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E d MMM", + "MMMMd": "d MMMM", + "MMMMEd": "E d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y G", + "yyyyMEd": "E, d/M/y G", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM, y G", + "yyyyMMMEd": "E, d MMM, y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG y-MM – GGGGG y-MM", + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "GyMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "G": "GGGGG y-MM-dd – GGGGG y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "GyMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "G": "GGGGG y-MM-dd, E – GGGGG y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "GyMMM": { + "G": "G y MMM – G y MMM", + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "GyMMMd": { + "d": "G y MMM d–d", + "G": "G y MMM d – G y MMM d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "GyMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "G": "G y MMM d, E – G y MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d/M – d/M", + "M": "d/M – d/M" + }, + "MEd": { + "d": "E, d/M – E, d/M", + "M": "E, d/M – E, d/M" + }, + "MMM": { + "M": "MMM – MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E, d MMM – E, d MMM", + "M": "E, d MMM – E, d MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M/y – M/y G", + "y": "M/y – M/y G" + }, + "yMd": { + "d": "d/M/y – d/M/y G", + "M": "d/M/y – d/M/y G", + "y": "d/M/y – d/M/y G" + }, + "yMEd": { + "d": "E, d/M/y – E, d/M/y G", + "M": "E, d/M/y – E, d/M/y G", + "y": "E, d/M/y – E, d/M/y G" + }, + "yMMM": { + "M": "MMM–MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM, y G", + "M": "d MMM – d MMM, y G", + "y": "d MMM, y – d MMM, y G" + }, + "yMMMEd": { + "d": "E, d MMM – E, d MMM, y G", + "M": "E, d MMM – E, d MMM, y G", + "y": "E, d MMM, y – E, d MMM, y G" + }, + "yMMMM": { + "M": "MMMM–MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-001/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-001/ca-ethiopic.json new file mode 100644 index 00000000000..1905134d9d7 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-001/ca-ethiopic.json @@ -0,0 +1,556 @@ +{ + "main": { + "en-001": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "en", + "territory": "001" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "narrow": { + "midnight": "mi", + "am": "a", + "am-alt-variant": "am", + "noon": "n", + "pm": "p", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "wide": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "narrow": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "wide": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d MMMM y G", + "long": "d MMMM y G", + "medium": "d MMM y G", + "short": "dd/MM/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMMdd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E, h:mm B", + "EBhms": "E, h:mm:ss B", + "Ed": "E d", + "Ehm": "E, h:mm a", + "EHm": "E, HH:mm", + "Ehms": "E, h:mm:ss a", + "EHms": "E, HH:mm:ss", + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E, d MMM y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "LL", + "Md": "dd/MM", + "MEd": "E, dd/MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E, d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "dd/MM/y GGGGG", + "yyyyMEd": "E, dd/MM/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMEd": "E, d MMM y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{0} {1}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{0} {1}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y–y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "dd/MM/y – dd/MM/y GGGGG", + "G": "dd/MM/y GGGGG – dd/MM/y GGGGG", + "M": "dd/MM/y – dd/MM/y GGGGG", + "y": "dd/MM/y – dd/MM/y GGGGG" + }, + "GyMEd": { + "d": "E, dd/MM/y – E, dd/MM/y GGGGG", + "G": "E, dd/MM/y GGGGG – E, dd/MM/y GGGGG", + "M": "E, dd/MM/y – E, dd/MM/y GGGGG", + "y": "E, dd/MM/y – E, dd/MM/y GGGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "d–d MMM y G", + "G": "d MMM y G – d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "GyMMMEd": { + "d": "E, d MMM – E, d MMM y G", + "G": "E, d MMM y G – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "h": { + "a": "h a – h a", + "h": "h – h a" + }, + "H": { + "H": "HH – HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h – h a v" + }, + "Hv": { + "H": "HH – HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "dd/MM – dd/MM", + "M": "dd/MM – dd/MM" + }, + "MEd": { + "d": "E dd/MM – E dd/MM", + "M": "E dd/MM – E dd/MM" + }, + "MMM": { + "M": "MMM – MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E d – E d MMM", + "M": "E d MMM – E d MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "MM/y – MM/y GGGGG", + "y": "MM/y – MM/y GGGGG" + }, + "yMd": { + "d": "dd/MM/y – dd/MM/y GGGGG", + "M": "dd/MM/y – dd/MM/y GGGGG", + "y": "dd/MM/y – dd/MM/y GGGGG" + }, + "yMEd": { + "d": "E, dd/MM/y – E, dd/MM/y GGGGG", + "M": "E, dd/MM/y – E, dd/MM/y GGGGG", + "y": "E, dd/MM/y – E, dd/MM/y GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "yMMMEd": { + "d": "E, d – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-ZA/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-ZA/ca-ethiopic.json new file mode 100644 index 00000000000..b3994afd72c --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en-ZA/ca-ethiopic.json @@ -0,0 +1,556 @@ +{ + "main": { + "en-ZA": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "en", + "territory": "ZA" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "narrow": { + "midnight": "mi", + "am": "a", + "am-alt-variant": "am", + "noon": "n", + "pm": "p", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "wide": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "narrow": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "wide": { + "midnight": "midnight", + "am": "am", + "am-alt-variant": "am", + "noon": "noon", + "pm": "pm", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, dd MMMM y G", + "long": "dd MMMM y G", + "medium": "dd MMM y G", + "short": "GGGGG y/MM/dd" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEdd", + "long": "GyMMMMdd", + "medium": "GyMMMdd", + "short": "GGGGGyMMdd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E, h:mm B", + "EBhms": "E, h:mm:ss B", + "Ed": "E d", + "Ehm": "E, h:mm a", + "EHm": "E, HH:mm", + "Ehms": "E, h:mm:ss a", + "EHms": "E, HH:mm:ss", + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E, d MMM y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "LL", + "Md": "MM/dd", + "MEd": "E, MM/dd", + "MMM": "LLL", + "MMMd": "dd MMM", + "MMMEd": "E, dd MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "G y/MM/dd", + "yyyyMEd": "E, G y/MM/dd", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "dd MMM y G", + "yyyyMMMEd": "E, dd MMM y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{0} {1}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{0} {1}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y–y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "dd/MM/y – dd/MM/y GGGGG", + "G": "dd/MM/y GGGGG – dd/MM/y GGGGG", + "M": "dd/MM/y – dd/MM/y GGGGG", + "y": "dd/MM/y – dd/MM/y GGGGG" + }, + "GyMEd": { + "d": "E, dd/MM/y – E, dd/MM/y GGGGG", + "G": "E, dd/MM/y GGGGG – E, dd/MM/y GGGGG", + "M": "E, dd/MM/y – E, dd/MM/y GGGGG", + "y": "E, dd/MM/y – E, dd/MM/y GGGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "d–d MMM y G", + "G": "d MMM y G – d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "GyMMMEd": { + "d": "E, d MMM – E, d MMM y G", + "G": "E, d MMM y G – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "h": { + "a": "h a – h a", + "h": "h – h a" + }, + "H": { + "H": "HH – HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h – h a v" + }, + "Hv": { + "H": "HH – HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "dd/MM – dd/MM", + "M": "dd/MM – dd/MM" + }, + "MEd": { + "d": "E dd/MM – E dd/MM", + "M": "E dd/MM – E dd/MM" + }, + "MMM": { + "M": "MMM – MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E d – E d MMM", + "M": "E d MMM – E d MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "MM/y – MM/y GGGGG", + "y": "MM/y – MM/y GGGGG" + }, + "yMd": { + "d": "dd/MM/y – dd/MM/y GGGGG", + "M": "dd/MM/y – dd/MM/y GGGGG", + "y": "dd/MM/y – dd/MM/y GGGGG" + }, + "yMEd": { + "d": "E, dd/MM/y – E, dd/MM/y GGGGG", + "M": "E, dd/MM/y – E, dd/MM/y GGGGG", + "y": "E, dd/MM/y – E, dd/MM/y GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "yMMMEd": { + "d": "E, d – E, d MMM y G", + "M": "E, d MMM – E, d MMM y G", + "y": "E, d MMM y – E, d MMM y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en/ca-ethiopic.json new file mode 100644 index 00000000000..116aef08678 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/en/ca-ethiopic.json @@ -0,0 +1,555 @@ +{ + "main": { + "en": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "en" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Su", + "mon": "Mo", + "tue": "Tu", + "wed": "We", + "thu": "Th", + "fri": "Fr", + "sat": "Sa" + }, + "wide": { + "sun": "Sunday", + "mon": "Monday", + "tue": "Tuesday", + "wed": "Wednesday", + "thu": "Thursday", + "fri": "Friday", + "sat": "Saturday" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1st quarter", + "2": "2nd quarter", + "3": "3rd quarter", + "4": "4th quarter" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "midnight", + "am": "AM", + "am-alt-variant": "am", + "noon": "noon", + "pm": "PM", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "narrow": { + "midnight": "mi", + "am": "a", + "am-alt-variant": "am", + "noon": "n", + "pm": "p", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + }, + "wide": { + "midnight": "midnight", + "am": "AM", + "am-alt-variant": "am", + "noon": "noon", + "pm": "PM", + "pm-alt-variant": "pm", + "morning1": "in the morning", + "afternoon1": "in the afternoon", + "evening1": "in the evening", + "night1": "at night" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "midnight", + "am": "AM", + "am-alt-variant": "am", + "noon": "noon", + "pm": "PM", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "narrow": { + "midnight": "midnight", + "am": "AM", + "am-alt-variant": "am", + "noon": "noon", + "pm": "PM", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + }, + "wide": { + "midnight": "midnight", + "am": "AM", + "am-alt-variant": "am", + "noon": "noon", + "pm": "PM", + "pm-alt-variant": "pm", + "morning1": "morning", + "afternoon1": "afternoon", + "evening1": "evening", + "night1": "night" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, MMMM d, y G", + "long": "MMMM d, y G", + "medium": "MMM d, y G", + "short": "M/d/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "d E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "M/d/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "MMM d, y G", + "GyMMMEd": "E, MMM d, y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "M/d", + "MEd": "E, M/d", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMEd": "E, MMM d", + "MMMMd": "MMMM d", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "M/d/y GGGGG", + "yyyyMEd": "E, M/d/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "MMM d, y G", + "yyyyMMMEd": "E, MMM d, y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{0} {1}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{0} {1}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d – d" + }, + "Gy": { + "G": "y G – y G", + "y": "y – y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "M/d/y – M/d/y GGGGG", + "G": "M/d/y GGGGG – M/d/y GGGGG", + "M": "M/d/y – M/d/y GGGGG", + "y": "M/d/y – M/d/y GGGGG" + }, + "GyMEd": { + "d": "E, M/d/y – E, M/d/y GGGGG", + "G": "E, M/d/y GGGGG – E, M/d/y GGGGG", + "M": "E, M/d/y – E, M/d/y GGGGG", + "y": "E, M/d/y – E, M/d/y GGGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "MMM d – d, y G", + "G": "MMM d, y G – MMM d, y G", + "M": "MMM d – MMM d, y G", + "y": "MMM d, y – MMM d, y G" + }, + "GyMMMEd": { + "d": "E, MMM d – E, MMM d, y G", + "G": "E, MMM d, y G – E, MMM d, y G", + "M": "E, MMM d – E, MMM d, y G", + "y": "E, MMM d, y – E, MMM d, y G" + }, + "h": { + "a": "h a – h a", + "h": "h – h a" + }, + "H": { + "H": "HH – HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h – h a v" + }, + "Hv": { + "H": "HH – HH v" + }, + "M": { + "M": "M – M" + }, + "Md": { + "d": "M/d – M/d", + "M": "M/d – M/d" + }, + "MEd": { + "d": "E, M/d – E, M/d", + "M": "E, M/d – E, M/d" + }, + "MMM": { + "M": "MMM – MMM" + }, + "MMMd": { + "d": "MMM d – d", + "M": "MMM d – MMM d" + }, + "MMMEd": { + "d": "E, MMM d – E, MMM d", + "M": "E, MMM d – E, MMM d" + }, + "y": { + "y": "y – y G" + }, + "yM": { + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "yMd": { + "d": "M/d/y – M/d/y GGGGG", + "M": "M/d/y – M/d/y GGGGG", + "y": "M/d/y – M/d/y GGGGG" + }, + "yMEd": { + "d": "E, M/d/y – E, M/d/y GGGGG", + "M": "E, M/d/y – E, M/d/y GGGGG", + "y": "E, M/d/y – E, M/d/y GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "MMM d – d, y G", + "M": "MMM d – MMM d, y G", + "y": "MMM d, y – MMM d, y G" + }, + "yMMMEd": { + "d": "E, MMM d – E, MMM d, y G", + "M": "E, MMM d – E, MMM d, y G", + "y": "E, MMM d, y – E, MMM d, y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es-AR/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es-AR/ca-ethiopic.json new file mode 100644 index 00000000000..f87cf5ec4b9 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es-AR/ca-ethiopic.json @@ -0,0 +1,545 @@ +{ + "main": { + "es-AR": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "es", + "territory": "AR" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "dom", + "mon": "lun", + "tue": "mar", + "wed": "mié", + "thu": "jue", + "fri": "vie", + "sat": "sáb" + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "M", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "DO", + "mon": "LU", + "tue": "MA", + "wed": "MI", + "thu": "JU", + "fri": "VI", + "sat": "SA" + }, + "wide": { + "sun": "domingo", + "mon": "lunes", + "tue": "martes", + "wed": "miércoles", + "thu": "jueves", + "fri": "viernes", + "sat": "sábado" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "dom", + "mon": "lun", + "tue": "mar", + "wed": "mié", + "thu": "jue", + "fri": "vie", + "sat": "sáb" + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "M", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "DO", + "mon": "LU", + "tue": "MA", + "wed": "MI", + "thu": "JU", + "fri": "VI", + "sat": "SA" + }, + "wide": { + "sun": "domingo", + "mon": "lunes", + "tue": "martes", + "wed": "miércoles", + "thu": "jueves", + "fri": "viernes", + "sat": "sábado" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1.er trimestre", + "2": "2.º trimestre", + "3": "3.er trimestre", + "4": "4.º trimestre" + } + }, + "stand-alone": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1.er trimestre", + "2": "2.º trimestre", + "3": "3.er trimestre", + "4": "4.º trimestre" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + }, + "narrow": { + "am": "a. m.", + "noon": "del mediodía", + "pm": "p. m.", + "morning1": "de la madrugada", + "morning2": "de la mañana", + "evening1": "de la tarde", + "night1": "de la noche" + }, + "wide": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + } + }, + "stand-alone": { + "abbreviated": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + }, + "narrow": { + "am": "a. m.", + "noon": "m.", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + }, + "wide": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d 'de' MMMM 'de' y G", + "long": "d 'de' MMMM 'de' y G", + "medium": "d 'de' MMM 'de' y G", + "short": "d/M/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyyMMdd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM 'de' y G", + "GyMMMd": "d 'de' MMM 'de' y G", + "GyMMMEd": "E, d 'de' MMM 'de' y G", + "GyMMMM": "MMMM 'de' y G", + "GyMMMMd": "d 'de' MMMM 'de' y G", + "GyMMMMEd": "E, d 'de' MMMM 'de' y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/M", + "MEd": "E d-M", + "MMM": "LLL", + "MMMd": "d 'de' MMM", + "MMMEd": "E, d 'de' MMM", + "MMMMd": "d 'de' MMMM", + "MMMMEd": "E, d 'de' MMMM", + "ms": "mm:ss", + "y": "y G", + "yMEd": "E d/M/y G", + "yyyy": "y G", + "yyyyM": "M-y G", + "yyyyMd": "d/M/y GGGGG", + "yyyyMEd": "E d/M/y GGGGG", + "yyyyMMM": "MMM 'de' y G", + "yyyyMMMd": "d 'de' MMM 'de' y G", + "yyyyMMMEd": "EEE, d 'de' MMM 'de' y G", + "yyyyMMMM": "MMMM 'de' y G", + "yyyyMMMMd": "d 'de' MMMM 'de' y G", + "yyyyMMMMEd": "EEE, d 'de' MMMM 'de' y G", + "yyyyQQQ": "QQQ 'de' y G", + "yyyyQQQQ": "QQQQ 'de' y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0}–{1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y–y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGG", + "M": "M/y – M/y GGGGG", + "y": "MM/y – MM/y GGGGG" + }, + "GyMd": { + "d": "d/M/y – d/M/y GGGGG", + "G": "d/M/y GGGGG – d/M/y GGGGG", + "M": "d/M/y – d/M/y GGGGG", + "y": "d/M/y – d/M/y GGGGG" + }, + "GyMEd": { + "d": "E d/M/y – E d/M/y GGGGG", + "G": "E d/M/y GGGGG – E d/M/y GGGGG", + "M": "E d/M/y – E d/M/y GGGGG", + "y": "E d/M/y – E d/M/y GGGGG" + }, + "GyMMM": { + "G": "MMM 'de' y G – MMM 'de' y G", + "M": "MMM–MMM 'de' y G", + "y": "MMM 'de' y – MMM 'de' y G" + }, + "GyMMMd": { + "d": "d–d 'de' MMM 'de' y G", + "G": "d 'de' MMM 'de' y G – d 'de' MMM 'de' y G", + "M": "d 'de' MMM – d 'de' MMM 'de' y G", + "y": "d 'de' MMM 'de' y – d 'de' MMM 'de' y G" + }, + "GyMMMEd": { + "d": "E d 'de' MMM – E d 'de' MMM 'de' y G", + "G": "E d 'de' MMM 'de' y G – E d 'de' MMM 'de' y G", + "M": "E d 'de' MMM – E d 'de' MMM 'de' y G", + "y": "E d 'de' MMM 'de' y – E d 'de' MMM 'de' y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d/M–d/M", + "M": "d/M–d/M" + }, + "MEd": { + "d": "E, d/M–E, d/M", + "M": "E, d/M–E, d/M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d–d 'de' MMM", + "M": "d 'de' MMM–d 'de' MMM" + }, + "MMMEd": { + "d": "E, d 'de' MMM–E, d 'de' MMM", + "M": "E, d 'de' MMM–E, d 'de' MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "yMd": { + "d": "d/M/y – d/M/y GGGGG", + "M": "d/M/y – d/M/y GGGGG", + "y": "d/M/y – d/M/y GGGGG" + }, + "yMEd": { + "d": "E, d/M/y – E, d/M/y GGGGG", + "M": "E, d/M/y – E, d/M/y GGGGG", + "y": "E, d/M/y – E, d/M/y GGGGG" + }, + "yMMM": { + "M": "MMM–MMM 'de' y G", + "y": "MMM 'de' y – MMM 'de' y G" + }, + "yMMMd": { + "d": "d–d 'de' MMM 'de' y G", + "M": "d 'de' MMM – d 'de' MMM y G", + "y": "d 'de' MMM 'de' y – d 'de' MMM 'de' y G" + }, + "yMMMEd": { + "d": "E, d 'de' MMM – E, d 'de' MMM 'de' y G", + "M": "E, d 'de' MMM – E, d 'de' MMM 'de' y G", + "y": "E, d 'de' MMM 'de' y – E, d 'de' MMM 'de' y G" + }, + "yMMMM": { + "M": "MMMM–MMMM 'de' y G", + "y": "MMMM 'de' y – MMMM 'de' y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es/ca-ethiopic.json new file mode 100644 index 00000000000..8b72fca603a --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/es/ca-ethiopic.json @@ -0,0 +1,543 @@ +{ + "main": { + "es": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "es" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "meskerem", + "2": "tekemt", + "3": "hedar", + "4": "tahsas", + "5": "ter", + "6": "yekatit", + "7": "megabit", + "8": "miazia", + "9": "genbot", + "10": "sene", + "11": "hamle", + "12": "nehasse", + "13": "pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "dom", + "mon": "lun", + "tue": "mar", + "wed": "mié", + "thu": "jue", + "fri": "vie", + "sat": "sáb" + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "X", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "DO", + "mon": "LU", + "tue": "MA", + "wed": "MI", + "thu": "JU", + "fri": "VI", + "sat": "SA" + }, + "wide": { + "sun": "domingo", + "mon": "lunes", + "tue": "martes", + "wed": "miércoles", + "thu": "jueves", + "fri": "viernes", + "sat": "sábado" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "dom", + "mon": "lun", + "tue": "mar", + "wed": "mié", + "thu": "jue", + "fri": "vie", + "sat": "sáb" + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "X", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "DO", + "mon": "LU", + "tue": "MA", + "wed": "MI", + "thu": "JU", + "fri": "VI", + "sat": "SA" + }, + "wide": { + "sun": "domingo", + "mon": "lunes", + "tue": "martes", + "wed": "miércoles", + "thu": "jueves", + "fri": "viernes", + "sat": "sábado" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1.er trimestre", + "2": "2.º trimestre", + "3": "3.er trimestre", + "4": "4.º trimestre" + } + }, + "stand-alone": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1.er trimestre", + "2": "2.º trimestre", + "3": "3.er trimestre", + "4": "4.º trimestre" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "a. m.", + "noon": "del mediodía", + "pm": "p. m.", + "morning1": "de la madrugada", + "morning2": "de la mañana", + "evening1": "de la tarde", + "night1": "de la noche" + }, + "narrow": { + "am": "a. m.", + "noon": "del mediodía", + "pm": "p. m.", + "morning1": "de la madrugada", + "morning2": "de la mañana", + "evening1": "de la tarde", + "night1": "de la noche" + }, + "wide": { + "am": "a. m.", + "noon": "del mediodía", + "pm": "p. m.", + "morning1": "de la madrugada", + "morning2": "de la mañana", + "evening1": "de la tarde", + "night1": "de la noche" + } + }, + "stand-alone": { + "abbreviated": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + }, + "narrow": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + }, + "wide": { + "am": "a. m.", + "noon": "mediodía", + "pm": "p. m.", + "morning1": "madrugada", + "morning2": "mañana", + "evening1": "tarde", + "night1": "noche" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d 'de' MMMM 'de' y G", + "long": "d 'de' MMMM 'de' y G", + "medium": "d 'de' MMM 'de' y G", + "short": "d/M/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GGGGGyMd", + "short": "GGGGGyyMd" + }, + "timeFormats": { + "full": "H:mm:ss (zzzz)", + "long": "H:mm:ss z", + "medium": "H:mm:ss", + "short": "H:mm" + }, + "timeSkeletons": { + "full": "Hmmsszzzz", + "long": "Hmmssz", + "medium": "Hmmss", + "short": "Hmm" + }, + "dateTimeFormats": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E, d MMM y G", + "GyMMMM": "MMMM 'de' y G", + "GyMMMMd": "d 'de' MMMM 'de' y G", + "GyMMMMEd": "E, d 'de' MMMM 'de' y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/M", + "MEd": "E, d/M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E, d MMM", + "MMMMd": "d 'de' MMMM", + "MMMMEd": "E, d 'de' MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "d/M/y GGGGG", + "yyyyMEd": "E, d/M/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMEd": "EEE, d MMM y G", + "yyyyMMMM": "MMMM 'de' y G", + "yyyyMMMMd": "d 'de' MMMM 'de' y G", + "yyyyMMMMEd": "EEE, d 'de' MMMM 'de' y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ 'de' y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y – y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "d/M/y – d/M/y GGGGG", + "G": "d/M/y GGGGG – d/M/y GGGGG", + "M": "d/M/y – d/M/y GGGGG", + "y": "d/M/y – d/M/y GGGGG" + }, + "GyMEd": { + "d": "E d/M/y – E d/M/y GGGGG", + "G": "E d/M/y GGGGG – E d/M/y GGGGG", + "M": "E d/M/y – E d/M/y GGGGG", + "y": "E d/M/y – E d/M/y GGGGG" + }, + "GyMMM": { + "G": "MMM 'de' y G – MMM 'de' y G", + "M": "MMM–MMM 'de' y G", + "y": "MMM 'de' y – MMM 'de' y G" + }, + "GyMMMd": { + "d": "d–d 'de' MMM 'de' y G", + "G": "d 'de' MMM 'de' y G – d 'de' MMM 'de' y G", + "M": "d 'de' MMM – d 'de' MMM 'de' y G", + "y": "d 'de' MMM 'de' y – d 'de' MMM 'de' y G" + }, + "GyMMMEd": { + "d": "E d 'de' MMM – E d 'de' MMM 'de' y G", + "G": "E d 'de' MMM 'de' y G – E d 'de' MMM 'de' y G", + "M": "E d 'de' MMM – E d 'de' MMM 'de' y G", + "y": "E d 'de' MMM 'de' y – E d 'de' MMM 'de' y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d/M – d/M", + "M": "d/M – d/M" + }, + "MEd": { + "d": "E, d/M – E, d/M", + "M": "E, d/M – E, d/M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d–d 'de' MMM", + "M": "d 'de' MMM – d 'de' MMM" + }, + "MMMEd": { + "d": "E, d 'de' MMM – E, d 'de' MMM", + "M": "E, d 'de' MMM – E, d 'de' MMM" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M/y – M/y G", + "y": "M/y – M/y G" + }, + "yMd": { + "d": "d/M/y – d/M/y G", + "M": "d/M/y – d/M/y G", + "y": "d/M/y – d/M/y G" + }, + "yMEd": { + "d": "E, d/M/y – E, d/M/y G", + "M": "E, d/M/y – E, d/M/y G", + "y": "E, d/M/y – E, d/M/y G" + }, + "yMMM": { + "M": "MMM–MMM 'de' y G", + "y": "MMM 'de' y – MMM 'de' y G" + }, + "yMMMd": { + "d": "d–d 'de' MMM 'de' y G", + "M": "d 'de' MMM – d 'de' MMM y G", + "y": "d 'de' MMM 'de' y – d 'de' MMM 'de' y G" + }, + "yMMMEd": { + "d": "E, d 'de' MMM – E, d 'de' MMM 'de' y G", + "M": "E, d 'de' MMM – E, d 'de' MMM 'de' y G", + "y": "E, d 'de' MMM 'de' y – E, d 'de' MMM 'de' y G" + }, + "yMMMM": { + "M": "MMMM–MMMM 'de' y G", + "y": "MMMM 'de' y – MMMM 'de' y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fil/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fil/ca-ethiopic.json new file mode 100644 index 00000000000..c9b49dcda07 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fil/ca-ethiopic.json @@ -0,0 +1,551 @@ +{ + "main": { + "fil": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "fil" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Lin", + "mon": "Lun", + "tue": "Mar", + "wed": "Miy", + "thu": "Huw", + "fri": "Biy", + "sat": "Sab" + }, + "narrow": { + "sun": "Lin", + "mon": "Lun", + "tue": "Mar", + "wed": "Miy", + "thu": "Huw", + "fri": "Biy", + "sat": "Sab" + }, + "short": { + "sun": "Li", + "mon": "Lu", + "tue": "Ma", + "wed": "Mi", + "thu": "Hu", + "fri": "Bi", + "sat": "Sa" + }, + "wide": { + "sun": "Linggo", + "mon": "Lunes", + "tue": "Martes", + "wed": "Miyerkules", + "thu": "Huwebes", + "fri": "Biyernes", + "sat": "Sabado" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Lin", + "mon": "Lun", + "tue": "Mar", + "wed": "Miy", + "thu": "Huw", + "fri": "Biy", + "sat": "Sab" + }, + "narrow": { + "sun": "Lin", + "mon": "Lun", + "tue": "Mar", + "wed": "Miy", + "thu": "Huw", + "fri": "Biy", + "sat": "Sab" + }, + "short": { + "sun": "Li", + "mon": "Lu", + "tue": "Ma", + "wed": "Mi", + "thu": "Hu", + "fri": "Bi", + "sat": "Sa" + }, + "wide": { + "sun": "Linggo", + "mon": "Lunes", + "tue": "Martes", + "wed": "Miyerkules", + "thu": "Huwebes", + "fri": "Biyernes", + "sat": "Sabado" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "ika-1 quarter", + "2": "ika-2 quarter", + "3": "ika-3 quarter", + "4": "ika-4 na quarter" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "ika-1 quarter", + "2": "ika-2 quarter", + "3": "ika-3 quarter", + "4": "ika-4 na quarter" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "hatinggabi", + "am": "AM", + "noon": "tanghaling-tapat", + "pm": "PM", + "morning1": "nang umaga", + "morning2": "madaling-araw", + "afternoon1": "tanghali", + "evening1": "ng hapon", + "night1": "gabi" + }, + "narrow": { + "midnight": "hatinggabi", + "am": "am", + "noon": "tanghaling-tapat", + "pm": "pm", + "morning1": "umaga", + "morning2": "madaling-araw", + "afternoon1": "sa hapon", + "evening1": "sa gabi", + "night1": "gabi" + }, + "wide": { + "midnight": "hatinggabi", + "am": "AM", + "noon": "tanghaling-tapat", + "pm": "PM", + "morning1": "nang umaga", + "morning2": "madaling-araw", + "afternoon1": "tanghali", + "evening1": "ng hapon", + "night1": "ng gabi" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "hatinggabi", + "am": "AM", + "noon": "tanghaling-tapat", + "pm": "PM", + "morning1": "umaga", + "morning2": "madaling-araw", + "afternoon1": "tanghali", + "evening1": "hapon", + "night1": "gabi" + }, + "narrow": { + "midnight": "hatinggabi", + "am": "AM", + "noon": "tanghaling-tapat", + "pm": "PM", + "morning1": "umaga", + "morning2": "madaling-araw", + "afternoon1": "tanghali", + "evening1": "gabi", + "night1": "gabi" + }, + "wide": { + "midnight": "hatinggabi", + "am": "AM", + "noon": "tanghaling-tapat", + "pm": "PM", + "morning1": "umaga", + "morning2": "madaling-araw", + "afternoon1": "tanghali", + "evening1": "hapon", + "night1": "gabi" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, MMMM d, y G", + "long": "MMMM d, y G", + "medium": "MMM d, y G", + "short": "M/d/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "timeSkeletons": { + "full": "ahmmsszzzz", + "long": "ahmmssz", + "medium": "ahmmss", + "short": "ahmm" + }, + "dateTimeFormats": { + "full": "{1} 'nang' {0}", + "long": "{1} 'nang' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "d E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "M/d/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "MMM d, y G", + "GyMMMEd": "E, MMM d, y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "M/d", + "MEd": "E, M/d", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMEd": "E, MMM d", + "MMMMd": "MMMM d", + "MMMMEd": "E, MMMM d", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "M/d/y GGGGG", + "yyyyMEd": "E, M/d/y GGGGG", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "MMM d, y G", + "yyyyMMMEd": "E, MMM d, y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y G – y G", + "y": "y – y G" + }, + "GyM": { + "G": "M/y GGGGG – M/y GGGGG", + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "GyMd": { + "d": "M/d/y – M/d/y GGGGG", + "G": "M/d/y GGGGG – M/d/y GGGGG", + "M": "M/d/y – M/d/y GGGGG", + "y": "M/d/y – M/d/y GGGGG" + }, + "GyMEd": { + "d": "E, M/d/y – E, M/d/y GGGGG", + "G": "E, M/d/y GGGGG – E, M/d/y GGGGG", + "M": "E, M/d/y – E, M/d/y GGGGG", + "y": "E, M/d/y – E, M/d/y GGGGG" + }, + "GyMMM": { + "G": "MMM y G – MMM y G", + "M": "MMM – MMM y G", + "y": "MMM y – MMM y G" + }, + "GyMMMd": { + "d": "MMM d – d, y G", + "G": "MMM d, y G – MMM d, y G", + "M": "MMM d – MMM d, y G", + "y": "MMM d, y – MMM d, y G" + }, + "GyMMMEd": { + "d": "E, MMM d – E, MMM d, y G", + "G": "E, MMM d, y G – E, MMM d, y G", + "M": "E, MMM d – E, MMM d, y G", + "y": "E, MMM d, y – E, MMM d, y G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "M/d – M/d", + "M": "M/d – M/d" + }, + "MEd": { + "d": "E, M/d – E, M/d", + "M": "E, M/d – E, M/d" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "MMM d–d", + "M": "MMM d – MMM d" + }, + "MMMEd": { + "d": "E, MMM d – E, MMM d", + "M": "E, MMM d – E, MMM d" + }, + "y": { + "y": "y–y G" + }, + "yM": { + "M": "M/y – M/y GGGGG", + "y": "M/y – M/y GGGGG" + }, + "yMd": { + "d": "M/d/y – M/d/y GGGGG", + "M": "M/d/y – M/d/y GGGGG", + "y": "M/d/y – M/d/y GGGGG" + }, + "yMEd": { + "d": "E, M/d/y – E, M/d/y GGGGG", + "M": "E, M/d/y – E, M/d/y GGGGG", + "y": "E, M/d/y – E, M/d/y GGGGG" + }, + "yMMM": { + "M": "MMM–MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "MMM d–d, y G", + "M": "MMM d – MMM d, y G", + "y": "MMM d, y – MMM d, y G" + }, + "yMMMEd": { + "d": "E, MMM d – E, MMM d, y G", + "M": "E, MMM d – E, MMM d, y G", + "y": "E, MMM d, y – E, MMM d, y G" + }, + "yMMMM": { + "M": "MMMM–MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fr/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fr/ca-ethiopic.json new file mode 100644 index 00000000000..0f5e700994b --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/fr/ca-ethiopic.json @@ -0,0 +1,543 @@ +{ + "main": { + "fr": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "fr" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "mäs.", + "2": "teq.", + "3": "hed.", + "4": "tah.", + "5": "ter", + "6": "yäk.", + "7": "mäg.", + "8": "miy.", + "9": "gue.", + "10": "sän.", + "11": "ham.", + "12": "näh.", + "13": "pag." + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "mäskäräm", + "2": "teqemt", + "3": "hedar", + "4": "tahesas", + "5": "ter", + "6": "yäkatit", + "7": "mägabit", + "8": "miyazya", + "9": "guenbot", + "10": "säné", + "11": "hamlé", + "12": "nähasé", + "13": "pagumén" + } + }, + "stand-alone": { + "abbreviated": { + "1": "mäs.", + "2": "teq.", + "3": "hed.", + "4": "tah.", + "5": "ter", + "6": "yäk.", + "7": "mäg.", + "8": "miy.", + "9": "gue.", + "10": "sän.", + "11": "ham.", + "12": "näh.", + "13": "pag." + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "mäskäräm", + "2": "teqemt", + "3": "hedar", + "4": "tahesas", + "5": "ter", + "6": "yäkatit", + "7": "mägabit", + "8": "miyazya", + "9": "guenbot", + "10": "säné", + "11": "hamlé", + "12": "nähasé", + "13": "pagumén" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "dim.", + "mon": "lun.", + "tue": "mar.", + "wed": "mer.", + "thu": "jeu.", + "fri": "ven.", + "sat": "sam." + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "M", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "di", + "mon": "lu", + "tue": "ma", + "wed": "me", + "thu": "je", + "fri": "ve", + "sat": "sa" + }, + "wide": { + "sun": "dimanche", + "mon": "lundi", + "tue": "mardi", + "wed": "mercredi", + "thu": "jeudi", + "fri": "vendredi", + "sat": "samedi" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "dim.", + "mon": "lun.", + "tue": "mar.", + "wed": "mer.", + "thu": "jeu.", + "fri": "ven.", + "sat": "sam." + }, + "narrow": { + "sun": "D", + "mon": "L", + "tue": "M", + "wed": "M", + "thu": "J", + "fri": "V", + "sat": "S" + }, + "short": { + "sun": "di", + "mon": "lu", + "tue": "ma", + "wed": "me", + "thu": "je", + "fri": "ve", + "sat": "sa" + }, + "wide": { + "sun": "dimanche", + "mon": "lundi", + "tue": "mardi", + "wed": "mercredi", + "thu": "jeudi", + "fri": "vendredi", + "sat": "samedi" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1er trimestre", + "2": "2e trimestre", + "3": "3e trimestre", + "4": "4e trimestre" + } + }, + "stand-alone": { + "abbreviated": { + "1": "T1", + "2": "T2", + "3": "T3", + "4": "T4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1er trimestre", + "2": "2e trimestre", + "3": "3e trimestre", + "4": "4e trimestre" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "mat.", + "afternoon1": "ap.m.", + "evening1": "soir", + "night1": "nuit" + }, + "narrow": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "mat.", + "afternoon1": "ap.m.", + "evening1": "soir", + "night1": "nuit" + }, + "wide": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "du matin", + "afternoon1": "de l’après-midi", + "evening1": "du soir", + "night1": "du matin" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "mat.", + "afternoon1": "ap.m.", + "evening1": "soir", + "night1": "nuit" + }, + "narrow": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "mat.", + "afternoon1": "ap.m.", + "evening1": "soir", + "night1": "nuit" + }, + "wide": { + "midnight": "minuit", + "am": "AM", + "noon": "midi", + "pm": "PM", + "morning1": "matin", + "afternoon1": "après-midi", + "evening1": "soir", + "night1": "nuit" + } + } + }, + "eras": { + "eraNames": { + "0": "avant l’Incarnation", + "1": "après l’Incarnation" + }, + "eraAbbr": { + "0": "av. Inc.", + "1": "ap. Inc." + }, + "eraNarrow": { + "0": "av. Inc.", + "1": "ap. Inc." + } + }, + "dateFormats": { + "full": "EEEE d MMMM y G", + "long": "d MMMM y G", + "medium": "d MMM y G", + "short": "dd/MM/y GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMMdd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} 'à' {0}", + "long": "{1} 'à' {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMEd": "E d MMM y G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "dd/MM", + "MEd": "E dd/MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "dd/MM/y GGGGG", + "yyyyMEd": "E dd/MM/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMEd": "E d MMM y G", + "yyyyMMMM": "MMMM y G", + "yyyyQQQ": "QQQ y G", + "yyyyQQQQ": "QQQQ y G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d – d" + }, + "Gy": { + "G": "y G 'à' y G", + "y": "y–y G" + }, + "GyM": { + "G": "M/y G 'à' M/y G", + "M": "M–M/y G", + "y": "M/y 'à' M/y G" + }, + "GyMd": { + "d": "d–d/M/y G", + "G": "d/M/y G 'à' d/M/y G", + "M": "d/M 'à' d/M/y G", + "y": "d/M/y 'à' d/M/y G" + }, + "GyMEd": { + "d": "E d 'à' E d/M/y G", + "G": "E d/M/y G 'à' E d/M/y G", + "M": "E d/M 'à' E d/M/y G", + "y": "E d/M/y 'à' E d/M/y G" + }, + "GyMMM": { + "G": "MMM y G 'à' MMM y G", + "M": "MMM 'à' MMM y G", + "y": "MMM y 'à' MMM y G" + }, + "GyMMMd": { + "d": "d–d MMM y G", + "G": "d MMM y G 'à' d MMM y G", + "M": "d MMM 'à' d MMM y G", + "y": "d MMM y 'à' d MMM y G" + }, + "GyMMMEd": { + "d": "E d 'à' E d MMM y G", + "G": "E d MMM y G 'à' E d MMM y G", + "M": "E d MMM 'à' E d MMM y G", + "y": "E d MMM y 'à' E d MMM y G" + }, + "h": { + "a": "h a – h a", + "h": "h – h a" + }, + "H": { + "H": "HH – HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm – h:mm a", + "m": "h:mm – h:mm a" + }, + "Hm": { + "H": "HH:mm – HH:mm", + "m": "HH:mm – HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm – h:mm a v", + "m": "h:mm – h:mm a v" + }, + "Hmv": { + "H": "HH:mm – HH:mm v", + "m": "HH:mm – HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h – h a v" + }, + "Hv": { + "H": "HH – HH v" + }, + "M": { + "M": "M – M" + }, + "Md": { + "d": "dd/MM – dd/MM", + "M": "dd/MM – dd/MM" + }, + "MEd": { + "d": "E dd/MM – E dd/MM", + "M": "E dd/MM – E dd/MM" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E d MMM – E d MMM", + "M": "E d MMM – E d MMM" + }, + "y": { + "y": "y – y G" + }, + "yM": { + "M": "MM/y – MM/y G", + "y": "M/y – M/y G" + }, + "yMd": { + "d": "d/M/y – d/M/y G", + "M": "d/M/y – d/M/y G", + "y": "dd/MM/y – dd/MM/y G" + }, + "yMEd": { + "d": "E dd/MM/y – E dd/MM/y G", + "M": "E dd/MM/y – E dd/MM/y G", + "y": "E dd/MM/y – E dd/MM/y G" + }, + "yMMM": { + "M": "MMM–MMM y G", + "y": "MMM y – MMM y G" + }, + "yMMMd": { + "d": "d–d MMM y G", + "M": "d MMM – d MMM y G", + "y": "d MMM y – d MMM y G" + }, + "yMMMEd": { + "d": "E d – E d MMM y G", + "M": "E d MMM – E d MMM y G", + "y": "E d MMM y – E d MMM y G" + }, + "yMMMM": { + "M": "MMMM – MMMM y G", + "y": "MMMM y – MMMM y G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ja/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ja/ca-ethiopic.json new file mode 100644 index 00000000000..6aea749612f --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ja/ca-ethiopic.json @@ -0,0 +1,575 @@ +{ + "main": { + "ja": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "ja" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "メスケレム", + "2": "テケムト", + "3": "ヘダル", + "4": "ターサス", + "5": "テル", + "6": "イェカティト", + "7": "メガビト", + "8": "ミアジア", + "9": "ゲンボト", + "10": "セネ", + "11": "ハムレ", + "12": "ネハッセ", + "13": "パグメン" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "メスケレム", + "2": "テケムト", + "3": "ヘダル", + "4": "ターサス", + "5": "テル", + "6": "イェカティト", + "7": "メガビト", + "8": "ミアジア", + "9": "ゲンボト", + "10": "セネ", + "11": "ハムレ", + "12": "ネハッセ", + "13": "パグメン" + } + }, + "stand-alone": { + "abbreviated": { + "1": "メスケレム", + "2": "テケムト", + "3": "ヘダル", + "4": "ターサス", + "5": "テル", + "6": "イェカティト", + "7": "メガビト", + "8": "ミアジア", + "9": "ゲンボト", + "10": "セネ", + "11": "ハムレ", + "12": "ネハッセ", + "13": "パグメン" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "メスケレム", + "2": "テケムト", + "3": "ヘダル", + "4": "ターサス", + "5": "テル", + "6": "イェカティト", + "7": "メガビト", + "8": "ミアジア", + "9": "ゲンボト", + "10": "セネ", + "11": "ハムレ", + "12": "ネハッセ", + "13": "パグメン" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "narrow": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "short": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "wide": { + "sun": "日曜日", + "mon": "月曜日", + "tue": "火曜日", + "wed": "水曜日", + "thu": "木曜日", + "fri": "金曜日", + "sat": "土曜日" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "narrow": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "short": { + "sun": "日", + "mon": "月", + "tue": "火", + "wed": "水", + "thu": "木", + "fri": "金", + "sat": "土" + }, + "wide": { + "sun": "日曜日", + "mon": "月曜日", + "tue": "火曜日", + "wed": "水曜日", + "thu": "木曜日", + "fri": "金曜日", + "sat": "土曜日" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "第1四半期", + "2": "第2四半期", + "3": "第3四半期", + "4": "第4四半期" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "第1四半期", + "2": "第2四半期", + "3": "第3四半期", + "4": "第4四半期" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + }, + "narrow": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + }, + "wide": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + }, + "narrow": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + }, + "wide": { + "midnight": "真夜中", + "am": "午前", + "noon": "正午", + "pm": "午後", + "morning1": "朝", + "afternoon1": "昼", + "evening1": "夕方", + "night1": "夜", + "night2": "夜中" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "Gy年M月d日(EEEE)", + "long": "Gy年M月d日", + "medium": "GGGGGy/MM/dd", + "short": "GGGGGy/M/d" + }, + "dateSkeletons": { + "full": "GyMEEEEd", + "long": "GyMd", + "medium": "GGGGGyMMdd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "H時mm分ss秒 zzzz", + "long": "H:mm:ss z", + "medium": "H:mm:ss", + "short": "H:mm" + }, + "timeSkeletons": { + "full": "Hmmsszzzz", + "long": "Hmmssz", + "medium": "Hmmss", + "short": "Hmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "BK時", + "Bhm": "BK:mm", + "Bhms": "BK:mm:ss", + "d": "d日", + "E": "ccc", + "EBhm": "BK:mm (E)", + "EBhms": "BK:mm:ss (E)", + "Ed": "d日(E)", + "EEEEd": "d日(EEEE)", + "Ehm": "aK:mm (E)", + "EHm": "H:mm (E)", + "Ehms": "aK:mm:ss (E)", + "EHms": "H:mm:ss (E)", + "Gy": "Gy年", + "GyMd": "GGGGGy/M/d", + "GyMMM": "Gy年M月", + "GyMMMd": "Gy年M月d日", + "GyMMMEd": "Gy年M月d日(E)", + "GyMMMEEEEd": "Gy年M月d日(EEEE)", + "h": "aK時", + "H": "H時", + "hm": "aK:mm", + "Hm": "H:mm", + "hms": "aK:mm:ss", + "Hms": "H:mm:ss", + "M": "M月", + "Md": "M/d", + "MEd": "M/d(E)", + "MEEEEd": "M/d(EEEE)", + "MMM": "M月", + "MMMd": "M月d日", + "MMMEd": "M月d日(E)", + "MMMEEEEd": "M月d日(EEEE)", + "MMMMd": "M月d日", + "ms": "mm:ss", + "y": "Gy年", + "yyyy": "Gy年", + "yyyyM": "GGGGGy/M", + "yyyyMd": "GGGGGy/M/d", + "yyyyMEd": "GGGGGy/M/d(E)", + "yyyyMEEEEd": "GGGGGy/M/d(EEEE)", + "yyyyMMM": "Gy年M月", + "yyyyMMMd": "Gy年M月d日", + "yyyyMMMEd": "Gy年M月d日(E)", + "yyyyMMMEEEEd": "Gy年M月d日(EEEE)", + "yyyyMMMM": "Gy年M月", + "yyyyQQQ": "Gy/QQQ", + "yyyyQQQQ": "Gy年QQQQ" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0}~{1}", + "Bh": { + "B": "BK時~BK時", + "h": "BK時~K時" + }, + "Bhm": { + "B": "BK:mm~BK:mm", + "h": "BK:mm~K:mm", + "m": "BK:mm~K:mm" + }, + "d": { + "d": "d日~d日" + }, + "GGGGGyM": { + "G": "GGGGGy/MM~GGGGGy/MM", + "M": "GGGGGy/MM~y/MM", + "y": "GGGGGy/MM~y/MM" + }, + "GGGGGyMd": { + "d": "GGGGGy/MM/dd~y/MM/dd", + "G": "GGGGGy/MM/dd~GGGGGy/MM/dd", + "M": "GGGGGy/MM/dd~y/MM/dd", + "y": "GGGGGy/MM/dd~y/MM/dd" + }, + "GGGGGyMEd": { + "d": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "G": "GGGGGy/MM/dd(E)~GGGGGy/MM/dd(E)", + "M": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "y": "GGGGGy/MM/dd(E)~y/MM/dd(E)" + }, + "Gy": { + "G": "Gy年~Gy年", + "y": "Gy年~y年" + }, + "GyM": { + "G": "GGGGGy/MM~GGGGGy/MM", + "M": "GGGGGy/MM~y/MM", + "y": "GGGGGy/MM~y/MM" + }, + "GyMd": { + "d": "GGGGGy/MM/dd~y/MM/dd", + "G": "GGGGGy/MM/dd~GGGGGy/MM/dd", + "M": "GGGGGy/MM/dd~y/MM/dd", + "y": "GGGGGy/MM/dd~y/MM/dd" + }, + "GyMEd": { + "d": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "G": "GGGGGy/MM/dd(E)~GGGGGy/MM/dd(E)", + "M": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "y": "GGGGGy/MM/dd(E)~y/MM/dd(E)" + }, + "GyMMM": { + "G": "Gy年M月~Gy年M月", + "M": "Gy年M月~M月", + "y": "Gy年M月~y年M月" + }, + "GyMMMd": { + "d": "Gy年M月d日~d日", + "G": "Gy年M月d日~Gy年M月d日", + "M": "Gy年M月d日~M月d日", + "y": "Gy年M月d日~y年M月d日" + }, + "GyMMMEd": { + "d": "Gy年M月d日(E)~d日(E)", + "G": "Gy年M月d日(E)~Gy年M月d日(E)", + "M": "Gy年M月d日(E)~M月d日(E)", + "y": "Gy年M月d日(E)~y年M月d日(E)" + }, + "h": { + "a": "aK時~aK時", + "h": "aK時~K時" + }, + "H": { + "H": "H時~H時" + }, + "hm": { + "a": "aK時mm分~aK時mm分", + "h": "aK時mm分~K時mm分", + "m": "aK時mm分~K時mm分" + }, + "Hm": { + "H": "H時mm分~H時mm分", + "m": "H時mm分~H時mm分" + }, + "hmv": { + "a": "aK時mm分~aK時mm分(v)", + "h": "aK時mm分~K時mm分(v)", + "m": "aK時mm分~K時mm分(v)" + }, + "Hmv": { + "H": "H時mm分~H時mm分(v)", + "m": "H時mm分~H時mm分(v)" + }, + "hv": { + "a": "aK時~aK時(v)", + "h": "aK時~K時(v)" + }, + "Hv": { + "H": "H時~H時(v)" + }, + "M": { + "M": "M月~M月" + }, + "Md": { + "d": "MM/dd~MM/dd", + "M": "MM/dd~MM/dd" + }, + "MEd": { + "d": "MM/dd(E)~MM/dd(E)", + "M": "MM/dd(E)~MM/dd(E)" + }, + "MMM": { + "M": "M月~M月" + }, + "MMMd": { + "d": "M月d日~d日", + "M": "M月d日~M月d日" + }, + "MMMEd": { + "d": "M月d日(E)~d日(E)", + "M": "M月d日(E)~M月d日(E)" + }, + "MMMM": { + "M": "M月~M月" + }, + "y": { + "y": "Gy年~y年" + }, + "yM": { + "M": "GGGGGy/MM~y/MM", + "y": "GGGGGy/MM~y/MM" + }, + "yMd": { + "d": "GGGGGy/MM/dd~y/MM/dd", + "M": "GGGGGy/MM/dd~y/MM/dd", + "y": "GGGGGy/MM/dd~y/MM/dd" + }, + "yMEd": { + "d": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "M": "GGGGGy/MM/dd(E)~y/MM/dd(E)", + "y": "GGGGGy/MM/dd(E)~y/MM/dd(E)" + }, + "yMMM": { + "M": "Gy年M月~M月", + "y": "Gy年M月~y年M月" + }, + "yMMMd": { + "d": "Gy年M月d日~d日", + "M": "Gy年M月d日~M月d日", + "y": "Gy年M月d日~y年M月d日" + }, + "yMMMEd": { + "d": "Gy年M月d日(E)~d日(E)", + "M": "Gy年M月d日(E)~M月d日(E)", + "y": "Gy年M月d日(E)~y年M月d日(E)" + }, + "yMMMM": { + "M": "Gy年M月~M月", + "y": "Gy年M月~y年M月" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ru/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ru/ca-ethiopic.json new file mode 100644 index 00000000000..e930a02bbc6 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/ru/ca-ethiopic.json @@ -0,0 +1,546 @@ +{ + "main": { + "ru": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "ru" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "мескерем", + "2": "текемт", + "3": "хедар", + "4": "тахсас", + "5": "тер", + "6": "якатит", + "7": "магабит", + "8": "миазия", + "9": "генбот", + "10": "сэнэ", + "11": "хамлэ", + "12": "нахасэ", + "13": "эпагомен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "мескерем", + "2": "текемт", + "3": "хедар", + "4": "тахсас", + "5": "тер", + "6": "якатит", + "7": "магабит", + "8": "миазия", + "9": "генбот", + "10": "сэнэ", + "11": "хамлэ", + "12": "нахасэ", + "13": "эпагомен" + } + }, + "stand-alone": { + "abbreviated": { + "1": "мескерем", + "2": "текемт", + "3": "хедар", + "4": "тахсас", + "5": "тер", + "6": "якатит", + "7": "магабит", + "8": "миазия", + "9": "генбот", + "10": "сэнэ", + "11": "хамлэ", + "12": "нахасэ", + "13": "эпагомен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "мескерем", + "2": "текемт", + "3": "хедар", + "4": "тахсас", + "5": "тер", + "6": "якатит", + "7": "магабит", + "8": "миазия", + "9": "генбот", + "10": "сэнэ", + "11": "хамлэ", + "12": "нахасэ", + "13": "эпагомен" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "вс", + "mon": "пн", + "tue": "вт", + "wed": "ср", + "thu": "чт", + "fri": "пт", + "sat": "сб" + }, + "narrow": { + "sun": "В", + "mon": "П", + "tue": "В", + "wed": "С", + "thu": "Ч", + "fri": "П", + "sat": "С" + }, + "short": { + "sun": "вс", + "mon": "пн", + "tue": "вт", + "wed": "ср", + "thu": "чт", + "fri": "пт", + "sat": "сб" + }, + "wide": { + "sun": "воскресенье", + "mon": "понедельник", + "tue": "вторник", + "wed": "среда", + "thu": "четверг", + "fri": "пятница", + "sat": "суббота" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "вс", + "mon": "пн", + "tue": "вт", + "wed": "ср", + "thu": "чт", + "fri": "пт", + "sat": "сб" + }, + "narrow": { + "sun": "В", + "mon": "П", + "tue": "В", + "wed": "С", + "thu": "Ч", + "fri": "П", + "sat": "С" + }, + "short": { + "sun": "вс", + "mon": "пн", + "tue": "вт", + "wed": "ср", + "thu": "чт", + "fri": "пт", + "sat": "сб" + }, + "wide": { + "sun": "воскресенье", + "mon": "понедельник", + "tue": "вторник", + "wed": "среда", + "thu": "четверг", + "fri": "пятница", + "sat": "суббота" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "1-й кв.", + "2": "2-й кв.", + "3": "3-й кв.", + "4": "4-й кв." + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1-й квартал", + "2": "2-й квартал", + "3": "3-й квартал", + "4": "4-й квартал" + } + }, + "stand-alone": { + "abbreviated": { + "1": "1-й кв.", + "2": "2-й кв.", + "3": "3-й кв.", + "4": "4-й кв." + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "1-й квартал", + "2": "2-й квартал", + "3": "3-й квартал", + "4": "4-й квартал" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "полн.", + "am": "AM", + "noon": "полд.", + "pm": "PM", + "morning1": "утра", + "afternoon1": "дня", + "evening1": "вечера", + "night1": "ночи" + }, + "narrow": { + "midnight": "полн.", + "am": "AM", + "noon": "полд.", + "pm": "PM", + "morning1": "утра", + "afternoon1": "дня", + "evening1": "веч.", + "night1": "ночи" + }, + "wide": { + "midnight": "полночь", + "am": "AM", + "noon": "полдень", + "pm": "PM", + "morning1": "утра", + "afternoon1": "дня", + "evening1": "вечера", + "night1": "ночи" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "полн.", + "am": "AM", + "noon": "полд.", + "pm": "PM", + "morning1": "утро", + "afternoon1": "день", + "evening1": "веч.", + "night1": "ночь" + }, + "narrow": { + "midnight": "полн.", + "am": "AM", + "noon": "полд.", + "pm": "PM", + "morning1": "утро", + "afternoon1": "день", + "evening1": "веч.", + "night1": "ночь" + }, + "wide": { + "midnight": "полночь", + "am": "AM", + "noon": "полдень", + "pm": "PM", + "morning1": "утро", + "afternoon1": "день", + "evening1": "вечер", + "night1": "ночь" + } + } + }, + "eras": { + "eraNames": { + "0": "до воплощения Христа", + "1": "от воплощения Христа" + }, + "eraAbbr": { + "0": "до Христа", + "1": "от Христа" + }, + "eraNarrow": { + "0": "до Христа", + "1": "от Христа" + } + }, + "dateFormats": { + "full": "EEEE, d MMMM y 'г'. G", + "long": "d MMMM y 'г'. G", + "medium": "d MMM y 'г'. G", + "short": "dd.MM.y G" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GyMMdd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "ccc, h:mm B", + "EBhms": "ccc, h:mm:ss B", + "Ed": "E, d", + "Ehm": "ccc, h:mm a", + "EHm": "ccc HH:mm", + "Ehms": "ccc, h:mm:ss a", + "EHms": "ccc HH:mm:ss", + "Gy": "y 'г'. G", + "GyMd": "dd.MM.y G", + "GyMMM": "LLL y 'г'. G", + "GyMMMd": "d MMM y 'г'. G", + "GyMMMEd": "E, d MMM y 'г'. G", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "dd.MM", + "MEd": "E, dd.MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "ccc, d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "y 'г'. G", + "yyyy": "y 'г'. G", + "yyyyM": "MM.y G", + "yyyyMd": "dd.MM.y G", + "yyyyMEd": "E, dd.MM.y G", + "yyyyMMM": "LLL y 'г'. G", + "yyyyMMMd": "d MMM y 'г'. G", + "yyyyMMMEd": "E, d MMM y 'г'. G", + "yyyyMMMM": "LLLL y 'г'. G", + "yyyyQQQ": "QQQ y 'г'. G", + "yyyyQQQQ": "QQQQ y 'г'. G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "y 'г'. G – y 'г'. G", + "y": "y–y 'гг'. G" + }, + "GyM": { + "G": "MM.y G – MM.y G", + "M": "MM.y – MM.y G", + "y": "MM.y – MM.y G" + }, + "GyMd": { + "d": "dd.MM.y – dd.MM.y G", + "G": "dd.MM.y G – dd.MM.y G", + "M": "dd.MM.y – dd.MM.y G", + "y": "dd.MM.y – dd.MM.y G" + }, + "GyMEd": { + "d": "ccc, dd.MM.y – ccc, dd.MM.y G", + "G": "ccc, dd.MM.y G – ccc, dd.MM.y G", + "M": "ccc, dd.MM.y – ccc, dd.MM.y G", + "y": "ccc, dd.MM.y – ccc, dd.MM.y G" + }, + "GyMMM": { + "G": "LLL y 'г'. G – LLL y 'г'. G", + "M": "LLL – LLL y 'г'. G", + "y": "LLL y – LLL y 'гг'. G" + }, + "GyMMMd": { + "d": "d–d MMM y 'г'. G", + "G": "d MMM y 'г'. G – d MMM y 'г'. G", + "M": "d MMM – d MMM y 'г'. G", + "y": "d MMM y – d MMM y 'гг'. G" + }, + "GyMMMEd": { + "d": "ccc, d MMM – ccc, d MMM y 'г'. G", + "G": "ccc, d MMM y 'г'. G – ccc, d MMM y 'г'. G", + "M": "ccc, d MMM – ccc, d MMM y 'г'. G", + "y": "ccc, d MMM y – ccc, d MMM y 'гг'. G" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "H–H" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "H:mm–H:mm", + "m": "H:mm–H:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "H:mm–H:mm v", + "m": "H:mm–H:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "H–H v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "dd.MM – dd.MM", + "M": "dd.MM – dd.MM" + }, + "MEd": { + "d": "E, dd.MM – E, dd.MM", + "M": "E, dd.MM – E, dd.MM" + }, + "MMM": { + "M": "LLL – LLL" + }, + "MMMd": { + "d": "d–d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "ccc, d MMM – ccc, d MMM", + "M": "ccc, d MMM – ccc, d MMM" + }, + "MMMM": { + "M": "LLLL – LLLL" + }, + "y": { + "y": "y–y 'гг'. G" + }, + "yM": { + "M": "MM.y – MM.y G", + "y": "MM.y – MM.y G" + }, + "yMd": { + "d": "dd.MM.y – dd.MM.y G", + "M": "dd.MM.y – dd.MM.y G", + "y": "dd.MM.y – dd.MM.y G" + }, + "yMEd": { + "d": "ccc, dd.MM.y – ccc, dd.MM.y G", + "M": "ccc, dd.MM.y – ccc, dd.MM.y G", + "y": "ccc, dd.MM.y – ccc, dd.MM.y G" + }, + "yMMM": { + "M": "LLL – LLL y 'г'. G", + "y": "LLL y 'г'. – LLL y 'г'. G" + }, + "yMMMd": { + "d": "d–d MMM y 'г'. G", + "M": "d MMM – d MMM y 'г'. G", + "y": "d MMM y 'г'. – d MMM y 'г'. G" + }, + "yMMMEd": { + "d": "ccc, d MMM – ccc, d MMM y 'г'. G", + "M": "ccc, d MMM – ccc, d MMM y 'г'. G", + "y": "ccc, d MMM y 'г'. – ccc, d MMM y 'г'. G" + }, + "yMMMM": { + "M": "LLLL – LLLL y 'г'. G", + "y": "LLLL y 'г'. – LLLL y 'г'. G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Cyrl/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Cyrl/ca-ethiopic.json new file mode 100644 index 00000000000..63434e137e0 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Cyrl/ca-ethiopic.json @@ -0,0 +1,549 @@ +{ + "main": { + "sr-Cyrl": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "sr", + "script": "Cyrl" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "нед", + "mon": "пон", + "tue": "уто", + "wed": "сре", + "thu": "чет", + "fri": "пет", + "sat": "суб" + }, + "narrow": { + "sun": "н", + "mon": "п", + "tue": "у", + "wed": "с", + "thu": "ч", + "fri": "п", + "sat": "с" + }, + "short": { + "sun": "не", + "mon": "по", + "tue": "ут", + "wed": "ср", + "thu": "че", + "fri": "пе", + "sat": "су" + }, + "wide": { + "sun": "недеља", + "mon": "понедељак", + "tue": "уторак", + "wed": "среда", + "thu": "четвртак", + "fri": "петак", + "sat": "субота" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "нед", + "mon": "пон", + "tue": "уто", + "wed": "сре", + "thu": "чет", + "fri": "пет", + "sat": "суб" + }, + "narrow": { + "sun": "н", + "mon": "п", + "tue": "у", + "wed": "с", + "thu": "ч", + "fri": "п", + "sat": "с" + }, + "short": { + "sun": "не", + "mon": "по", + "tue": "ут", + "wed": "ср", + "thu": "че", + "fri": "пе", + "sat": "су" + }, + "wide": { + "sun": "недеља", + "mon": "понедељак", + "tue": "уторак", + "wed": "среда", + "thu": "четвртак", + "fri": "петак", + "sat": "субота" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "1. кв.", + "2": "2. кв.", + "3": "3. кв.", + "4": "4. кв." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "први квартал", + "2": "други квартал", + "3": "трећи квартал", + "4": "четврти квартал" + } + }, + "stand-alone": { + "abbreviated": { + "1": "1. кв.", + "2": "2. кв.", + "3": "3. кв.", + "4": "4. кв." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "први квартал", + "2": "други квартал", + "3": "трећи квартал", + "4": "четврти квартал" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутро", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + }, + "narrow": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутру", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + }, + "wide": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутро", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + }, + "narrow": { + "midnight": "поноћ", + "am": "пре подне", + "noon": "подне", + "pm": "по подне", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + }, + "wide": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "hh:mm B", + "Bhms": "hh:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E hh:mm B", + "EBhms": "E hh:mm:ss B", + "Ed": "E d.", + "Ehm": "E hh:mm a", + "EHm": "E HH:mm", + "Ehms": "E hh:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMEd": "E, d. MMM y. G", + "h": "h a", + "H": "HH", + "hm": "hh:mm a", + "Hm": "HH:mm", + "hms": "hh:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d.M.", + "MEd": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdd": "dd.MMM", + "MMMEd": "E, d. MMM", + "MMMMd": "d. MMMM", + "MMMMEd": "E, d. MMMM", + "ms": "mm:ss", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMEd": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMEd": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "yyyyQQQ": "QQQ, y. G", + "yyyyQQQQ": "QQQQ y. G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG y-MM – GGGGG y-MM", + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "GyMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "G": "GGGGG y-MM-dd – GGGGG y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "GyMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "G": "GGGGG y-MM-dd, E – GGGGG y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "GyMMM": { + "G": "G y MMM – G y MMM", + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "GyMMMd": { + "d": "G y MMM d–d", + "G": "G y MMM d – G y MMM d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "GyMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "G": "G y MMM d, E – G y MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d.M – d.M", + "M": "d.M – d.M" + }, + "MEd": { + "d": "E, d.M – E, d.M", + "M": "E, d.M – E, d.M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d – d. MMM", + "M": "d. MMM – d. MMM" + }, + "MMMEd": { + "d": "E, dd. – E, dd. MMM", + "M": "E, dd. MMM – E, dd. MMM" + }, + "y": { + "y": "y – y. G" + }, + "yM": { + "M": "M.y – M.y. GGGGG", + "y": "M.y – M.y. GGGGG" + }, + "yMd": { + "d": "d.M.y – d.M.y. GGGGG", + "M": "d.M.y. – d.M.y.", + "y": "d.M.y – d.M.y. GGGGG" + }, + "yMEd": { + "d": "E, d.M.y – E, d.M.y. GGGGG", + "M": "E, d.M.y – E, d.M.y. GGGGG", + "y": "E, d.M.y – E, d.M.y. GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y. G", + "y": "MMM y – MMM y. G" + }, + "yMMMd": { + "d": "d–d. MMM y. G", + "M": "d. MMM – d. MMM y. G", + "y": "d. MMM y. – d. MMM y. G" + }, + "yMMMEd": { + "d": "E, d. MMM – E, d. MMM y. G", + "M": "E, d. MMM – E, d. MMM y. G", + "y": "E, d. MMM y – E, d. MMM y. G" + }, + "yMMMM": { + "M": "MMMM – MMMM y. G", + "y": "MMMM y. – MMMM y. G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Latn/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Latn/ca-ethiopic.json new file mode 100644 index 00000000000..030324fb8a5 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr-Latn/ca-ethiopic.json @@ -0,0 +1,549 @@ +{ + "main": { + "sr-Latn": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "sr", + "script": "Latn" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Jekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehase", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Jekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehase", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Jekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehase", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Jekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehase", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "ned", + "mon": "pon", + "tue": "uto", + "wed": "sre", + "thu": "čet", + "fri": "pet", + "sat": "sub" + }, + "narrow": { + "sun": "n", + "mon": "p", + "tue": "u", + "wed": "s", + "thu": "č", + "fri": "p", + "sat": "s" + }, + "short": { + "sun": "ne", + "mon": "po", + "tue": "ut", + "wed": "sr", + "thu": "če", + "fri": "pe", + "sat": "su" + }, + "wide": { + "sun": "nedelja", + "mon": "ponedeljak", + "tue": "utorak", + "wed": "sreda", + "thu": "četvrtak", + "fri": "petak", + "sat": "subota" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "ned", + "mon": "pon", + "tue": "uto", + "wed": "sre", + "thu": "čet", + "fri": "pet", + "sat": "sub" + }, + "narrow": { + "sun": "n", + "mon": "p", + "tue": "u", + "wed": "s", + "thu": "č", + "fri": "p", + "sat": "s" + }, + "short": { + "sun": "ne", + "mon": "po", + "tue": "ut", + "wed": "sr", + "thu": "če", + "fri": "pe", + "sat": "su" + }, + "wide": { + "sun": "nedelja", + "mon": "ponedeljak", + "tue": "utorak", + "wed": "sreda", + "thu": "četvrtak", + "fri": "petak", + "sat": "subota" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "1. kv.", + "2": "2. kv.", + "3": "3. kv.", + "4": "4. kv." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "prvi kvartal", + "2": "drugi kvartal", + "3": "treći kvartal", + "4": "četvrti kvartal" + } + }, + "stand-alone": { + "abbreviated": { + "1": "1. kv.", + "2": "2. kv.", + "3": "3. kv.", + "4": "4. kv." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "prvi kvartal", + "2": "drugi kvartal", + "3": "treći kvartal", + "4": "četvrti kvartal" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "ponoć", + "am": "AM", + "noon": "podne", + "pm": "PM", + "morning1": "ujutro", + "afternoon1": "po podne", + "evening1": "uveče", + "night1": "noću" + }, + "narrow": { + "midnight": "ponoć", + "am": "AM", + "noon": "podne", + "pm": "PM", + "morning1": "ujutru", + "afternoon1": "po podne", + "evening1": "uveče", + "night1": "noću" + }, + "wide": { + "midnight": "ponoć", + "am": "AM", + "noon": "podne", + "pm": "PM", + "morning1": "ujutro", + "afternoon1": "po podne", + "evening1": "uveče", + "night1": "noću" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "ponoć", + "am": "AM", + "noon": "podne", + "pm": "PM", + "morning1": "jutro", + "afternoon1": "popodne", + "evening1": "veče", + "night1": "noć" + }, + "narrow": { + "midnight": "ponoć", + "am": "pre podne", + "noon": "podne", + "pm": "po podne", + "morning1": "jutro", + "afternoon1": "popodne", + "evening1": "veče", + "night1": "noć" + }, + "wide": { + "midnight": "ponoć", + "am": "AM", + "noon": "podne", + "pm": "PM", + "morning1": "jutro", + "afternoon1": "popodne", + "evening1": "veče", + "night1": "noć" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "hh:mm B", + "Bhms": "hh:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E hh:mm B", + "EBhms": "E hh:mm:ss B", + "Ed": "E d.", + "Ehm": "E hh:mm a", + "EHm": "E HH:mm", + "Ehms": "E hh:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMEd": "E, d. MMM y. G", + "h": "h a", + "H": "HH", + "hm": "hh:mm a", + "Hm": "HH:mm", + "hms": "hh:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d.M.", + "MEd": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdd": "dd.MMM", + "MMMEd": "E, d. MMM", + "MMMMd": "d. MMMM", + "MMMMEd": "E, d. MMMM", + "ms": "mm:ss", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMEd": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMEd": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "yyyyQQQ": "QQQ, y. G", + "yyyyQQQQ": "QQQQ y. G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG y-MM – GGGGG y-MM", + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "GyMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "G": "GGGGG y-MM-dd – GGGGG y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "GyMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "G": "GGGGG y-MM-dd, E – GGGGG y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "GyMMM": { + "G": "G y MMM – G y MMM", + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "GyMMMd": { + "d": "G y MMM d–d", + "G": "G y MMM d – G y MMM d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "GyMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "G": "G y MMM d, E – G y MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d.M – d.M", + "M": "d.M – d.M" + }, + "MEd": { + "d": "E, d.M – E, d.M", + "M": "E, d.M – E, d.M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d – d. MMM", + "M": "d. MMM – d. MMM" + }, + "MMMEd": { + "d": "E, dd. – E, dd. MMM", + "M": "E, dd. MMM – E, dd. MMM" + }, + "y": { + "y": "y – y. G" + }, + "yM": { + "M": "M.y – M.y. GGGGG", + "y": "M.y – M.y. GGGGG" + }, + "yMd": { + "d": "d.M.y – d.M.y. GGGGG", + "M": "d.M.y. – d.M.y.", + "y": "d.M.y – d.M.y. GGGGG" + }, + "yMEd": { + "d": "E, d.M.y – E, d.M.y. GGGGG", + "M": "E, d.M.y – E, d.M.y. GGGGG", + "y": "E, d.M.y – E, d.M.y. GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y. G", + "y": "MMM y – MMM y. G" + }, + "yMMMd": { + "d": "d–d. MMM y. G", + "M": "d. MMM – d. MMM y. G", + "y": "d. MMM y. – d. MMM y. G" + }, + "yMMMEd": { + "d": "E, d. MMM – E, d. MMM y. G", + "M": "E, d. MMM – E, d. MMM y. G", + "y": "E, d. MMM y – E, d. MMM y. G" + }, + "yMMMM": { + "M": "MMMM – MMMM y. G", + "y": "MMMM y. – MMMM y. G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr/ca-ethiopic.json new file mode 100644 index 00000000000..728f03385ec --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/sr/ca-ethiopic.json @@ -0,0 +1,548 @@ +{ + "main": { + "sr": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "sr" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Мескерем", + "2": "Текемт", + "3": "Хедар", + "4": "Тахсас", + "5": "Тер", + "6": "Јекатит", + "7": "Мегабит", + "8": "Миазиа", + "9": "Генбот", + "10": "Сене", + "11": "Хамле", + "12": "Нехасе", + "13": "Пагумен" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "нед", + "mon": "пон", + "tue": "уто", + "wed": "сре", + "thu": "чет", + "fri": "пет", + "sat": "суб" + }, + "narrow": { + "sun": "н", + "mon": "п", + "tue": "у", + "wed": "с", + "thu": "ч", + "fri": "п", + "sat": "с" + }, + "short": { + "sun": "не", + "mon": "по", + "tue": "ут", + "wed": "ср", + "thu": "че", + "fri": "пе", + "sat": "су" + }, + "wide": { + "sun": "недеља", + "mon": "понедељак", + "tue": "уторак", + "wed": "среда", + "thu": "четвртак", + "fri": "петак", + "sat": "субота" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "нед", + "mon": "пон", + "tue": "уто", + "wed": "сре", + "thu": "чет", + "fri": "пет", + "sat": "суб" + }, + "narrow": { + "sun": "н", + "mon": "п", + "tue": "у", + "wed": "с", + "thu": "ч", + "fri": "п", + "sat": "с" + }, + "short": { + "sun": "не", + "mon": "по", + "tue": "ут", + "wed": "ср", + "thu": "че", + "fri": "пе", + "sat": "су" + }, + "wide": { + "sun": "недеља", + "mon": "понедељак", + "tue": "уторак", + "wed": "среда", + "thu": "четвртак", + "fri": "петак", + "sat": "субота" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "1. кв.", + "2": "2. кв.", + "3": "3. кв.", + "4": "4. кв." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "први квартал", + "2": "други квартал", + "3": "трећи квартал", + "4": "четврти квартал" + } + }, + "stand-alone": { + "abbreviated": { + "1": "1. кв.", + "2": "2. кв.", + "3": "3. кв.", + "4": "4. кв." + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "први квартал", + "2": "други квартал", + "3": "трећи квартал", + "4": "четврти квартал" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутро", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + }, + "narrow": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутру", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + }, + "wide": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "ујутро", + "afternoon1": "по подне", + "evening1": "увече", + "night1": "ноћу" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + }, + "narrow": { + "midnight": "поноћ", + "am": "пре подне", + "noon": "подне", + "pm": "по подне", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + }, + "wide": { + "midnight": "поноћ", + "am": "AM", + "noon": "подне", + "pm": "PM", + "morning1": "јутро", + "afternoon1": "поподне", + "evening1": "вече", + "night1": "ноћ" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMd", + "short": "GGGGGyMd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "hh:mm B", + "Bhms": "hh:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E hh:mm B", + "EBhms": "E hh:mm:ss B", + "Ed": "E d.", + "Ehm": "E hh:mm a", + "EHm": "E HH:mm", + "Ehms": "E hh:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMEd": "E, d. MMM y. G", + "h": "h a", + "H": "HH", + "hm": "hh:mm a", + "Hm": "HH:mm", + "hms": "hh:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d.M.", + "MEd": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdd": "dd.MMM", + "MMMEd": "E, d. MMM", + "MMMMd": "d. MMMM", + "MMMMEd": "E, d. MMMM", + "ms": "mm:ss", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMEd": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMEd": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "yyyyQQQ": "QQQ, y. G", + "yyyyQQQQ": "QQQQ y. G" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG y-MM – GGGGG y-MM", + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "GyMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "G": "GGGGG y-MM-dd – GGGGG y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "GyMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "G": "GGGGG y-MM-dd, E – GGGGG y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "GyMMM": { + "G": "G y MMM – G y MMM", + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "GyMMMd": { + "d": "G y MMM d–d", + "G": "G y MMM d – G y MMM d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "GyMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "G": "G y MMM d, E – G y MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d.M – d.M", + "M": "d.M – d.M" + }, + "MEd": { + "d": "E, d.M – E, d.M", + "M": "E, d.M – E, d.M" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d – d. MMM", + "M": "d. MMM – d. MMM" + }, + "MMMEd": { + "d": "E, dd. – E, dd. MMM", + "M": "E, dd. MMM – E, dd. MMM" + }, + "y": { + "y": "y – y. G" + }, + "yM": { + "M": "M.y – M.y. GGGGG", + "y": "M.y – M.y. GGGGG" + }, + "yMd": { + "d": "d.M.y – d.M.y. GGGGG", + "M": "d.M.y. – d.M.y.", + "y": "d.M.y – d.M.y. GGGGG" + }, + "yMEd": { + "d": "E, d.M.y – E, d.M.y. GGGGG", + "M": "E, d.M.y – E, d.M.y. GGGGG", + "y": "E, d.M.y – E, d.M.y. GGGGG" + }, + "yMMM": { + "M": "MMM – MMM y. G", + "y": "MMM y – MMM y. G" + }, + "yMMMd": { + "d": "d–d. MMM y. G", + "M": "d. MMM – d. MMM y. G", + "y": "d. MMM y. – d. MMM y. G" + }, + "yMMMEd": { + "d": "E, d. MMM – E, d. MMM y. G", + "M": "E, d. MMM – E, d. MMM y. G", + "y": "E, d. MMM y – E, d. MMM y. G" + }, + "yMMMM": { + "M": "MMMM – MMMM y. G", + "y": "MMMM y. – MMMM y. G" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/th/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/th/ca-ethiopic.json new file mode 100644 index 00000000000..079918fba64 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/th/ca-ethiopic.json @@ -0,0 +1,567 @@ +{ + "main": { + "th": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "th" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "เมสเคอเรม", + "2": "เตเกมท", + "3": "เฮดาร์", + "4": "ทาฮ์ซัส", + "5": "เทอร์", + "6": "เยคาทิท", + "7": "เมกาบิต", + "8": "เมียเซีย", + "9": "เจนบอต", + "10": "เซเน", + "11": "ฮัมเล", + "12": "เนแฮซ", + "13": "พากูเมน" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "เมสเคอเรม", + "2": "เตเกมท", + "3": "เฮดาร์", + "4": "ทาฮ์ซัส", + "5": "เทอร์", + "6": "เยคาทิท", + "7": "เมกาบิต", + "8": "เมียเซีย", + "9": "เจนบอต", + "10": "เซเน", + "11": "ฮัมเล", + "12": "เนแฮซ", + "13": "พากูเมน" + } + }, + "stand-alone": { + "abbreviated": { + "1": "เมสเคอเรม", + "2": "เตเกมท", + "3": "เฮดาร์", + "4": "ทาฮ์ซัส", + "5": "เทอร์", + "6": "เยคาทิท", + "7": "เมกาบิต", + "8": "เมียเซีย", + "9": "เจนบอต", + "10": "เซเน", + "11": "ฮัมเล", + "12": "เนแฮซ", + "13": "พากูเมน" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "เมสเคอเรม", + "2": "เตเกมท", + "3": "เฮดาร์", + "4": "ทาฮ์ซัส", + "5": "เทอร์", + "6": "เยคาทิท", + "7": "เมกาบิต", + "8": "เมียเซีย", + "9": "เจนบอต", + "10": "เซเน", + "11": "ฮัมเล", + "12": "เนแฮซ", + "13": "พากูเมน" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "อา.", + "mon": "จ.", + "tue": "อ.", + "wed": "พ.", + "thu": "พฤ.", + "fri": "ศ.", + "sat": "ส." + }, + "narrow": { + "sun": "อา", + "mon": "จ", + "tue": "อ", + "wed": "พ", + "thu": "พฤ", + "fri": "ศ", + "sat": "ส" + }, + "short": { + "sun": "อา.", + "mon": "จ.", + "tue": "อ.", + "wed": "พ.", + "thu": "พฤ.", + "fri": "ศ.", + "sat": "ส." + }, + "wide": { + "sun": "วันอาทิตย์", + "mon": "วันจันทร์", + "tue": "วันอังคาร", + "wed": "วันพุธ", + "thu": "วันพฤหัสบดี", + "fri": "วันศุกร์", + "sat": "วันเสาร์" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "อา.", + "mon": "จ.", + "tue": "อ.", + "wed": "พ.", + "thu": "พฤ.", + "fri": "ศ.", + "sat": "ส." + }, + "narrow": { + "sun": "อา", + "mon": "จ", + "tue": "อ", + "wed": "พ", + "thu": "พฤ", + "fri": "ศ", + "sat": "ส" + }, + "short": { + "sun": "อา.", + "mon": "จ.", + "tue": "อ.", + "wed": "พ.", + "thu": "พฤ.", + "fri": "ศ.", + "sat": "ส." + }, + "wide": { + "sun": "วันอาทิตย์", + "mon": "วันจันทร์", + "tue": "วันอังคาร", + "wed": "วันพุธ", + "thu": "วันพฤหัสบดี", + "fri": "วันศุกร์", + "sat": "วันเสาร์" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "ไตรมาส 1", + "2": "ไตรมาส 2", + "3": "ไตรมาส 3", + "4": "ไตรมาส 4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "ไตรมาส 1", + "2": "ไตรมาส 2", + "3": "ไตรมาส 3", + "4": "ไตรมาส 4" + } + }, + "stand-alone": { + "abbreviated": { + "1": "ไตรมาส 1", + "2": "ไตรมาส 2", + "3": "ไตรมาส 3", + "4": "ไตรมาส 4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "ไตรมาส 1", + "2": "ไตรมาส 2", + "3": "ไตรมาส 3", + "4": "ไตรมาส 4" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "เที่ยงคืน", + "am": "ก่อนเที่ยง", + "noon": "เที่ยง", + "pm": "หลังเที่ยง", + "morning1": "ในตอนเช้า", + "afternoon1": "ในตอนบ่าย", + "afternoon2": "บ่าย", + "evening1": "ในตอนเย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + }, + "narrow": { + "midnight": "เที่ยงคืน", + "am": "a", + "noon": "เที่ยง", + "pm": "p", + "morning1": "เช้า", + "afternoon1": "เที่ยง", + "afternoon2": "บ่าย", + "evening1": "เย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + }, + "wide": { + "midnight": "เที่ยงคืน", + "am": "ก่อนเที่ยง", + "noon": "เที่ยง", + "pm": "หลังเที่ยง", + "morning1": "ในตอนเช้า", + "afternoon1": "ในตอนบ่าย", + "afternoon2": "บ่าย", + "evening1": "ในตอนเย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "เที่ยงคืน", + "am": "ก่อนเที่ยง", + "noon": "เที่ยง", + "pm": "หลังเที่ยง", + "morning1": "ในตอนเช้า", + "afternoon1": "ในตอนบ่าย", + "afternoon2": "บ่าย", + "evening1": "ในตอนเย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + }, + "narrow": { + "midnight": "เที่ยงคืน", + "am": "ก่อนเที่ยง", + "noon": "เที่ยง", + "pm": "หลังเที่ยง", + "morning1": "เช้า", + "afternoon1": "ช่วงเที่ยง", + "afternoon2": "บ่าย", + "evening1": "เย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + }, + "wide": { + "midnight": "เที่ยงคืน", + "am": "ก่อนเที่ยง", + "noon": "เที่ยง", + "pm": "หลังเที่ยง", + "morning1": "ในตอนเช้า", + "afternoon1": "ในตอนบ่าย", + "afternoon2": "บ่าย", + "evening1": "ในตอนเย็น", + "evening2": "ค่ำ", + "night1": "กลางคืน" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "EEEEที่ d MMMM G y", + "long": "d MMMM G y", + "medium": "d MMM G y", + "short": "d/M/y G" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GyMd" + }, + "timeFormats": { + "full": "H นาฬิกา mm นาที ss วินาที zzzz", + "long": "H นาฬิกา mm นาที ss วินาที z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "Hmmsszzzz", + "long": "Hmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "E d", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "G y", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM G y", + "GyMMMd": "d MMM G y", + "GyMMMEd": "E d MMM G y", + "GyMMMEEEEd": "EEEEที่ d MMM G y", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "d/M", + "MEd": "E d/M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "E d MMM", + "MMMEEEEd": "EEEEที่ d MMM", + "MMMMd": "d MMMM", + "ms": "mm:ss", + "y": "G y", + "yyyy": "G y", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y GGGGG", + "yyyyMEd": "E d/M/y GGGGG", + "yyyyMMM": "MMM G y", + "yyyyMMMd": "d MMM G y", + "yyyyMMMEd": "E d MMM G y", + "yyyyMMMEEEEd": "EEEEที่ d MMM G y", + "yyyyMMMM": "MMMM G y", + "yyyyQQQ": "QQQ G y", + "yyyyQQQQ": "QQQQ G y" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} - {1}", + "Bh": { + "B": "h B – h B", + "h": "h – h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm – h:mm B", + "m": "h:mm – h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "MM/GGGGG y – MM/GGGGG y", + "M": "M/y – M/y G", + "y": "M/y – M/y G" + }, + "GyMd": { + "d": "d/M/y – d/M/y G", + "G": "d/MM/GGGGG y – d/MM/GGGGG y", + "M": "d/M/y – d/M/y G", + "y": "d/M/y – d/M/y G" + }, + "GyMEd": { + "d": "E d/M/y – E d/M/y G", + "G": "E d/MM/GGGGG y – E d/MM/GGGGG y", + "M": "E d/M/y – E d/M/y G", + "y": "E d/M/y – E d/M/y G" + }, + "GyMMM": { + "G": "MMM G y – MMM G y", + "M": "MMM – MMM G y", + "y": "MMM G y – MMM y" + }, + "GyMMMd": { + "d": "d – d MMM G y", + "G": "d MMM G y – d MMM G y", + "M": "d MMM – d MMM G y", + "y": "d MMM G y – d MMM y" + }, + "GyMMMEd": { + "d": "E d MMM – E d MMM G y", + "G": "E d MMM G y – E d MMM G y", + "M": "E d MMM – E d MMM G y", + "y": "E d MMM G y – E d MMM y" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "H–H" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "H:mm–H:mm v", + "m": "H:mm–H:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "H–H v" + }, + "M": { + "M": "M–M" + }, + "Md": { + "d": "d/M – d/M", + "M": "d/M – d/M" + }, + "MEd": { + "d": "E d/M – E d/M", + "M": "E d/M – E d/M" + }, + "MMM": { + "M": "LLL–LLL" + }, + "MMMd": { + "d": "d – d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "E d MMM – E d MMM", + "M": "E d MMM – E d MMM" + }, + "MMMEEEEd": { + "d": "EEEEที่ d – EEEEที่ d MMM", + "M": "EEEEที่ d MMM – EEEEที่ d MMM" + }, + "y": { + "y": "G y–y" + }, + "yM": { + "M": "M/y – M/y G", + "y": "M/y – M/y G" + }, + "yMd": { + "d": "d/M/y – d/M/y G", + "M": "d/M/y – d/M/y G", + "y": "d/M/y – d/M/y G" + }, + "yMEd": { + "d": "E d/M/y – E d/M/y G", + "M": "E d/M/y – E d/M/y G", + "y": "E d/M/y – E d/M/y G" + }, + "yMMM": { + "M": "MMM–MMM G y", + "y": "MMM G y – MMM y" + }, + "yMMMd": { + "d": "d–d MMM G y", + "M": "d MMM – d MMM G y", + "y": "d MMM G y – d MMM y" + }, + "yMMMEd": { + "d": "E d MMM – E d MMM G y", + "M": "E d MMM – E d MMM G y", + "y": "E d MMM G y – E d MMM y" + }, + "yMMMEEEEd": { + "d": "EEEEที่ d – EEEEที่ d MMM G y", + "M": "EEEEที่ d MMM – EEEEที่ d MMM G y", + "y": "EEEEที่ d MMM G y – EEEEที่ d MMM y" + }, + "yMMMM": { + "M": "MMMM – MMMM G y", + "y": "MMMM G y – MMMM y" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/tr/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/tr/ca-ethiopic.json new file mode 100644 index 00000000000..27fb526c0fb --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/tr/ca-ethiopic.json @@ -0,0 +1,558 @@ +{ + "main": { + "tr": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "tr" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tikimt", + "3": "Hidar", + "4": "Tahsas", + "5": "Tir", + "6": "Yakatit", + "7": "Magabit", + "8": "Miyazya", + "9": "Ginbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasa", + "13": "Pagumiene" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tikimt", + "3": "Hidar", + "4": "Tahsas", + "5": "Tir", + "6": "Yakatit", + "7": "Magabit", + "8": "Miyazya", + "9": "Ginbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasa", + "13": "Pagumiene" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tikimt", + "3": "Hidar", + "4": "Tahsas", + "5": "Tir", + "6": "Yakatit", + "7": "Magabit", + "8": "Miyazya", + "9": "Ginbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasa", + "13": "Pagumiene" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tikimt", + "3": "Hidar", + "4": "Tahsas", + "5": "Tir", + "6": "Yakatit", + "7": "Magabit", + "8": "Miyazya", + "9": "Ginbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasa", + "13": "Pagumiene" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Paz", + "mon": "Pzt", + "tue": "Sal", + "wed": "Çar", + "thu": "Per", + "fri": "Cum", + "sat": "Cmt" + }, + "narrow": { + "sun": "P", + "mon": "P", + "tue": "S", + "wed": "Ç", + "thu": "P", + "fri": "C", + "sat": "C" + }, + "short": { + "sun": "Pa", + "mon": "Pt", + "tue": "Sa", + "wed": "Ça", + "thu": "Pe", + "fri": "Cu", + "sat": "Ct" + }, + "wide": { + "sun": "Pazar", + "mon": "Pazartesi", + "tue": "Salı", + "wed": "Çarşamba", + "thu": "Perşembe", + "fri": "Cuma", + "sat": "Cumartesi" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Paz", + "mon": "Pzt", + "tue": "Sal", + "wed": "Çar", + "thu": "Per", + "fri": "Cum", + "sat": "Cmt" + }, + "narrow": { + "sun": "P", + "mon": "P", + "tue": "S", + "wed": "Ç", + "thu": "P", + "fri": "C", + "sat": "C" + }, + "short": { + "sun": "Pa", + "mon": "Pt", + "tue": "Sa", + "wed": "Ça", + "thu": "Pe", + "fri": "Cu", + "sat": "Ct" + }, + "wide": { + "sun": "Pazar", + "mon": "Pazartesi", + "tue": "Salı", + "wed": "Çarşamba", + "thu": "Perşembe", + "fri": "Cuma", + "sat": "Cumartesi" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Ç1", + "2": "Ç2", + "3": "Ç3", + "4": "Ç4" + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "1. çeyrek", + "2": "2. çeyrek", + "3": "3. çeyrek", + "4": "4. çeyrek" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Ç1", + "2": "Ç2", + "3": "Ç3", + "4": "Ç4" + }, + "narrow": { + "1": "1.", + "2": "2.", + "3": "3.", + "4": "4." + }, + "wide": { + "1": "1. çeyrek", + "2": "2. çeyrek", + "3": "3. çeyrek", + "4": "4. çeyrek" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "midnight": "gece yarısı", + "am": "ÖÖ", + "noon": "öğle", + "pm": "ÖS", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + }, + "narrow": { + "midnight": "gece", + "am": "öö", + "noon": "ö", + "pm": "ös", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + }, + "wide": { + "midnight": "gece yarısı", + "am": "ÖÖ", + "noon": "öğle", + "pm": "ÖS", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + } + }, + "stand-alone": { + "abbreviated": { + "midnight": "gece yarısı", + "am": "ÖÖ", + "noon": "öğle", + "pm": "ÖS", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + }, + "narrow": { + "midnight": "gece yarısı", + "am": "ÖÖ", + "noon": "öğle", + "pm": "ÖS", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + }, + "wide": { + "midnight": "gece yarısı", + "am": "ÖÖ", + "noon": "öğle", + "pm": "ÖS", + "morning1": "sabah", + "morning2": "öğleden önce", + "afternoon1": "öğleden sonra", + "afternoon2": "akşamüstü", + "evening1": "akşam", + "night1": "gece" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "G d MMMM y EEEE", + "long": "G d MMMM y", + "medium": "G d MMM y", + "short": "GGGGG d.MM.y" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMMd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "B h", + "Bhm": "B h:mm", + "Bhms": "B h:mm:ss", + "d": "d", + "E": "ccc", + "EBhm": "E B h:mm", + "EBhms": "E B h:mm:ss", + "Ed": "d E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "G y", + "GyMd": "d/M/y GGGGG", + "GyMMM": "G MMM y", + "GyMMMd": "G d MMM y", + "GyMMMEd": "G d MMM y E", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "dd/MM", + "MEd": "dd/MM E", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMEd": "d MMM E", + "MMMMd": "dd MMMM", + "MMMMEd": "dd MMMM E", + "mmss": "mm:ss", + "ms": "mm:ss", + "y": "G y", + "yyyy": "G y", + "yyyyM": "GGGGG M/y", + "yyyyMd": "GGGGG dd.MM.y", + "yyyyMEd": "GGGGG dd.MM.y E", + "yyyyMM": "MM.y G", + "yyyyMMM": "G MMM y", + "yyyyMMMd": "G dd MMM y", + "yyyyMMMEd": "G d MMM y E", + "yyyyMMMM": "G MMMM y", + "yyyyQQQ": "G y/QQQ", + "yyyyQQQQ": "G y/QQQQ" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "B h – B h", + "h": "B h–h" + }, + "Bhm": { + "B": "B h:mm – B h:mm", + "h": "B h:mm–h:mm", + "m": "B h:mm–h:mm" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG MM.y – GGGGG MM.y", + "M": "GGGGG MM.y – MM.y", + "y": "GGGGG MM.y – MM.y" + }, + "GyMd": { + "d": "GGGGG dd.MM.y – dd.MM.y", + "G": "GGGGG dd.MM.y GGGGG – dd.MM.y", + "M": "GGGGG dd.MM.y – dd.MM.y", + "y": "GGGGG dd.MM.y – dd.MM.y" + }, + "GyMEd": { + "d": "GGGGG dd.MM.y E – dd.MM.y E", + "G": "GGGGG dd.MM.y E – GGGGG dd.MM.y E", + "M": "GGGGG dd.MM.y E – dd.MM.y E", + "y": "GGGGG dd.MM.y E – dd.MM.y E" + }, + "GyMMM": { + "G": "G MMM y G – G MMM y", + "M": "G MMM – MMM y", + "y": "G MMM y – MMM y" + }, + "GyMMMd": { + "d": "G d–d MMM y", + "G": "G d MMM y – G d MMM y", + "M": "G d MMM – d MMM y", + "y": "G d MMM y – d MMM y" + }, + "GyMMMEd": { + "d": "G d MMM E – d MMM E y", + "G": "G d MMM y E – G d MMM y E", + "M": "G d MMM E – d MMM E y", + "y": "G d MMM y E – d MMM y E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "MM–MM" + }, + "Md": { + "d": "dd/MM – dd/MM", + "M": "dd/MM – dd/MM" + }, + "MEd": { + "d": "dd/MM E – dd/MM E", + "M": "dd/MM E – dd/MM E" + }, + "MMM": { + "M": "MMM–MMM" + }, + "MMMd": { + "d": "d – d MMM", + "M": "d MMM – d MMM" + }, + "MMMEd": { + "d": "d MMM E – d MMM E", + "M": "d MMM E – d MMM E" + }, + "y": { + "y": "G y–y" + }, + "yM": { + "M": "GGGGG M/y – M/y", + "y": "GGGGG M/y – M/y" + }, + "yMd": { + "d": "GGGGG dd.MM.y – dd.MM.y", + "M": "GGGGG dd.MM.y – dd.MM.y", + "y": "GGGGG dd.MM.y – dd.MM.y" + }, + "yMEd": { + "d": "GGGGG dd.MM.y E – dd.MM.y E", + "M": "GGGGG dd.MM.y E – dd.MM.y E", + "y": "GGGGG dd.MM.y E – dd.MM.y E" + }, + "yMMM": { + "M": "G MMM–MMM y", + "y": "G MMM y – MMM y" + }, + "yMMMd": { + "d": "G d–d MMM y", + "M": "G d MMM – d MMM y", + "y": "G d MMM y – d MMM y" + }, + "yMMMEd": { + "d": "G d MMM y E – d MMM y E", + "M": "G d MMM y E – d MMM y E", + "y": "G d MMM y E – d MMM y E" + }, + "yMMMM": { + "M": "G MMMM – MMMM y", + "y": "G MMMM y – MMMM y" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/und/ca-ethiopic.json b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/und/ca-ethiopic.json new file mode 100644 index 00000000000..60b006ff969 --- /dev/null +++ b/provider/testdata/data/cldr/cldr-cal-ethiopic-full/main/und/ca-ethiopic.json @@ -0,0 +1,507 @@ +{ + "main": { + "und": { + "identity": { + "version": { + "_cldrVersion": "41" + }, + "language": "root" + }, + "dates": { + "calendars": { + "ethiopic": { + "months": { + "format": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + "11": "11", + "12": "12", + "13": "13" + }, + "wide": { + "1": "Meskerem", + "2": "Tekemt", + "3": "Hedar", + "4": "Tahsas", + "5": "Ter", + "6": "Yekatit", + "7": "Megabit", + "8": "Miazia", + "9": "Genbot", + "10": "Sene", + "11": "Hamle", + "12": "Nehasse", + "13": "Pagumen" + } + } + }, + "days": { + "format": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "wide": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + } + }, + "stand-alone": { + "abbreviated": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "narrow": { + "sun": "S", + "mon": "M", + "tue": "T", + "wed": "W", + "thu": "T", + "fri": "F", + "sat": "S" + }, + "short": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + }, + "wide": { + "sun": "Sun", + "mon": "Mon", + "tue": "Tue", + "wed": "Wed", + "thu": "Thu", + "fri": "Fri", + "sat": "Sat" + } + } + }, + "quarters": { + "format": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + } + }, + "stand-alone": { + "abbreviated": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + }, + "narrow": { + "1": "1", + "2": "2", + "3": "3", + "4": "4" + }, + "wide": { + "1": "Q1", + "2": "Q2", + "3": "Q3", + "4": "Q4" + } + } + }, + "dayPeriods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM" + }, + "narrow": { + "am": "AM", + "pm": "PM" + }, + "wide": { + "am": "AM", + "pm": "PM" + } + }, + "stand-alone": { + "abbreviated": { + "am": "AM", + "pm": "PM" + }, + "narrow": { + "am": "AM", + "pm": "PM" + }, + "wide": { + "am": "AM", + "pm": "PM" + } + } + }, + "eras": { + "eraNames": { + "0": "ERA0", + "1": "ERA1" + }, + "eraAbbr": { + "0": "ERA0", + "1": "ERA1" + }, + "eraNarrow": { + "0": "ERA0", + "1": "ERA1" + } + }, + "dateFormats": { + "full": "G y MMMM d, EEEE", + "long": "G y MMMM d", + "medium": "G y MMM d", + "short": "GGGGG y-MM-dd" + }, + "dateSkeletons": { + "full": "GyMMMMEEEEd", + "long": "GyMMMMd", + "medium": "GyMMMd", + "short": "GGGGGyMMdd" + }, + "timeFormats": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "timeSkeletons": { + "full": "HHmmsszzzz", + "long": "HHmmssz", + "medium": "HHmmss", + "short": "HHmm" + }, + "dateTimeFormats": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}", + "availableFormats": { + "Bh": "h B", + "Bhm": "h:mm B", + "Bhms": "h:mm:ss B", + "d": "d", + "E": "ccc", + "EBhm": "E h:mm B", + "EBhms": "E h:mm:ss B", + "Ed": "d, E", + "Ehm": "E h:mm a", + "EHm": "E HH:mm", + "Ehms": "E h:mm:ss a", + "EHms": "E HH:mm:ss", + "Gy": "G y", + "GyMd": "GGGGG y-MM-dd", + "GyMMM": "G y MMM", + "GyMMMd": "G y MMM d", + "GyMMMEd": "G y MMM d, E", + "h": "h a", + "H": "HH", + "hm": "h:mm a", + "Hm": "HH:mm", + "hms": "h:mm:ss a", + "Hms": "HH:mm:ss", + "M": "L", + "Md": "MM-dd", + "MEd": "MM-dd, E", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMEd": "MMM d, E", + "MMMMd": "MMMM d", + "ms": "mm:ss", + "y": "G y", + "yyyy": "G y", + "yyyyM": "GGGGG y-MM", + "yyyyMd": "GGGGG y-MM-dd", + "yyyyMEd": "GGGGG y-MM-dd, E", + "yyyyMMM": "G y MMM", + "yyyyMMMd": "G y MMM d", + "yyyyMMMEd": "G y MMM d, E", + "yyyyMMMM": "G y MMMM", + "yyyyQQQ": "G y QQQ", + "yyyyQQQQ": "G y QQQQ" + }, + "appendItems": { + "Day": "{0} ({2}: {1})", + "Day-Of-Week": "{0} {1}", + "Era": "{1} {0}", + "Hour": "{0} ({2}: {1})", + "Minute": "{0} ({2}: {1})", + "Month": "{0} ({2}: {1})", + "Quarter": "{0} ({2}: {1})", + "Second": "{0} ({2}: {1})", + "Timezone": "{0} {1}", + "Week": "{0} ({2}: {1})", + "Year": "{1} {0}" + }, + "intervalFormats": { + "intervalFormatFallback": "{0} – {1}", + "Bh": { + "B": "h B – h B", + "h": "h–h B" + }, + "Bhm": { + "B": "h:mm B – h:mm B", + "h": "h:mm–h:mm B", + "m": "h:mm–h:mm B" + }, + "d": { + "d": "d–d" + }, + "Gy": { + "G": "G y – G y", + "y": "G y–y" + }, + "GyM": { + "G": "GGGGG y-MM – GGGGG y-MM", + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "GyMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "G": "GGGGG y-MM-dd – GGGGG y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "GyMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "G": "GGGGG y-MM-dd, E – GGGGG y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "GyMMM": { + "G": "G y MMM – G y MMM", + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "GyMMMd": { + "d": "G y MMM d–d", + "G": "G y MMM d – G y MMM d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "GyMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "G": "G y MMM d, E – G y MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "h": { + "a": "h a – h a", + "h": "h–h a" + }, + "H": { + "H": "HH–HH" + }, + "hm": { + "a": "h:mm a – h:mm a", + "h": "h:mm–h:mm a", + "m": "h:mm–h:mm a" + }, + "Hm": { + "H": "HH:mm–HH:mm", + "m": "HH:mm–HH:mm" + }, + "hmv": { + "a": "h:mm a – h:mm a v", + "h": "h:mm–h:mm a v", + "m": "h:mm–h:mm a v" + }, + "Hmv": { + "H": "HH:mm–HH:mm v", + "m": "HH:mm–HH:mm v" + }, + "hv": { + "a": "h a – h a v", + "h": "h–h a v" + }, + "Hv": { + "H": "HH–HH v" + }, + "M": { + "M": "MM–MM" + }, + "Md": { + "d": "MM-dd – MM-dd", + "M": "MM-dd – MM-dd" + }, + "MEd": { + "d": "MM-dd, E – MM-dd, E", + "M": "MM-dd, E – MM-dd, E" + }, + "MMM": { + "M": "LLL–LLL" + }, + "MMMd": { + "d": "MMM d–d", + "M": "MMM d – MMM d" + }, + "MMMEd": { + "d": "MMM d, E – MMM d, E", + "M": "MMM d, E – MMM d, E" + }, + "y": { + "y": "G y–y" + }, + "yM": { + "M": "GGGGG y-MM – y-MM", + "y": "GGGGG y-MM – y-MM" + }, + "yMd": { + "d": "GGGGG y-MM-dd – y-MM-dd", + "M": "GGGGG y-MM-dd – y-MM-dd", + "y": "GGGGG y-MM-dd – y-MM-dd" + }, + "yMEd": { + "d": "GGGGG y-MM-dd, E – y-MM-dd, E", + "M": "GGGGG y-MM-dd, E – y-MM-dd, E", + "y": "GGGGG y-MM-dd, E – y-MM-dd, E" + }, + "yMMM": { + "M": "G y MMM–MMM", + "y": "G y MMM – y MMM" + }, + "yMMMd": { + "d": "G y MMM d–d", + "M": "G y MMM d – MMM d", + "y": "G y MMM d – y MMM d" + }, + "yMMMEd": { + "d": "G y MMM d, E – MMM d, E", + "M": "G y MMM d, E – MMM d, E", + "y": "G y MMM d, E – y MMM d, E" + }, + "yMMMM": { + "M": "G y MMMM–MMMM", + "y": "G y MMMM – y MMMM" + } + } + } + } + } + } + } + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/ar-EG-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/ar-EG-u-ca-ethiopic.json new file mode 100644 index 00000000000..8295103c4e6 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/ar-EG-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE، d MMMM y G", + "long": "d MMMM y G", + "medium": "dd‏/MM‏/y G", + "short": "d‏/M‏/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} في {0}", + "long": "{1} في {0}", + "medium": "{1} في {0}", + "short": "{1} في {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/ar-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/ar-u-ca-ethiopic.json new file mode 100644 index 00000000000..8295103c4e6 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/ar-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE، d MMMM y G", + "long": "d MMMM y G", + "medium": "dd‏/MM‏/y G", + "short": "d‏/M‏/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} في {0}", + "long": "{1} في {0}", + "medium": "{1} في {0}", + "short": "{1} في {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/bn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/bn-u-ca-ethiopic.json new file mode 100644 index 00000000000..38a43eeaeaf --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/bn-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d MMMM, y G", + "long": "d MMMM, y G", + "medium": "d MMM, y G", + "short": "d/M/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/ccp-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/ccp-u-ca-ethiopic.json new file mode 100644 index 00000000000..38a43eeaeaf --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/ccp-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d MMMM, y G", + "long": "d MMMM, y G", + "medium": "d MMM, y G", + "short": "d/M/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/en-001-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/en-001-u-ca-ethiopic.json new file mode 100644 index 00000000000..cb3287a9cc4 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/en-001-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d MMMM y G", + "long": "d MMMM y G", + "medium": "d MMM y G", + "short": "dd/MM/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/en-ZA-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/en-ZA-u-ca-ethiopic.json new file mode 100644 index 00000000000..9439624fa95 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/en-ZA-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, dd MMMM y G", + "long": "dd MMMM y G", + "medium": "dd MMM y G", + "short": "GGGGG y/MM/dd" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/en-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/en-u-ca-ethiopic.json new file mode 100644 index 00000000000..b8833b35307 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/en-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, MMMM d, y G", + "long": "MMMM d, y G", + "medium": "MMM d, y G", + "short": "M/d/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} 'at' {0}", + "long": "{1} 'at' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/es-AR-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/es-AR-u-ca-ethiopic.json new file mode 100644 index 00000000000..42ec5b0f08b --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/es-AR-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d 'de' MMMM 'de' y G", + "long": "d 'de' MMMM 'de' y G", + "medium": "d 'de' MMM 'de' y G", + "short": "d/M/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/es-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/es-u-ca-ethiopic.json new file mode 100644 index 00000000000..4ed6c2d93d0 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/es-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d 'de' MMMM 'de' y G", + "long": "d 'de' MMMM 'de' y G", + "medium": "d 'de' MMM 'de' y G", + "short": "d/M/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "H:mm:ss (zzzz)", + "long": "H:mm:ss z", + "medium": "H:mm:ss", + "short": "H:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/fil-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/fil-u-ca-ethiopic.json new file mode 100644 index 00000000000..baff16807e6 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/fil-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, MMMM d, y G", + "long": "MMMM d, y G", + "medium": "MMM d, y G", + "short": "M/d/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a zzzz", + "long": "h:mm:ss a z", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss", + "long": "HH:mm:ss", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H11H12", + "length_combinations": { + "full": "{1} 'nang' {0}", + "long": "{1} 'nang' {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/fr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/fr-u-ca-ethiopic.json new file mode 100644 index 00000000000..87e83ae071e --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/fr-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE d MMMM y G", + "long": "d MMMM y G", + "medium": "d MMM y G", + "short": "dd/MM/y GGGGG" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} à {0}", + "long": "{1} à {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/ja-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/ja-u-ca-ethiopic.json new file mode 100644 index 00000000000..aec1f187e60 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/ja-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "Gy年M月d日(EEEE)", + "long": "Gy年M月d日", + "medium": "GGGGGy/MM/dd", + "short": "GGGGGy/M/d" + }, + "time_h11_h12": { + "full": "aK:mm:ss", + "long": "aK:mm:ss", + "medium": "aK:mm:ss", + "short": "aK:mm" + }, + "time_h23_h24": { + "full": "H時mm分ss秒 zzzz", + "long": "H:mm:ss z", + "medium": "H:mm:ss", + "short": "H:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/ru-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/ru-u-ca-ethiopic.json new file mode 100644 index 00000000000..870a3a697f6 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/ru-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d MMMM y г. G", + "long": "d MMMM y г. G", + "medium": "d MMM y г. G", + "short": "dd.MM.y G" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1}, {0}", + "long": "{1}, {0}", + "medium": "{1}, {0}", + "short": "{1}, {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/sr-Cyrl-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/sr-Cyrl-u-ca-ethiopic.json new file mode 100644 index 00000000000..2760de0f735 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/sr-Cyrl-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "time_h11_h12": { + "full": "hh:mm:ss a", + "long": "hh:mm:ss a", + "medium": "hh:mm:ss a", + "short": "hh:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/sr-Latn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/sr-Latn-u-ca-ethiopic.json new file mode 100644 index 00000000000..2760de0f735 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/sr-Latn-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "time_h11_h12": { + "full": "hh:mm:ss a", + "long": "hh:mm:ss a", + "medium": "hh:mm:ss a", + "short": "hh:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/sr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/sr-u-ca-ethiopic.json new file mode 100644 index 00000000000..2760de0f735 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/sr-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEE, d. MMMM y. G", + "long": "d. MMMM y. G", + "medium": "d.MM.y. G", + "short": "d.M.y. GGGGG" + }, + "time_h11_h12": { + "full": "hh:mm:ss a", + "long": "hh:mm:ss a", + "medium": "hh:mm:ss a", + "short": "hh:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/th-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/th-u-ca-ethiopic.json new file mode 100644 index 00000000000..c40fc5bee5b --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/th-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "EEEEที่ d MMMM G y", + "long": "d MMMM G y", + "medium": "d MMM G y", + "short": "d/M/y G" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "H นาฬิกา mm นาที ss วินาที zzzz", + "long": "H นาฬิกา mm นาที ss วินาที z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/tr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/tr-u-ca-ethiopic.json new file mode 100644 index 00000000000..af09a9db9bb --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/tr-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "G d MMMM y EEEE", + "long": "G d MMMM y", + "medium": "G d MMM y", + "short": "GGGGG d.MM.y" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/lengths@1/und-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/lengths@1/und-u-ca-ethiopic.json new file mode 100644 index 00000000000..4bc5a37e1f4 --- /dev/null +++ b/provider/testdata/data/json/datetime/lengths@1/und-u-ca-ethiopic.json @@ -0,0 +1,27 @@ +{ + "date": { + "full": "G y MMMM d, EEEE", + "long": "G y MMMM d", + "medium": "G y MMM d", + "short": "GGGGG y-MM-dd" + }, + "time_h11_h12": { + "full": "h:mm:ss a", + "long": "h:mm:ss a", + "medium": "h:mm:ss a", + "short": "h:mm a" + }, + "time_h23_h24": { + "full": "HH:mm:ss zzzz", + "long": "HH:mm:ss z", + "medium": "HH:mm:ss", + "short": "HH:mm" + }, + "preferred_hour_cycle": "H23H24", + "length_combinations": { + "full": "{1} {0}", + "long": "{1} {0}", + "medium": "{1} {0}", + "short": "{1} {0}" + } +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/ar-EG-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/ar-EG-u-ca-ethiopic.json new file mode 100644 index 00000000000..1293bd7b74b --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/ar-EG-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "d‏/M‏/y G", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E، d MMM y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M‏/y G", + "yyyyMd": "d‏/M‏/y G", + "yyyyMdE": "E، d/‏M/‏y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMdE": "E، d MMM y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "d/‏M", + "MdE": "E، d/‏M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E، d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E، d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/ar-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/ar-u-ca-ethiopic.json new file mode 100644 index 00000000000..1293bd7b74b --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/ar-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "d‏/M‏/y G", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E، d MMM y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M‏/y G", + "yyyyMd": "d‏/M‏/y G", + "yyyyMdE": "E، d/‏M/‏y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMdE": "E، d MMM y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "d/‏M", + "MdE": "E، d/‏M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E، d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E، d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/bn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/bn-u-ca-ethiopic.json new file mode 100644 index 00000000000..3c822135f42 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/bn-u-ca-ethiopic.json @@ -0,0 +1,40 @@ +{ + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM, y G", + "GyMMMdE": "E, d MMM, y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y G", + "yyyyMdE": "E, d/M/y G", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM, y G", + "yyyyMMMdE": "E, d MMM, y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "d/M", + "MdE": "E, d-M", + "MMdd": "dd-MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E d MMM", + "MMMMd": "d MMMM", + "MMMMdE": "E d MMMM", + "d": "d", + "dE": "d E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/ccp-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/ccp-u-ca-ethiopic.json new file mode 100644 index 00000000000..3e9e10e4fba --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/ccp-u-ca-ethiopic.json @@ -0,0 +1,40 @@ +{ + "Gy": "y G", + "GyMd": "GGGGG y-MM-dd", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM, y G", + "GyMMMdE": "E, d MMM, y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y G", + "yyyyMdE": "E, d/M/y G", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM, y G", + "yyyyMMMdE": "E, d MMM, y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "d/M", + "MdE": "E, d-M", + "MMdd": "dd-MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E d MMM", + "MMMMd": "d MMMM", + "MMMMdE": "E d MMMM", + "d": "d", + "dE": "d E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/en-001-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/en-001-u-ca-ethiopic.json new file mode 100644 index 00000000000..3fdcba92a06 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/en-001-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E, d MMM y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "dd/MM/y GGGGG", + "yyyyMdE": "E, dd/MM/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMdE": "E, d MMM y G", + "yyyyMMMM": "MMMM y G", + "M": "LL", + "Md": "dd/MM", + "MdE": "E, dd/MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E, d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E, h:mm a", + "Ehms": "E, h:mm:ss a", + "EHm": "E, HH:mm", + "EHms": "E, HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/en-ZA-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/en-ZA-u-ca-ethiopic.json new file mode 100644 index 00000000000..26bcbda482c --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/en-ZA-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E, d MMM y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "G y/MM/dd", + "yyyyMdE": "E, G y/MM/dd", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "dd MMM y G", + "yyyyMMMdE": "E, dd MMM y G", + "yyyyMMMM": "MMMM y G", + "M": "LL", + "Md": "MM/dd", + "MdE": "E, MM/dd", + "MMM": "LLL", + "MMMd": "dd MMM", + "MMMdE": "E, dd MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E, h:mm a", + "Ehms": "E, h:mm:ss a", + "EHm": "E, HH:mm", + "EHms": "E, HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/en-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/en-u-ca-ethiopic.json new file mode 100644 index 00000000000..cf630be1acb --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/en-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "M/d/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "MMM d, y G", + "GyMMMdE": "E, MMM d, y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "M/d/y GGGGG", + "yyyyMdE": "E, M/d/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "MMM d, y G", + "yyyyMMMdE": "E, MMM d, y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "M/d", + "MdE": "E, M/d", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMdE": "E, MMM d", + "MMMMd": "MMMM d", + "d": "d", + "dE": "d E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/es-AR-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/es-AR-u-ca-ethiopic.json new file mode 100644 index 00000000000..3ffc8d54fde --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/es-AR-u-ca-ethiopic.json @@ -0,0 +1,44 @@ +{ + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM 'de' y G", + "GyMMMd": "d 'de' MMM 'de' y G", + "GyMMMdE": "E, d 'de' MMM 'de' y G", + "GyMMMM": "MMMM 'de' y G", + "GyMMMMd": "d 'de' MMMM 'de' y G", + "GyMMMMdE": "E, d 'de' MMMM 'de' y G", + "y": "y G", + "yMdE": "E d/M/y G", + "yyyy": "y G", + "yyyyM": "M-y G", + "yyyyMd": "d/M/y GGGGG", + "yyyyMdE": "E d/M/y GGGGG", + "yyyyMMM": "MMM 'de' y G", + "yyyyMMMd": "d 'de' MMM 'de' y G", + "yyyyMMMdE": "EEE, d 'de' MMM 'de' y G", + "yyyyMMMM": "MMMM 'de' y G", + "yyyyMMMMd": "d 'de' MMMM 'de' y G", + "yyyyMMMMdE": "EEE, d 'de' MMMM 'de' y G", + "M": "L", + "Md": "d/M", + "MdE": "E d-M", + "MMM": "LLL", + "MMMd": "d 'de' MMM", + "MMMdE": "E, d 'de' MMM", + "MMMMd": "d 'de' MMMM", + "MMMMdE": "E, d 'de' MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/es-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/es-u-ca-ethiopic.json new file mode 100644 index 00000000000..54c712cf39c --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/es-u-ca-ethiopic.json @@ -0,0 +1,43 @@ +{ + "Gy": "y G", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E, d MMM y G", + "GyMMMM": "MMMM 'de' y G", + "GyMMMMd": "d 'de' MMMM 'de' y G", + "GyMMMMdE": "E, d 'de' MMMM 'de' y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "d/M/y GGGGG", + "yyyyMdE": "E, d/M/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMdE": "EEE, d MMM y G", + "yyyyMMMM": "MMMM 'de' y G", + "yyyyMMMMd": "d 'de' MMMM 'de' y G", + "yyyyMMMMdE": "EEE, d 'de' MMMM 'de' y G", + "M": "L", + "Md": "d/M", + "MdE": "E, d/M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E, d MMM", + "MMMMd": "d 'de' MMMM", + "MMMMdE": "E, d 'de' MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/fil-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/fil-u-ca-ethiopic.json new file mode 100644 index 00000000000..acaca4363fc --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/fil-u-ca-ethiopic.json @@ -0,0 +1,39 @@ +{ + "Gy": "y G", + "GyMd": "M/d/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "MMM d, y G", + "GyMMMdE": "E, MMM d, y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "M/y GGGGG", + "yyyyMd": "M/d/y GGGGG", + "yyyyMdE": "E, M/d/y GGGGG", + "yyyyMM": "MM-y G", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "MMM d, y G", + "yyyyMMMdE": "E, MMM d, y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "M/d", + "MdE": "E, M/d", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMdE": "E, MMM d", + "MMMMd": "MMMM d", + "MMMMdE": "E, MMMM d", + "d": "d", + "dE": "d E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/fr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/fr-u-ca-ethiopic.json new file mode 100644 index 00000000000..fdead145901 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/fr-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y G", + "GyMd": "dd/MM/y GGGGG", + "GyMMM": "MMM y G", + "GyMMMd": "d MMM y G", + "GyMMMdE": "E d MMM y G", + "y": "y G", + "yyyy": "y G", + "yyyyM": "MM/y GGGGG", + "yyyyMd": "dd/MM/y GGGGG", + "yyyyMdE": "E dd/MM/y GGGGG", + "yyyyMMM": "MMM y G", + "yyyyMMMd": "d MMM y G", + "yyyyMMMdE": "E d MMM y G", + "yyyyMMMM": "MMMM y G", + "M": "L", + "Md": "dd/MM", + "MdE": "E dd/MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/ja-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/ja-u-ca-ethiopic.json new file mode 100644 index 00000000000..533348416e3 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/ja-u-ca-ethiopic.json @@ -0,0 +1,43 @@ +{ + "Gy": "Gy年", + "GyMd": "GGGGGy/M/d", + "GyMMM": "Gy年M月", + "GyMMMd": "Gy年M月d日", + "GyMMMdE": "Gy年M月d日(E)", + "GyMMMdEEEE": "Gy年M月d日(EEEE)", + "y": "Gy年", + "yyyy": "Gy年", + "yyyyM": "GGGGGy/M", + "yyyyMd": "GGGGGy/M/d", + "yyyyMdE": "GGGGGy/M/d(E)", + "yyyyMdEEEE": "GGGGGy/M/d(EEEE)", + "yyyyMMM": "Gy年M月", + "yyyyMMMd": "Gy年M月d日", + "yyyyMMMdE": "Gy年M月d日(E)", + "yyyyMMMdEEEE": "Gy年M月d日(EEEE)", + "yyyyMMMM": "Gy年M月", + "M": "M月", + "Md": "M/d", + "MdE": "M/d(E)", + "MdEEEE": "M/d(EEEE)", + "MMM": "M月", + "MMMd": "M月d日", + "MMMdE": "M月d日(E)", + "MMMdEEEE": "M月d日(EEEE)", + "MMMMd": "M月d日", + "d": "d日", + "dE": "d日(E)", + "dEEEE": "d日(EEEE)", + "E": "ccc", + "Ehm": "aK:mm (E)", + "Ehms": "aK:mm:ss (E)", + "EHm": "H:mm (E)", + "EHms": "H:mm:ss (E)", + "h": "aK時", + "hm": "aK:mm", + "hms": "aK:mm:ss", + "H": "H時", + "Hm": "H:mm", + "Hms": "H:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/ru-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/ru-u-ca-ethiopic.json new file mode 100644 index 00000000000..71310ecb5ae --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/ru-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "y г. G", + "GyMd": "dd.MM.y G", + "GyMMM": "LLL y г. G", + "GyMMMd": "d MMM y г. G", + "GyMMMdE": "E, d MMM y г. G", + "y": "y г. G", + "yyyy": "y г. G", + "yyyyM": "MM.y G", + "yyyyMd": "dd.MM.y G", + "yyyyMdE": "E, dd.MM.y G", + "yyyyMMM": "LLL y г. G", + "yyyyMMMd": "d MMM y г. G", + "yyyyMMMdE": "E, d MMM y г. G", + "yyyyMMMM": "LLLL y г. G", + "M": "L", + "Md": "dd.MM", + "MdE": "E, dd.MM", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "ccc, d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E, d", + "E": "ccc", + "Ehm": "ccc, h:mm a", + "Ehms": "ccc, h:mm:ss a", + "EHm": "ccc HH:mm", + "EHms": "ccc HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/sr-Cyrl-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/sr-Cyrl-u-ca-ethiopic.json new file mode 100644 index 00000000000..141109f8c94 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/sr-Cyrl-u-ca-ethiopic.json @@ -0,0 +1,42 @@ +{ + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMdE": "E, d. MMM y. G", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMdE": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMdE": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "M": "L", + "Md": "d.M.", + "MdE": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdE": "E, d. MMM", + "MMMdd": "dd.MMM", + "MMMMd": "d. MMMM", + "MMMMdE": "E, d. MMMM", + "d": "d", + "dE": "E d.", + "E": "ccc", + "Ehm": "E hh:mm a", + "Ehms": "E hh:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "hh:mm a", + "hms": "hh:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/sr-Latn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/sr-Latn-u-ca-ethiopic.json new file mode 100644 index 00000000000..141109f8c94 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/sr-Latn-u-ca-ethiopic.json @@ -0,0 +1,42 @@ +{ + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMdE": "E, d. MMM y. G", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMdE": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMdE": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "M": "L", + "Md": "d.M.", + "MdE": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdE": "E, d. MMM", + "MMMdd": "dd.MMM", + "MMMMd": "d. MMMM", + "MMMMdE": "E, d. MMMM", + "d": "d", + "dE": "E d.", + "E": "ccc", + "Ehm": "E hh:mm a", + "Ehms": "E hh:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "hh:mm a", + "hms": "hh:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/sr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/sr-u-ca-ethiopic.json new file mode 100644 index 00000000000..141109f8c94 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/sr-u-ca-ethiopic.json @@ -0,0 +1,42 @@ +{ + "Gy": "y. G", + "GyMd": "d.M.y. GGGGG", + "GyMMM": "MMM y. G", + "GyMMMd": "d. MMM y. G", + "GyMMMdE": "E, d. MMM y. G", + "y": "y. G", + "yyyy": "y. G", + "yyyyM": "M.y. GGGGG", + "yyyyMd": "d.M.y. GGGGG", + "yyyyMdE": "E, d.M.y. GGGGG", + "yyyyMM": "MM.y. G", + "yyyyMMdd": "dd.MM.y. G", + "yyyyMMM": "MMM y. G", + "yyyyMMMd": "d. MMM y. G", + "yyyyMMMdE": "E, d. MMM y. G", + "yyyyMMMM": "MMMM y. G", + "M": "L", + "Md": "d.M.", + "MdE": "E, d.M.", + "MMdd": "MM-dd", + "MMM": "LLL", + "MMMd": "d. MMM", + "MMMdE": "E, d. MMM", + "MMMdd": "dd.MMM", + "MMMMd": "d. MMMM", + "MMMMdE": "E, d. MMMM", + "d": "d", + "dE": "E d.", + "E": "ccc", + "Ehm": "E hh:mm a", + "Ehms": "E hh:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "hh:mm a", + "hms": "hh:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/th-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/th-u-ca-ethiopic.json new file mode 100644 index 00000000000..0ae2957e65d --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/th-u-ca-ethiopic.json @@ -0,0 +1,40 @@ +{ + "Gy": "G y", + "GyMd": "d/M/y GGGGG", + "GyMMM": "MMM G y", + "GyMMMd": "d MMM G y", + "GyMMMdE": "E d MMM G y", + "GyMMMdEEEE": "EEEEที่ d MMM G y", + "y": "G y", + "yyyy": "G y", + "yyyyM": "M/y G", + "yyyyMd": "d/M/y GGGGG", + "yyyyMdE": "E d/M/y GGGGG", + "yyyyMMM": "MMM G y", + "yyyyMMMd": "d MMM G y", + "yyyyMMMdE": "E d MMM G y", + "yyyyMMMdEEEE": "EEEEที่ d MMM G y", + "yyyyMMMM": "MMMM G y", + "M": "L", + "Md": "d/M", + "MdE": "E d/M", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "E d MMM", + "MMMdEEEE": "EEEEที่ d MMM", + "MMMMd": "d MMMM", + "d": "d", + "dE": "E d", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/tr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/tr-u-ca-ethiopic.json new file mode 100644 index 00000000000..d4ec1d5f031 --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/tr-u-ca-ethiopic.json @@ -0,0 +1,40 @@ +{ + "Gy": "G y", + "GyMd": "d/M/y GGGGG", + "GyMMM": "G MMM y", + "GyMMMd": "G d MMM y", + "GyMMMdE": "G d MMM y E", + "y": "G y", + "yyyy": "G y", + "yyyyM": "GGGGG M/y", + "yyyyMd": "GGGGG dd.MM.y", + "yyyyMdE": "GGGGG dd.MM.y E", + "yyyyMM": "MM.y G", + "yyyyMMM": "G MMM y", + "yyyyMMMd": "G dd MMM y", + "yyyyMMMdE": "G d MMM y E", + "yyyyMMMM": "G MMMM y", + "M": "L", + "Md": "dd/MM", + "MdE": "dd/MM E", + "MMM": "LLL", + "MMMd": "d MMM", + "MMMdE": "d MMM E", + "MMMMd": "dd MMMM", + "MMMMdE": "dd MMMM E", + "d": "d", + "dE": "d E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss", + "mmss": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/skeletons@1/und-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/skeletons@1/und-u-ca-ethiopic.json new file mode 100644 index 00000000000..806b1b7e5ce --- /dev/null +++ b/provider/testdata/data/json/datetime/skeletons@1/und-u-ca-ethiopic.json @@ -0,0 +1,37 @@ +{ + "Gy": "G y", + "GyMd": "GGGGG y-MM-dd", + "GyMMM": "G y MMM", + "GyMMMd": "G y MMM d", + "GyMMMdE": "G y MMM d, E", + "y": "G y", + "yyyy": "G y", + "yyyyM": "GGGGG y-MM", + "yyyyMd": "GGGGG y-MM-dd", + "yyyyMdE": "GGGGG y-MM-dd, E", + "yyyyMMM": "G y MMM", + "yyyyMMMd": "G y MMM d", + "yyyyMMMdE": "G y MMM d, E", + "yyyyMMMM": "G y MMMM", + "M": "L", + "Md": "MM-dd", + "MdE": "MM-dd, E", + "MMM": "LLL", + "MMMd": "MMM d", + "MMMdE": "MMM d, E", + "MMMMd": "MMMM d", + "d": "d", + "dE": "d, E", + "E": "ccc", + "Ehm": "E h:mm a", + "Ehms": "E h:mm:ss a", + "EHm": "E HH:mm", + "EHms": "E HH:mm:ss", + "h": "h a", + "hm": "h:mm a", + "hms": "h:mm:ss a", + "H": "HH", + "Hm": "HH:mm", + "Hms": "HH:mm:ss", + "ms": "mm:ss" +} diff --git a/provider/testdata/data/json/datetime/symbols@1/ar-EG-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/ar-EG-u-ca-ethiopic.json new file mode 100644 index 00000000000..12873decee3 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/ar-EG-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "مسكريم", + "تكمت", + "هدار", + "تهساس", + "تر", + "يكتت", + "مجابيت", + "ميازيا", + "جنبت", + "سين", + "هامل", + "نهاس" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "مسكريم", + "تكمت", + "هدار", + "تهساس", + "تر", + "يكتت", + "مجابيت", + "ميازيا", + "جنبت", + "سين", + "هامل", + "نهاس" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "الأحد", + "الاثنين", + "الثلاثاء", + "الأربعاء", + "الخميس", + "الجمعة", + "السبت" + ], + "narrow": [ + "ح", + "ن", + "ث", + "ر", + "خ", + "ج", + "س" + ], + "short": [ + "أحد", + "إثنين", + "ثلاثاء", + "أربعاء", + "خميس", + "جمعة", + "سبت" + ], + "wide": [ + "الأحد", + "الاثنين", + "الثلاثاء", + "الأربعاء", + "الخميس", + "الجمعة", + "السبت" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + }, + "narrow": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + }, + "short": null, + "wide": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": null, + "short": null, + "wide": { + "am": "صباحًا", + "pm": "مساءً", + "noon": null, + "midnight": null + } + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/ar-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/ar-u-ca-ethiopic.json new file mode 100644 index 00000000000..12873decee3 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/ar-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "مسكريم", + "تكمت", + "هدار", + "تهساس", + "تر", + "يكتت", + "مجابيت", + "ميازيا", + "جنبت", + "سين", + "هامل", + "نهاس" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "مسكريم", + "تكمت", + "هدار", + "تهساس", + "تر", + "يكتت", + "مجابيت", + "ميازيا", + "جنبت", + "سين", + "هامل", + "نهاس" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "الأحد", + "الاثنين", + "الثلاثاء", + "الأربعاء", + "الخميس", + "الجمعة", + "السبت" + ], + "narrow": [ + "ح", + "ن", + "ث", + "ر", + "خ", + "ج", + "س" + ], + "short": [ + "أحد", + "إثنين", + "ثلاثاء", + "أربعاء", + "خميس", + "جمعة", + "سبت" + ], + "wide": [ + "الأحد", + "الاثنين", + "الثلاثاء", + "الأربعاء", + "الخميس", + "الجمعة", + "السبت" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + }, + "narrow": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + }, + "short": null, + "wide": { + "am": "ص", + "pm": "م", + "noon": null, + "midnight": null + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": null, + "short": null, + "wide": { + "am": "صباحًا", + "pm": "مساءً", + "noon": null, + "midnight": null + } + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/bn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/bn-u-ca-ethiopic.json new file mode 100644 index 00000000000..74abf759958 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/bn-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "মাস্কেরেম", + "টেকেমট", + "হিডার", + "তাহসাস", + "টের", + "ইয়েকাটিট", + "মেগাবিট", + "মিয়াজিয়া", + "গেনবট", + "সিনি", + "হ্যামলি", + "নেহাসে" + ], + "narrow": [ + "১", + "২", + "৩", + "৪", + "৫", + "৬", + "৭", + "৮", + "৯", + "১০", + "১১", + "১২" + ], + "short": null, + "wide": [ + "মাস্কেরেম", + "টেকেমট", + "হিডার", + "তাহসাস", + "টের", + "ইয়েকাটিট", + "মেগাবিট", + "মিয়াজিয়া", + "গেনবট", + "সিনি", + "হ্যামলি", + "নেহাসে" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "রবি", + "সোম", + "মঙ্গল", + "বুধ", + "বৃহস্পতি", + "শুক্র", + "শনি" + ], + "narrow": [ + "র", + "সো", + "ম", + "বু", + "বৃ", + "শু", + "শ" + ], + "short": [ + "রঃ", + "সোঃ", + "মঃ", + "বুঃ", + "বৃঃ", + "শুঃ", + "শনি" + ], + "wide": [ + "রবিবার", + "সোমবার", + "মঙ্গলবার", + "বুধবার", + "বৃহস্পতিবার", + "শুক্রবার", + "শনিবার" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "যুগ ১", + "incarnation": "যুগ ০" + }, + "abbr": { + "before-incar": "যুগ ১", + "incarnation": "যুগ ০" + }, + "narrow": { + "before-incar": "যুগ ১", + "incarnation": "যুগ ০" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/ccp-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/ccp-u-ca-ethiopic.json new file mode 100644 index 00000000000..010d632d551 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/ccp-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "𑄢𑄧𑄝𑄨", + "𑄥𑄧𑄟𑄴", + "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "𑄝𑄪𑄖𑄴", + "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "𑄥𑄧𑄚𑄨" + ], + "narrow": [ + "𑄢𑄧", + "𑄥𑄧", + "𑄟𑄧", + "𑄝𑄪", + "𑄝𑄳𑄢𑄨", + "𑄥𑄪", + "𑄥𑄧" + ], + "short": [ + "𑄢𑄧𑄝𑄨", + "𑄥𑄧𑄟𑄴", + "𑄟𑄧𑄁𑄉𑄧𑄣𑄴", + "𑄝𑄪𑄖𑄴", + "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴", + "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴", + "𑄥𑄧𑄚𑄨" + ], + "wide": [ + "𑄢𑄧𑄝𑄨𑄝𑄢𑄴", + "𑄥𑄧𑄟𑄴𑄝𑄢𑄴", + "𑄟𑄧𑄁𑄉𑄧𑄣𑄴𑄝𑄢𑄴", + "𑄝𑄪𑄖𑄴𑄝𑄢𑄴", + "𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴𑄝𑄢𑄴", + "𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴𑄝𑄢𑄴", + "𑄥𑄧𑄚𑄨𑄝𑄢𑄴" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/en-001-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/en-001-u-ca-ethiopic.json new file mode 100644 index 00000000000..5f66715ef88 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/en-001-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "narrow": [ + "S", + "M", + "T", + "W", + "T", + "F", + "S" + ], + "short": [ + "Su", + "Mo", + "Tu", + "We", + "Th", + "Fr", + "Sa" + ], + "wide": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + }, + "narrow": { + "am": "a", + "pm": "p", + "noon": "n", + "midnight": "mi" + }, + "short": null, + "wide": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/en-ZA-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/en-ZA-u-ca-ethiopic.json new file mode 100644 index 00000000000..5f66715ef88 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/en-ZA-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "narrow": [ + "S", + "M", + "T", + "W", + "T", + "F", + "S" + ], + "short": [ + "Su", + "Mo", + "Tu", + "We", + "Th", + "Fr", + "Sa" + ], + "wide": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + }, + "narrow": { + "am": "a", + "pm": "p", + "noon": "n", + "midnight": "mi" + }, + "short": null, + "wide": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "am", + "pm": "pm", + "noon": "noon", + "midnight": "midnight" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/en-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/en-u-ca-ethiopic.json new file mode 100644 index 00000000000..914af394a74 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/en-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "narrow": [ + "S", + "M", + "T", + "W", + "T", + "F", + "S" + ], + "short": [ + "Su", + "Mo", + "Tu", + "We", + "Th", + "Fr", + "Sa" + ], + "wide": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "noon", + "midnight": "midnight" + }, + "narrow": { + "am": "a", + "pm": "p", + "noon": "n", + "midnight": "mi" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "noon", + "midnight": "midnight" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "noon", + "midnight": "midnight" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/es-AR-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/es-AR-u-ca-ethiopic.json new file mode 100644 index 00000000000..ff660b14ba6 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/es-AR-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "meskerem", + "tekemt", + "hedar", + "tahsas", + "ter", + "yekatit", + "megabit", + "miazia", + "genbot", + "sene", + "hamle", + "nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "meskerem", + "tekemt", + "hedar", + "tahsas", + "ter", + "yekatit", + "megabit", + "miazia", + "genbot", + "sene", + "hamle", + "nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "dom", + "lun", + "mar", + "mié", + "jue", + "vie", + "sáb" + ], + "narrow": [ + "D", + "L", + "M", + "M", + "J", + "V", + "S" + ], + "short": [ + "DO", + "LU", + "MA", + "MI", + "JU", + "VI", + "SA" + ], + "wide": [ + "domingo", + "lunes", + "martes", + "miércoles", + "jueves", + "viernes", + "sábado" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "a. m.", + "pm": "p. m.", + "noon": "mediodía", + "midnight": null + }, + "narrow": { + "am": "a. m.", + "pm": "p. m.", + "noon": "del mediodía", + "midnight": null + }, + "short": null, + "wide": { + "am": "a. m.", + "pm": "p. m.", + "noon": "mediodía", + "midnight": null + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "a. m.", + "pm": "p. m.", + "noon": "m.", + "midnight": null + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/es-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/es-u-ca-ethiopic.json new file mode 100644 index 00000000000..f0b0c74f0c0 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/es-u-ca-ethiopic.json @@ -0,0 +1,149 @@ +{ + "months": { + "format": { + "abbreviated": [ + "meskerem", + "tekemt", + "hedar", + "tahsas", + "ter", + "yekatit", + "megabit", + "miazia", + "genbot", + "sene", + "hamle", + "nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "meskerem", + "tekemt", + "hedar", + "tahsas", + "ter", + "yekatit", + "megabit", + "miazia", + "genbot", + "sene", + "hamle", + "nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "dom", + "lun", + "mar", + "mié", + "jue", + "vie", + "sáb" + ], + "narrow": [ + "D", + "L", + "M", + "X", + "J", + "V", + "S" + ], + "short": [ + "DO", + "LU", + "MA", + "MI", + "JU", + "VI", + "SA" + ], + "wide": [ + "domingo", + "lunes", + "martes", + "miércoles", + "jueves", + "viernes", + "sábado" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "a. m.", + "pm": "p. m.", + "noon": "del mediodía", + "midnight": null + }, + "narrow": { + "am": "a. m.", + "pm": "p. m.", + "noon": "del mediodía", + "midnight": null + }, + "short": null, + "wide": { + "am": "a. m.", + "pm": "p. m.", + "noon": "del mediodía", + "midnight": null + } + }, + "stand_alone": { + "abbreviated": { + "am": "a. m.", + "pm": "p. m.", + "noon": "mediodía", + "midnight": null + }, + "narrow": { + "am": "a. m.", + "pm": "p. m.", + "noon": "mediodía", + "midnight": null + }, + "short": null, + "wide": { + "am": "a. m.", + "pm": "p. m.", + "noon": "mediodía", + "midnight": null + } + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/fil-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/fil-u-ca-ethiopic.json new file mode 100644 index 00000000000..520fab23348 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/fil-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Lin", + "Lun", + "Mar", + "Miy", + "Huw", + "Biy", + "Sab" + ], + "narrow": [ + "Lin", + "Lun", + "Mar", + "Miy", + "Huw", + "Biy", + "Sab" + ], + "short": [ + "Li", + "Lu", + "Ma", + "Mi", + "Hu", + "Bi", + "Sa" + ], + "wide": [ + "Linggo", + "Lunes", + "Martes", + "Miyerkules", + "Huwebes", + "Biyernes", + "Sabado" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "tanghaling-tapat", + "midnight": "hatinggabi" + }, + "narrow": { + "am": "am", + "pm": "pm", + "noon": "tanghaling-tapat", + "midnight": "hatinggabi" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "tanghaling-tapat", + "midnight": "hatinggabi" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "tanghaling-tapat", + "midnight": "hatinggabi" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/fr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/fr-u-ca-ethiopic.json new file mode 100644 index 00000000000..b749a0a6b67 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/fr-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "mäs.", + "teq.", + "hed.", + "tah.", + "ter", + "yäk.", + "mäg.", + "miy.", + "gue.", + "sän.", + "ham.", + "näh." + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "mäskäräm", + "teqemt", + "hedar", + "tahesas", + "ter", + "yäkatit", + "mägabit", + "miyazya", + "guenbot", + "säné", + "hamlé", + "nähasé" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "dim.", + "lun.", + "mar.", + "mer.", + "jeu.", + "ven.", + "sam." + ], + "narrow": [ + "D", + "L", + "M", + "M", + "J", + "V", + "S" + ], + "short": [ + "di", + "lu", + "ma", + "me", + "je", + "ve", + "sa" + ], + "wide": [ + "dimanche", + "lundi", + "mardi", + "mercredi", + "jeudi", + "vendredi", + "samedi" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "midi", + "midnight": "minuit" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "midi", + "midnight": "minuit" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "midi", + "midnight": "minuit" + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "après l’Incarnation", + "incarnation": "avant l’Incarnation" + }, + "abbr": { + "before-incar": "ap. Inc.", + "incarnation": "av. Inc." + }, + "narrow": { + "before-incar": "ap. Inc.", + "incarnation": "av. Inc." + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/ja-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/ja-u-ca-ethiopic.json new file mode 100644 index 00000000000..fc5a5ee7249 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/ja-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "メスケレム", + "テケムト", + "ヘダル", + "ターサス", + "テル", + "イェカティト", + "メガビト", + "ミアジア", + "ゲンボト", + "セネ", + "ハムレ", + "ネハッセ" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "メスケレム", + "テケムト", + "ヘダル", + "ターサス", + "テル", + "イェカティト", + "メガビト", + "ミアジア", + "ゲンボト", + "セネ", + "ハムレ", + "ネハッセ" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "日", + "月", + "火", + "水", + "木", + "金", + "土" + ], + "narrow": [ + "日", + "月", + "火", + "水", + "木", + "金", + "土" + ], + "short": [ + "日", + "月", + "火", + "水", + "木", + "金", + "土" + ], + "wide": [ + "日曜日", + "月曜日", + "火曜日", + "水曜日", + "木曜日", + "金曜日", + "土曜日" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "午前", + "pm": "午後", + "noon": "正午", + "midnight": "真夜中" + }, + "narrow": { + "am": "午前", + "pm": "午後", + "noon": "正午", + "midnight": "真夜中" + }, + "short": null, + "wide": { + "am": "午前", + "pm": "午後", + "noon": "正午", + "midnight": "真夜中" + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/ru-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/ru-u-ca-ethiopic.json new file mode 100644 index 00000000000..d03946f4edf --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/ru-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "мескерем", + "текемт", + "хедар", + "тахсас", + "тер", + "якатит", + "магабит", + "миазия", + "генбот", + "сэнэ", + "хамлэ", + "нахасэ" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "мескерем", + "текемт", + "хедар", + "тахсас", + "тер", + "якатит", + "магабит", + "миазия", + "генбот", + "сэнэ", + "хамлэ", + "нахасэ" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "вс", + "пн", + "вт", + "ср", + "чт", + "пт", + "сб" + ], + "narrow": [ + "В", + "П", + "В", + "С", + "Ч", + "П", + "С" + ], + "short": [ + "вс", + "пн", + "вт", + "ср", + "чт", + "пт", + "сб" + ], + "wide": [ + "воскресенье", + "понедельник", + "вторник", + "среда", + "четверг", + "пятница", + "суббота" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "полд.", + "midnight": "полн." + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "полд.", + "midnight": "полн." + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "полдень", + "midnight": "полночь" + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "от воплощения Христа", + "incarnation": "до воплощения Христа" + }, + "abbr": { + "before-incar": "от Христа", + "incarnation": "до Христа" + }, + "narrow": { + "before-incar": "от Христа", + "incarnation": "до Христа" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/sr-Cyrl-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/sr-Cyrl-u-ca-ethiopic.json new file mode 100644 index 00000000000..8f016242bc7 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/sr-Cyrl-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Мескерем", + "Текемт", + "Хедар", + "Тахсас", + "Тер", + "Јекатит", + "Мегабит", + "Миазиа", + "Генбот", + "Сене", + "Хамле", + "Нехасе" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Мескерем", + "Текемт", + "Хедар", + "Тахсас", + "Тер", + "Јекатит", + "Мегабит", + "Миазиа", + "Генбот", + "Сене", + "Хамле", + "Нехасе" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "нед", + "пон", + "уто", + "сре", + "чет", + "пет", + "суб" + ], + "narrow": [ + "н", + "п", + "у", + "с", + "ч", + "п", + "с" + ], + "short": [ + "не", + "по", + "ут", + "ср", + "че", + "пе", + "су" + ], + "wide": [ + "недеља", + "понедељак", + "уторак", + "среда", + "четвртак", + "петак", + "субота" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "пре подне", + "pm": "по подне", + "noon": "подне", + "midnight": "поноћ" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/sr-Latn-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/sr-Latn-u-ca-ethiopic.json new file mode 100644 index 00000000000..6206faa5536 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/sr-Latn-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Jekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehase" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Jekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehase" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "ned", + "pon", + "uto", + "sre", + "čet", + "pet", + "sub" + ], + "narrow": [ + "n", + "p", + "u", + "s", + "č", + "p", + "s" + ], + "short": [ + "ne", + "po", + "ut", + "sr", + "če", + "pe", + "su" + ], + "wide": [ + "nedelja", + "ponedeljak", + "utorak", + "sreda", + "četvrtak", + "petak", + "subota" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "podne", + "midnight": "ponoć" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "podne", + "midnight": "ponoć" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "podne", + "midnight": "ponoć" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "pre podne", + "pm": "po podne", + "noon": "podne", + "midnight": "ponoć" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/sr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/sr-u-ca-ethiopic.json new file mode 100644 index 00000000000..8f016242bc7 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/sr-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Мескерем", + "Текемт", + "Хедар", + "Тахсас", + "Тер", + "Јекатит", + "Мегабит", + "Миазиа", + "Генбот", + "Сене", + "Хамле", + "Нехасе" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Мескерем", + "Текемт", + "Хедар", + "Тахсас", + "Тер", + "Јекатит", + "Мегабит", + "Миазиа", + "Генбот", + "Сене", + "Хамле", + "Нехасе" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "нед", + "пон", + "уто", + "сре", + "чет", + "пет", + "суб" + ], + "narrow": [ + "н", + "п", + "у", + "с", + "ч", + "п", + "с" + ], + "short": [ + "не", + "по", + "ут", + "ср", + "че", + "пе", + "су" + ], + "wide": [ + "недеља", + "понедељак", + "уторак", + "среда", + "четвртак", + "петак", + "субота" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": "подне", + "midnight": "поноћ" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "пре подне", + "pm": "по подне", + "noon": "подне", + "midnight": "поноћ" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/th-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/th-u-ca-ethiopic.json new file mode 100644 index 00000000000..0195e733309 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/th-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "เมสเคอเรม", + "เตเกมท", + "เฮดาร์", + "ทาฮ์ซัส", + "เทอร์", + "เยคาทิท", + "เมกาบิต", + "เมียเซีย", + "เจนบอต", + "เซเน", + "ฮัมเล", + "เนแฮซ" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "เมสเคอเรม", + "เตเกมท", + "เฮดาร์", + "ทาฮ์ซัส", + "เทอร์", + "เยคาทิท", + "เมกาบิต", + "เมียเซีย", + "เจนบอต", + "เซเน", + "ฮัมเล", + "เนแฮซ" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "อา.", + "จ.", + "อ.", + "พ.", + "พฤ.", + "ศ.", + "ส." + ], + "narrow": [ + "อา", + "จ", + "อ", + "พ", + "พฤ", + "ศ", + "ส" + ], + "short": [ + "อา.", + "จ.", + "อ.", + "พ.", + "พฤ.", + "ศ.", + "ส." + ], + "wide": [ + "วันอาทิตย์", + "วันจันทร์", + "วันอังคาร", + "วันพุธ", + "วันพฤหัสบดี", + "วันศุกร์", + "วันเสาร์" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "ก่อนเที่ยง", + "pm": "หลังเที่ยง", + "noon": "เที่ยง", + "midnight": "เที่ยงคืน" + }, + "narrow": { + "am": "a", + "pm": "p", + "noon": "เที่ยง", + "midnight": "เที่ยงคืน" + }, + "short": null, + "wide": { + "am": "ก่อนเที่ยง", + "pm": "หลังเที่ยง", + "noon": "เที่ยง", + "midnight": "เที่ยงคืน" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "ก่อนเที่ยง", + "pm": "หลังเที่ยง", + "noon": "เที่ยง", + "midnight": "เที่ยงคืน" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/tr-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/tr-u-ca-ethiopic.json new file mode 100644 index 00000000000..800501f3717 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/tr-u-ca-ethiopic.json @@ -0,0 +1,139 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tikimt", + "Hidar", + "Tahsas", + "Tir", + "Yakatit", + "Magabit", + "Miyazya", + "Ginbot", + "Sene", + "Hamle", + "Nehasa" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tikimt", + "Hidar", + "Tahsas", + "Tir", + "Yakatit", + "Magabit", + "Miyazya", + "Ginbot", + "Sene", + "Hamle", + "Nehasa" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Paz", + "Pzt", + "Sal", + "Çar", + "Per", + "Cum", + "Cmt" + ], + "narrow": [ + "P", + "P", + "S", + "Ç", + "P", + "C", + "C" + ], + "short": [ + "Pa", + "Pt", + "Sa", + "Ça", + "Pe", + "Cu", + "Ct" + ], + "wide": [ + "Pazar", + "Pazartesi", + "Salı", + "Çarşamba", + "Perşembe", + "Cuma", + "Cumartesi" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "ÖÖ", + "pm": "ÖS", + "noon": "öğle", + "midnight": "gece yarısı" + }, + "narrow": { + "am": "öö", + "pm": "ös", + "noon": "ö", + "midnight": "gece" + }, + "short": null, + "wide": { + "am": "ÖÖ", + "pm": "ÖS", + "noon": "öğle", + "midnight": "gece yarısı" + } + }, + "stand_alone": { + "abbreviated": null, + "narrow": { + "am": "ÖÖ", + "pm": "ÖS", + "noon": "öğle", + "midnight": "gece yarısı" + }, + "short": null, + "wide": null + } + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/json/datetime/symbols@1/und-u-ca-ethiopic.json b/provider/testdata/data/json/datetime/symbols@1/und-u-ca-ethiopic.json new file mode 100644 index 00000000000..a64edc7aff0 --- /dev/null +++ b/provider/testdata/data/json/datetime/symbols@1/und-u-ca-ethiopic.json @@ -0,0 +1,129 @@ +{ + "months": { + "format": { + "abbreviated": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ], + "narrow": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12" + ], + "short": null, + "wide": [ + "Meskerem", + "Tekemt", + "Hedar", + "Tahsas", + "Ter", + "Yekatit", + "Megabit", + "Miazia", + "Genbot", + "Sene", + "Hamle", + "Nehasse" + ] + }, + "stand_alone": null + }, + "weekdays": { + "format": { + "abbreviated": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "narrow": [ + "S", + "M", + "T", + "W", + "T", + "F", + "S" + ], + "short": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "wide": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ] + }, + "stand_alone": null + }, + "day_periods": { + "format": { + "abbreviated": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "narrow": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + }, + "short": null, + "wide": { + "am": "AM", + "pm": "PM", + "noon": null, + "midnight": null + } + }, + "stand_alone": null + }, + "eras": { + "names": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "abbr": { + "before-incar": "ERA1", + "incarnation": "ERA0" + }, + "narrow": { + "before-incar": "ERA1", + "incarnation": "ERA0" + } + } +} diff --git a/provider/testdata/data/testdata.postcard b/provider/testdata/data/testdata.postcard index 422e4db6cd5..8a8366def24 100644 Binary files a/provider/testdata/data/testdata.postcard and b/provider/testdata/data/testdata.postcard differ diff --git a/provider/testdata/src/bin/datagen.rs b/provider/testdata/src/bin/datagen.rs index 21ac7885769..7fec6587546 100644 --- a/provider/testdata/src/bin/datagen.rs +++ b/provider/testdata/src/bin/datagen.rs @@ -32,7 +32,7 @@ fn main() { )); let mod_out = icu_datagen::Out::Module { - mod_directory: paths::data_root().join("baked/src/data"), + mod_directory: paths::data_root().join("baked"), pretty: true, insert_feature_gates: false, }; diff --git a/provider/testdata/src/lib.rs b/provider/testdata/src/lib.rs index e574b583534..58b00ed4cb5 100644 --- a/provider/testdata/src/lib.rs +++ b/provider/testdata/src/lib.rs @@ -125,6 +125,12 @@ pub fn get_smaller_postcard_provider() -> icu_provider_blob::StaticDataProvider .unwrap() } +#[cfg(feature = "baked")] +mod baked { + #![allow(clippy::unwrap_used, clippy::exhaustive_structs)] + include!(concat!(env!("CARGO_MANIFEST_DIR"), "/data/baked/mod.rs")); +} + #[cfg(feature = "baked")] pub fn get_baked_provider() -> &'static baked::BakedDataProvider { baked::PROVIDER diff --git a/tools/scripts/tidy.toml b/tools/scripts/tidy.toml index f0463b76343..8dec293d96e 100644 --- a/tools/scripts/tidy.toml +++ b/tools/scripts/tidy.toml @@ -107,7 +107,7 @@ script = ''' exit_on_error true glob_pattern = set "./**/Cargo.toml" -skip_paths = set_new "provider/testdata/data/baked/Cargo.toml" "experimental/collator/fuzz/Cargo.toml" "experimental/normalizer/fuzz/Cargo.toml" +skip_paths = set_new "experimental/collator/fuzz/Cargo.toml" "experimental/normalizer/fuzz/Cargo.toml" template = canonicalize README.tpl