|
|
d3eb3f4 |
From 3441d6b8ca010f7153d2b13680409ab571b9d3a1 Mon Sep 17 00:00:00 2001
|
|
|
d3eb3f4 |
From: Michal Schmidt <mschmidt@redhat.com>
|
|
|
d3eb3f4 |
Date: Mon, 22 Jun 2020 00:49:58 +0200
|
|
|
d3eb3f4 |
Subject: [PATCH] factory: replace ':' with '_' in profile names
|
|
|
d3eb3f4 |
|
|
|
d3eb3f4 |
---
|
|
|
d3eb3f4 |
precis_i18n/factory.py | 27 ++++++++++++++-------------
|
|
|
d3eb3f4 |
1 file changed, 14 insertions(+), 13 deletions(-)
|
|
|
d3eb3f4 |
|
|
|
d3eb3f4 |
diff --git a/precis_i18n/factory.py b/precis_i18n/factory.py
|
|
|
d3eb3f4 |
index 0b01568..afa1c67 100644
|
|
|
d3eb3f4 |
--- a/precis_i18n/factory.py
|
|
|
d3eb3f4 |
+++ b/precis_i18n/factory.py
|
|
|
d3eb3f4 |
@@ -1,5 +1,6 @@
|
|
|
d3eb3f4 |
"""Implements the `get_profile` factory function used to create profiles."""
|
|
|
d3eb3f4 |
|
|
|
d3eb3f4 |
+import encodings
|
|
|
d3eb3f4 |
import precis_i18n.baseclass as _base
|
|
|
d3eb3f4 |
import precis_i18n.profile as _profile
|
|
|
d3eb3f4 |
import precis_i18n.unicode as _unicode
|
|
|
d3eb3f4 |
@@ -21,13 +22,13 @@ _PROFILES = {
|
|
|
d3eb3f4 |
_factory(_profile.Username, name='UsernameCasePreserved'),
|
|
|
d3eb3f4 |
'usernamecasemapped':
|
|
|
d3eb3f4 |
_factory(_profile.Username, name='UsernameCaseMapped', casemap='lower'),
|
|
|
d3eb3f4 |
- 'usernamecasemapped:casefold':
|
|
|
d3eb3f4 |
+ 'usernamecasemapped_casefold':
|
|
|
d3eb3f4 |
_factory(_profile.Username,
|
|
|
d3eb3f4 |
- name='UsernameCaseMapped:CaseFold',
|
|
|
d3eb3f4 |
+ name='UsernameCaseMapped_CaseFold',
|
|
|
d3eb3f4 |
casemap='fold'),
|
|
|
d3eb3f4 |
- 'usernamecasemapped:tolower':
|
|
|
d3eb3f4 |
+ 'usernamecasemapped_tolower':
|
|
|
d3eb3f4 |
_factory(_profile.Username,
|
|
|
d3eb3f4 |
- name='UsernameCaseMapped:ToLower',
|
|
|
d3eb3f4 |
+ name='UsernameCaseMapped_ToLower',
|
|
|
d3eb3f4 |
casemap='lower'),
|
|
|
d3eb3f4 |
'opaquestring':
|
|
|
d3eb3f4 |
_factory(_profile.OpaqueString, name='OpaqueString'),
|
|
|
d3eb3f4 |
@@ -35,13 +36,13 @@ _PROFILES = {
|
|
|
d3eb3f4 |
_factory(_profile.Nickname, name='NicknameCasePreserved'),
|
|
|
d3eb3f4 |
'nicknamecasemapped':
|
|
|
d3eb3f4 |
_factory(_profile.Nickname, name='NicknameCaseMapped', casemap='lower'),
|
|
|
d3eb3f4 |
- 'nicknamecasemapped:casefold':
|
|
|
d3eb3f4 |
+ 'nicknamecasemapped_casefold':
|
|
|
d3eb3f4 |
_factory(_profile.Nickname,
|
|
|
d3eb3f4 |
- name='NicknameCaseMapped:CaseFold',
|
|
|
d3eb3f4 |
+ name='NicknameCaseMapped_CaseFold',
|
|
|
d3eb3f4 |
casemap='fold'),
|
|
|
d3eb3f4 |
- 'nicknamecasemapped:tolower':
|
|
|
d3eb3f4 |
+ 'nicknamecasemapped_tolower':
|
|
|
d3eb3f4 |
_factory(_profile.Nickname,
|
|
|
d3eb3f4 |
- name='NicknameCaseMapped:ToLower',
|
|
|
d3eb3f4 |
+ name='NicknameCaseMapped_ToLower',
|
|
|
d3eb3f4 |
casemap='lower'),
|
|
|
d3eb3f4 |
|
|
|
d3eb3f4 |
# Alias for backward-compatibility with previous version of codec.
|
|
|
d3eb3f4 |
@@ -58,13 +59,13 @@ def get_profile(name, *, unicodedata=None):
|
|
|
d3eb3f4 |
"FreeFormClass"
|
|
|
d3eb3f4 |
"UsernameCasePreserved"
|
|
|
d3eb3f4 |
"UsernameCaseMapped"
|
|
|
d3eb3f4 |
- "UsernameCaseMapped:CaseFold"
|
|
|
d3eb3f4 |
- "UsernameCaseMapped:ToLower"
|
|
|
d3eb3f4 |
+ "UsernameCaseMapped_CaseFold"
|
|
|
d3eb3f4 |
+ "UsernameCaseMapped_ToLower"
|
|
|
d3eb3f4 |
"OpaqueString"
|
|
|
d3eb3f4 |
"NicknameCasePreserved"
|
|
|
d3eb3f4 |
"NicknameCaseMapped"
|
|
|
d3eb3f4 |
- "NicknameCaseMapped:CaseFold"
|
|
|
d3eb3f4 |
- "NicknameCaseMapped:ToLower"
|
|
|
d3eb3f4 |
+ "NicknameCaseMapped_CaseFold"
|
|
|
d3eb3f4 |
+ "NicknameCaseMapped_ToLower"
|
|
|
d3eb3f4 |
"Nickname" (alias for "NicknameCaseMapped")
|
|
|
d3eb3f4 |
|
|
|
d3eb3f4 |
This function constructs a new profile each time; there is no cache.
|
|
|
d3eb3f4 |
@@ -83,4 +84,4 @@ def get_profile(name, *, unicodedata=None):
|
|
|
d3eb3f4 |
Raises:
|
|
|
d3eb3f4 |
KeyError: Profile not found.
|
|
|
d3eb3f4 |
"""
|
|
|
d3eb3f4 |
- return _PROFILES[name.lower()](_unicode.UnicodeData(unicodedata))
|
|
|
d3eb3f4 |
+ return _PROFILES[encodings.normalize_encoding(name.lower())](_unicode.UnicodeData(unicodedata))
|
|
|
d3eb3f4 |
--
|
|
|
d3eb3f4 |
2.26.2
|
|
|
d3eb3f4 |
|