logo

etc_portage

Unnamed repository; edit this file 'description' to name the repository. git clone https://hacktivis.me/git/etc_portage.git

glibc-c-utf8-locale.patch (9102B)


  1. Short description: Add C.UTF-8 support.
  2. Author(s): Fedora glibc team <glibc@lists.fedoraproject.org>
  3. Origin: PATCH
  4. Upstream status: not-submitted
  5. This patch needs to upstream as part of Carlos O'Donell
  6. <carlos@redhat.com>'s work on enabling upstream C.UTF-8 support. This
  7. work is currently blocked on cleaning up the test results to prove that
  8. full code-point sorting is working as intended.
  9. Note that this patch does not provide full code-point sorting as
  10. expected.
  11. This patch needs to upstream as soon as possible since it would be nice
  12. to have this in F29 and fixed.
  13. From 2eda7b462b415105f5a05c1323372d4e39d46439 Mon Sep 17 00:00:00 2001
  14. From: Mike FABIAN <mfabian@redhat.com>
  15. Date: Mon, 10 Aug 2015 15:58:12 +0200
  16. Subject: [PATCH] Add a C.UTF-8 locale
  17. ---
  18. localedata/SUPPORTED | 1 +
  19. localedata/locales/C | 238 +++++++++++++++++++++++++++++++++++++++++++++++++++
  20. 2 files changed, 239 insertions(+)
  21. create mode 100644 localedata/locales/C
  22. diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
  23. index 8ca023e..2a78391 100644
  24. --- a/localedata/SUPPORTED
  25. +++ b/localedata/SUPPORTED
  26. @@ -1,6 +1,7 @@
  27. # This file names the currently supported and somewhat tested locales.
  28. # If you have any additions please file a glibc bug report.
  29. SUPPORTED-LOCALES=\
  30. +C.UTF-8/UTF-8 \
  31. aa_DJ.UTF-8/UTF-8 \
  32. aa_DJ/ISO-8859-1 \
  33. aa_ER/UTF-8 \
  34. diff --git a/localedata/locales/C b/localedata/locales/C
  35. new file mode 100644
  36. index 0000000..fdf460e
  37. --- /dev/null
  38. +++ b/localedata/locales/C
  39. @@ -0,0 +1,238 @@
  40. +escape_char /
  41. +comment_char %
  42. +% Locale for C locale in UTF-8
  43. +
  44. +LC_IDENTIFICATION
  45. +title "C locale"
  46. +source ""
  47. +address ""
  48. +contact ""
  49. +email "mfabian@redhat.com"
  50. +tel ""
  51. +fax ""
  52. +language "C"
  53. +territory ""
  54. +revision "1.0"
  55. +date "2015-08-10"
  56. +%
  57. +category "i18n:2012";LC_IDENTIFICATION
  58. +category "i18n:2012";LC_CTYPE
  59. +category "i18n:2012";LC_COLLATE
  60. +category "i18n:2012";LC_TIME
  61. +category "i18n:2012";LC_NUMERIC
  62. +category "i18n:2012";LC_MONETARY
  63. +category "i18n:2012";LC_MESSAGES
  64. +category "i18n:2012";LC_PAPER
  65. +category "i18n:2012";LC_NAME
  66. +category "i18n:2012";LC_ADDRESS
  67. +category "i18n:2012";LC_TELEPHONE
  68. +category "i18n:2012";LC_MEASUREMENT
  69. +END LC_IDENTIFICATION
  70. +
  71. +LC_CTYPE
  72. +copy "i18n"
  73. +
  74. +translit_start
  75. +include "translit_combining";""
  76. +translit_end
  77. +
  78. +END LC_CTYPE
  79. +
  80. +LC_COLLATE
  81. +order_start forward
  82. +<U0000>
  83. +..
  84. +<UFFFF>
  85. +<U10000>
  86. +..
  87. +<U1FFFF>
  88. +<U20000>
  89. +..
  90. +<U2FFFF>
  91. +<UE0000>
  92. +..
  93. +<UEFFFF>
  94. +<UF0000>
  95. +..
  96. +<UFFFFF>
  97. +<U100000>
  98. +..
  99. +<U10FFFF>
  100. +UNDEFINED
  101. +order_end
  102. +END LC_COLLATE
  103. +
  104. +LC_MONETARY
  105. +% This is the 14652 i18n fdcc-set definition for
  106. +% the LC_MONETARY category
  107. +% (except for the int_curr_symbol and currency_symbol, they are empty in
  108. +% the 14652 i18n fdcc-set definition and also empty in
  109. +% glibc/locale/C-monetary.c. But localedef complains in that case).
  110. +%
  111. +% Using "USD" for int_curr_symbol. But maybe "XXX" would be better?
  112. +% XXX is "No currency" (https://en.wikipedia.org/wiki/ISO_4217)
  113. +int_curr_symbol "<U0055><U0053><U0044><U0020>"
  114. +% Using "$" for currency_symbol. But maybe <U00A4> would be better?
  115. +% U+00A4 is the "generic currency symbol"
  116. +% (https://en.wikipedia.org/wiki/Currency_sign_%28typography%29)
  117. +currency_symbol "<U0024>"
  118. +mon_decimal_point "<U002E>"
  119. +mon_thousands_sep ""
  120. +mon_grouping -1
  121. +positive_sign ""
  122. +negative_sign "<U002D>"
  123. +int_frac_digits -1
  124. +frac_digits -1
  125. +p_cs_precedes -1
  126. +int_p_sep_by_space -1
  127. +p_sep_by_space -1
  128. +n_cs_precedes -1
  129. +int_n_sep_by_space -1
  130. +n_sep_by_space -1
  131. +p_sign_posn -1
  132. +n_sign_posn -1
  133. +%
  134. +END LC_MONETARY
  135. +
  136. +LC_NUMERIC
  137. +% This is the POSIX Locale definition for
  138. +% the LC_NUMERIC category.
  139. +%
  140. +decimal_point "<U002E>"
  141. +thousands_sep ""
  142. +grouping -1
  143. +END LC_NUMERIC
  144. +
  145. +LC_TIME
  146. +% This is the POSIX Locale definition for
  147. +% the LC_TIME category.
  148. +%
  149. +% Abbreviated weekday names (%a)
  150. +abday "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/
  151. + "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/
  152. + "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/
  153. + "<U0053><U0061><U0074>"
  154. +
  155. +% Full weekday names (%A)
  156. +day "<U0053><U0075><U006E><U0064><U0061><U0079>";/
  157. + "<U004D><U006F><U006E><U0064><U0061><U0079>";/
  158. + "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/
  159. + "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/
  160. + "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/
  161. + "<U0046><U0072><U0069><U0064><U0061><U0079>";/
  162. + "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>"
  163. +
  164. +% Abbreviated month names (%b)
  165. +abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/
  166. + "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
  167. + "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/
  168. + "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
  169. + "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/
  170. + "<U004E><U006F><U0076>";"<U0044><U0065><U0063>"
  171. +
  172. +% Full month names (%B)
  173. +mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/
  174. + "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/
  175. + "<U004D><U0061><U0072><U0063><U0068>";/
  176. + "<U0041><U0070><U0072><U0069><U006C>";/
  177. + "<U004D><U0061><U0079>";/
  178. + "<U004A><U0075><U006E><U0065>";/
  179. + "<U004A><U0075><U006C><U0079>";/
  180. + "<U0041><U0075><U0067><U0075><U0073><U0074>";/
  181. + "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
  182. + "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/
  183. + "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
  184. + "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>"
  185. +
  186. +% Week description, consists of three fields:
  187. +% 1. Number of days in a week.
  188. +% 2. Gregorian date that is a first weekday (19971130 for Sunday, 19971201 for Monday).
  189. +% 3. The weekday number to be contained in the first week of the year.
  190. +%
  191. +% ISO 8601 conforming applications should use the values 7, 19971201 (a
  192. +% Monday), and 4 (Thursday), respectively.
  193. +week 7;19971201;4
  194. +first_weekday 1
  195. +first_workday 1
  196. +
  197. +% Appropriate date and time representation (%c)
  198. +% "%a %b %e %H:%M:%S %Y"
  199. +d_t_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0059>"
  200. +
  201. +% Appropriate date representation (%x)
  202. +% "%m/%d/%y"
  203. +d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0079>"
  204. +
  205. +% Appropriate time representation (%X)
  206. +% "%H:%M:%S"
  207. +t_fmt "<U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053>"
  208. +
  209. +% Appropriate AM/PM time representation (%r)
  210. +% "%I:%M:%S %p"
  211. +t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
  212. +
  213. +% Equivalent of AM/PM (%p) "AM"/"PM"
  214. +%
  215. +am_pm "<U0041><U004D>";"<U0050><U004D>"
  216. +
  217. +% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y"
  218. +date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
  219. +END LC_TIME
  220. +
  221. +LC_MESSAGES
  222. +% This is the POSIX Locale definition for
  223. +% the LC_NUMERIC category.
  224. +%
  225. +yesexpr "<U005E><U005B><U0079><U0059><U005D>"
  226. +noexpr "<U005E><U005B><U006E><U004E><U005D>"
  227. +yesstr "<U0059><U0065><U0073>"
  228. +nostr "<U004E><U006F>"
  229. +END LC_MESSAGES
  230. +
  231. +LC_PAPER
  232. +% This is the ISO/IEC 14652 "i18n" definition for
  233. +% the LC_PAPER category.
  234. +% (A4 paper, this is also used in the built in C/POSIX
  235. +% locale in glibc/locale/C-paper.c)
  236. +height 297
  237. +width 210
  238. +END LC_PAPER
  239. +
  240. +LC_NAME
  241. +% This is the ISO/IEC 14652 "i18n" definition for
  242. +% the LC_NAME category.
  243. +% "%p%t%g%t%m%t%f"
  244. +% (also used in the built in C/POSIX locale in glibc/locale/C-name.c)
  245. +name_fmt "<U0025><U0070><U0025><U0074><U0025><U0067><U0025><U0074>/
  246. +<U0025><U006D><U0025><U0074><U0025><U0066>"
  247. +END LC_NAME
  248. +
  249. +LC_ADDRESS
  250. +% This is the ISO/IEC 14652 "i18n" definition for
  251. +% the LC_ADDRESS category.
  252. +% "%a%N%f%N%d%N%b%N%s %h %e %r%N%C-%z %T%N%c%N"
  253. +% (also used in the built in C/POSIX locale in glibc/locale/C-address.c)
  254. +postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
  255. +<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
  256. +<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
  257. +<U004E><U0025><U0043><U002D><U0025><U007A><U0020><U0025><U0054><U0025>/
  258. +<U004E><U0025><U0063><U0025><U004E>"
  259. +END LC_ADDRESS
  260. +
  261. +LC_TELEPHONE
  262. +% This is the ISO/IEC 14652 "i18n" definition for
  263. +% the LC_TELEPHONE category.
  264. +% "+%c %a %l"
  265. +tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
  266. +<U006C>"
  267. +% (also used in the built in C/POSIX locale in glibc/locale/C-telephone.c)
  268. +END LC_TELEPHONE
  269. +
  270. +LC_MEASUREMENT
  271. +% This is the ISO/IEC 14652 "i18n" definition for
  272. +% the LC_MEASUREMENT category.
  273. +% (same as in the built in C/POSIX locale in glibc/locale/C-measurement.c)
  274. +%metric
  275. +measurement 1
  276. +END LC_MEASUREMENT
  277. +
  278. --
  279. 2.4.3