philiprehberger-locale_kit 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +6 -0
- data/lib/philiprehberger/locale_kit/version.rb +1 -1
- data/lib/philiprehberger/locale_kit.rb +12 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '059b92458d9232190df3b248892166ef4bd09fa20e782f5e3c61ee9d10fcf36c'
|
|
4
|
+
data.tar.gz: 28a2405801d7c58b5ecdacc2e66276c8f5ffa6020248e192955cc9a072a81d8c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e6829ac9bd5c0917f4231e127a7b572a75c4d77d9a99ec4ba77c9896cc92f5be019e7ec025f3ec879e51b74422daa7b6397ebfebfa78dfbcbc70f661fa67e38e
|
|
7
|
+
data.tar.gz: ddb0fb2a802997a63b61288f7054307a86bc2bdeeaa791185b0f7c068ac267d5f0931c1e6592469dceac801ef2dd42baf906f4a0b9fa38b0dc5e0f62b7d250b6
|
data/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.4.0] - 2026-04-24
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- `LocaleKit.language_name(code)` — look up the English name for an ISO 639-1 language code (case-insensitive); returns `nil` for unknown codes or non-String input
|
|
14
|
+
|
|
10
15
|
## [0.3.0] - 2026-04-15
|
|
11
16
|
|
|
12
17
|
### Added
|
data/README.md
CHANGED
|
@@ -91,6 +91,11 @@ Philiprehberger::LocaleKit.languages["ja"] #=> "Japanese"
|
|
|
91
91
|
|
|
92
92
|
Philiprehberger::LocaleKit.regions["US"] #=> "United States"
|
|
93
93
|
Philiprehberger::LocaleKit.regions["JP"] #=> "Japan"
|
|
94
|
+
|
|
95
|
+
# Single-lookup convenience (case-insensitive)
|
|
96
|
+
Philiprehberger::LocaleKit.language_name("en") #=> "English"
|
|
97
|
+
Philiprehberger::LocaleKit.language_name("FR") #=> "French"
|
|
98
|
+
Philiprehberger::LocaleKit.language_name("zz") #=> nil
|
|
94
99
|
```
|
|
95
100
|
|
|
96
101
|
### Language Compatibility
|
|
@@ -141,6 +146,7 @@ entries[0][:quality] #=> 1.0
|
|
|
141
146
|
| `.negotiate(requested, available, default: nil)` | Find the best matching locale with fallback chains |
|
|
142
147
|
| `.parse_accept_language(header)` | Parse an Accept-Language header into `[{locale:, quality:}]` |
|
|
143
148
|
| `.languages` | Hash of ISO 639-1 language codes to English names |
|
|
149
|
+
| `.language_name(code)` | English name for an ISO 639-1 code (case-insensitive); `nil` if unknown |
|
|
144
150
|
| `.regions` | Hash of ISO 3166-1 alpha-2 region codes to English names |
|
|
145
151
|
|
|
146
152
|
### `Philiprehberger::LocaleKit::Locale`
|
|
@@ -70,6 +70,18 @@ module Philiprehberger
|
|
|
70
70
|
Data::LANGUAGES
|
|
71
71
|
end
|
|
72
72
|
|
|
73
|
+
# Look up the English name for an ISO 639-1 language code.
|
|
74
|
+
#
|
|
75
|
+
# Case-insensitive. Returns `nil` for unknown codes or non-String input.
|
|
76
|
+
#
|
|
77
|
+
# @param code [String] a 2-letter ISO 639-1 code (e.g. "en", "EN")
|
|
78
|
+
# @return [String, nil] the English language name, or nil if unknown
|
|
79
|
+
def self.language_name(code)
|
|
80
|
+
return nil unless code.is_a?(String)
|
|
81
|
+
|
|
82
|
+
Data::LANGUAGES[code.downcase]
|
|
83
|
+
end
|
|
84
|
+
|
|
73
85
|
# Returns a hash of common ISO 3166-1 alpha-2 region codes to English names.
|
|
74
86
|
#
|
|
75
87
|
# @return [Hash<String, String>] region code to name mapping
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: philiprehberger-locale_kit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Philip Rehberger
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-04-
|
|
11
|
+
date: 2026-04-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: Parse BCP 47 language tags, negotiate content language from Accept-Language
|
|
14
14
|
headers, and match locales with fallback chains. Zero dependencies.
|