mod: +приоритет языков и кавычки
This commit is contained in:
@@ -13,7 +13,7 @@ LANG_RU = 'ru' # Русский
|
||||
LANG_RU_OLD = 'ruold' # Русская дореволюционная орфография
|
||||
LANG_EN = 'en' # Английский
|
||||
SUPPORTED_LANGS = frozenset([LANG_RU, LANG_RU_OLD, LANG_EN])
|
||||
|
||||
DEFAULT_LANGS = (LANG_RU, LANG_EN) # Языки по умолчанию
|
||||
|
||||
# === ИСТОЧНИК ПРАВДЫ ===
|
||||
# --- Базовые алфавиты: Эти константы используются как для правил переноса, так и для правил кодирования ---
|
||||
@@ -37,6 +37,14 @@ EN_ALPHABET_FULL = EN_ALPHABET_UPPER | EN_ALPHABET_LOWER
|
||||
# --- Специальные символы ---
|
||||
NBSP_CHAR = '\u00A0' # Неразрывный пробел ( )
|
||||
SHY_CHAR = '\u00AD' # Мягкий перенос (­)
|
||||
RU_QUOT1_OPEN = '«'
|
||||
RU_QUOT1_CLOSE = '»'
|
||||
RU_QUOT2_OPEN = '„'
|
||||
RU_QUOT2_CLOSE = '“'
|
||||
EN_QUOT1_OPEN = '“'
|
||||
EN_QUOT1_CLOSE = '”'
|
||||
EN_QUOT2_OPEN = '‘'
|
||||
EN_QUOT2_CLOSE = '’'
|
||||
|
||||
# === КОНСТАНТЫ ДЛЯ КОДИРОВАНИЯ HTML-МНЕМНОИКОВ ===
|
||||
# --- ЧЕРНЫЙ СПИСОК: Символы, которые НИКОГДА не нужно кодировать в мнемоники ---
|
||||
@@ -49,20 +57,20 @@ NEVER_ENCODE_CHARS = (frozenset(['!', '#', '%', '(', ')', '*', ',', '.', '/', ':
|
||||
# которые не видны, на глаз и не отличимы друг от друга в обычном тексте, или очень специфичные
|
||||
SAFE_MODE_CHARS_TO_MNEMONIC = frozenset([
|
||||
'<', '>', '&', '"', '\'',
|
||||
'\u00AD', # Мягкий перенос (Soft Hyphen) -- ­
|
||||
'\u00A0', # Неразрывный пробел (Non-Breaking Space) --
|
||||
SHY_CHAR, # Мягкий перенос (Soft Hyphen) -- ­
|
||||
NBSP_CHAR, # Неразрывный пробел (Non-Breaking Space) --
|
||||
'\u2002', # Полужирный пробел (En Space) --  
|
||||
'\u2003', # Широкий пробел (Em Space) --  
|
||||
'\u2007', # Цифровой пробел --  )
|
||||
'\u2007', # Цифровой пробел --  
|
||||
'\u2008', # Пунктуационный пробел --  
|
||||
'\u2009', # Междусимвольный пробел --  '
|
||||
'\u2009', # Межсимвольный пробел --  '
|
||||
'\u200A', # Толщина волоса (Hair Space) --  
|
||||
'\u200B', # Негативный пробел (Negative Space) -- ​
|
||||
'\u200C', # Нулевая ширина (без объединения) (Zero Width Non-Joiner) -- ‍
|
||||
'\u200D', # Нулевая ширина (с объединением) (Zero Width Joiner) -- ‌
|
||||
'\u200E', # Изменить направление текста на слева-направо (Left-to-Right Mark /LRE) -- ‎
|
||||
'\u200F', # Изменить направление текста направо-налево (Right-to-Left Mark /RLM) -- ‏
|
||||
'\u2010', # ‐ -- дефис (Hyphen)
|
||||
'\u2010', # Дефис (Hyphen) -- ‐
|
||||
'\u205F', # Средний пробел (Medium Mathematical Space) --  
|
||||
'\u2060', # ⁠
|
||||
'\u2062', # ⁢ -- для семантической разметки математических выражений
|
||||
@@ -102,14 +110,14 @@ CUSTOM_ENCODE_MAP = {
|
||||
# '\u007d': '}', # } / } / }
|
||||
# '\u007c': '|', # | / | / | / |
|
||||
# '\u0026': '&', # & / & / &
|
||||
# '\u00A0': ' ', # / /  
|
||||
# NBSP_CHAR: ' ', # / /  
|
||||
'\u0022': '"', # " / " / "
|
||||
'\u0026': '&', # & / & / &
|
||||
'\u003e': '>', # > / > / >
|
||||
'\u003c': '<', # < / < / <
|
||||
'\u00ae': '®', # ® / ® / ® / ®
|
||||
'\u00b7': '·', # · / · / · / ·
|
||||
'\u0060': '`', # ` / grave / DiacriticalGrave
|
||||
'\u0060': '`', # ` / ` / `
|
||||
'\u00a8': '¨', # ¨ / ¨ / ¨ / ¨ / ¨
|
||||
'\u00b1': '±', # ± / ± / ±
|
||||
'\u00bd': '½', # ½ / ½ / ½
|
||||
|
Reference in New Issue
Block a user