Created
February 4, 2022 17:44
-
-
Save mwgamera/0e9c0fa435cc36d0a6e9f06dc53fd058 to your computer and use it in GitHub Desktop.
ICU 𐑑𐑱𐑤𐑼𐑦𐑙 𐑮𐑵𐑤𐑟 𐑑 𐑓𐑦𐑒𐑕 𐑞 𐑚𐑮𐑴𐑒𐑩𐑯 ·𐑿𐑯𐑦𐑒𐑴𐑛 𐑒𐑩𐑤𐑱𐑖𐑩𐑯 𐑨𐑤𐑜𐑼𐑦𐑞𐑩𐑥 𐑓 𐑖𐑱𐑝𐑾𐑯
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# 𐑖𐑱𐑝𐑾𐑯 𐑦𐑟 𐑷𐑮𐑛𐑩𐑮𐑛 𐑮𐑪𐑙 𐑦𐑯 UCA, 𐑤𐑧𐑑𐑕 𐑓𐑦𐑒𐑕 𐑦𐑑 | |
# klg, 𐑡𐑨𐑯 2022 | |
""" | |
𐑞 𐑕𐑑𐑨𐑯𐑛𐑼𐑛 𐑨𐑤𐑓𐑩𐑚𐑧𐑑𐑦𐑒 𐑹𐑛𐑼 𐑝 𐑖𐑱𐑝𐑾𐑯 𐑨𐑟 𐑜𐑦𐑝𐑩𐑯 | |
𐑨𐑑 𐑞 𐑧𐑯𐑛 𐑝 ‹𐑖𐑷-𐑕𐑒𐑮𐑦𐑐𐑑› 𐑯𐑳𐑥𐑚𐑼 8 𐑦𐑟: | |
𐑐 𐑚 𐑑 𐑛 𐑒 𐑜 𐑓 𐑝 𐑔 𐑞 𐑕 𐑟 𐑖 𐑠 𐑗 𐑡 𐑘 𐑢 𐑙 𐑣 | |
𐑤 𐑮 𐑥 𐑯 𐑦 𐑰 𐑧 𐑱 𐑨 𐑲 𐑩 𐑳 𐑪 𐑴 𐑫 𐑵 𐑬 𐑶 𐑭 𐑷 | |
𐑺† 𐑻† 𐑾 | |
†𐑯𐑴𐑑: 𐑤𐑧𐑑𐑼𐑟 ·𐑺 𐑯 ·𐑻𐑡 𐑸 𐑯𐑪𐑑 𐑦𐑯 ·𐑿𐑯𐑦𐑒𐑴𐑛 | |
𐑨𐑟 𐑞𐑱 𐑸 𐑷𐑤𐑢𐑱𐑟 𐑓𐑪𐑤𐑴𐑛 𐑚𐑲 ‹𐑮› 𐑯 𐑤𐑦𐑜𐑱𐑑𐑩𐑛 | |
𐑯 𐑴𐑯𐑤𐑦 𐑞 𐑤𐑦𐑜𐑩𐑗𐑼𐑟 𐑸 𐑦𐑯𐑒𐑴𐑛𐑩𐑛. | |
𐑯𐑴𐑑 𐑷𐑤𐑕𐑴 𐑞𐑨𐑑 ‹𐑾› 𐑦𐑟 𐑯𐑪𐑑 𐑿𐑟𐑛 𐑤𐑲𐑒 𐑩 𐑕𐑰𐑒𐑢𐑩𐑯𐑕 | |
‹𐑦𐑩› 𐑚𐑳𐑑 𐑦𐑑 𐑦𐑝𐑪𐑤𐑝𐑛 𐑑 𐑚𐑰 𐑩 𐑕𐑑𐑨𐑯𐑛-𐑩𐑤𐑴𐑯 𐑤𐑧𐑑𐑼. | |
𐑐𐑻𐑕𐑩𐑯𐑩𐑤𐑦 𐑲 𐑢𐑫𐑛 𐑐𐑮𐑦𐑓𐑻 𐑑 𐑐𐑫𐑑 𐑦𐑑 𐑚𐑦𐑑𐑢𐑰𐑯 ‹𐑦› 𐑯 | |
‹𐑰›, 𐑚𐑳𐑑 𐑦𐑑 𐑦𐑟 𐑕𐑹𐑑𐑩𐑛 𐑨𐑑 𐑞 𐑧𐑯𐑛 𐑝 𐑞 𐑨𐑤𐑓𐑩𐑚𐑧𐑑. | |
""" | |
import icu | |
from random import shuffle as 𐑖𐑳𐑓𐑩𐑤 | |
from difflib import Differ as 𐑛𐑦𐑓𐑩𐑮 | |
𐑮𐑵𐑤𐑟 = """ | |
# 𐑚𐑱𐑕𐑦𐑒 𐑨𐑤𐑓𐑩𐑚𐑧𐑑𐑦𐑒 𐑹𐑛𐑼 | |
& 𐑐 <* 𐑚𐑑𐑛𐑒𐑜𐑓𐑝𐑔𐑞𐑕𐑟𐑖𐑠𐑗𐑡𐑘𐑢𐑙𐑣 | |
<* 𐑤𐑮𐑥𐑯𐑦𐑰𐑧𐑱𐑨𐑲𐑩𐑳𐑪𐑴𐑫𐑵𐑬𐑶𐑭𐑷𐑺𐑻𐑾 | |
& 𐑭𐑮 << 𐑸 | |
& 𐑷𐑮 << 𐑹 | |
& 𐑩𐑮 << 𐑼 | |
& 𐑾𐑮 << 𐑽 | |
& 𐑘𐑵 << 𐑿 | |
# 𐑐𐑳𐑙𐑒𐑗𐑫𐑱𐑖𐑩𐑯: 𐑮𐑦𐑙 𐑚𐑦𐑓𐑹 𐑛𐑪𐑑 𐑢𐑧𐑯 𐑚𐑮𐑱𐑒𐑦𐑙 𐑑𐑲𐑟 | |
[alternate shifted][strength 4] | |
& ⸰ = ○ <<< · | |
# 𐑦𐑯 𐑖𐑱𐑝𐑾𐑯 𐑤𐑴𐑒𐑭𐑤, 𐑐𐑫𐑑 𐑖𐑱𐑝𐑾𐑯 𐑓𐑻𐑕𐑑 | |
[reorder Shaw Latn] | |
""" | |
𐑒𐑩𐑤𐑱𐑑𐑩𐑮 = icu.RuleBasedCollator(𐑮𐑵𐑤𐑟) | |
def 𐑖𐑱𐑝𐑾𐑯_𐑕𐑷𐑮𐑑(𐑩𐑮𐑱): | |
𐑩𐑮𐑱 = 𐑩𐑮𐑱.copy() | |
𐑩𐑮𐑱.sort(key=𐑒𐑩𐑤𐑱𐑑𐑩𐑮.getSortKey) | |
return 𐑩𐑮𐑱 | |
def 𐑤𐑴𐑛_𐑑𐑧𐑕𐑑𐑕(𐑓𐑲𐑤='test.txt'): | |
𐑛𐑱𐑑𐑩, 𐑯𐑱𐑥 = [], None | |
with open(𐑓𐑲𐑤, 'r') as 𐑓: | |
for 𐑤𐑲𐑯 in 𐑓.readlines(): | |
if 𐑤𐑲𐑯[0:2] == '%%': | |
if len(𐑛𐑱𐑑𐑩): | |
yield 𐑛𐑱𐑑𐑩, 𐑯𐑱𐑥 | |
𐑯𐑱𐑥 = 𐑤𐑲𐑯[2:].strip() | |
𐑛𐑱𐑑𐑩 = [] | |
else: | |
if '#' in 𐑤𐑲𐑯: | |
𐑤𐑲𐑯 = 𐑤𐑲𐑯[:𐑤𐑲𐑯.index('#')] | |
𐑤𐑲𐑯 = 𐑤𐑲𐑯.strip() | |
if len(𐑤𐑲𐑯): | |
𐑛𐑱𐑑𐑩.append(𐑤𐑲𐑯) | |
if len(𐑛𐑱𐑑𐑩): | |
yield 𐑛𐑱𐑑𐑩, 𐑯𐑱𐑥 | |
def 𐑥𐑒𐑛𐑦𐑓(𐑚, 𐑑): | |
if 𐑚 == 𐑑: | |
return False | |
𐑛𐑦𐑓 = list(𐑛𐑦𐑓𐑩𐑮().compare(𐑚, 𐑑)) | |
𐑢𐑦𐑛𐑞 = max(map(len, 𐑛𐑦𐑓)) | |
𐑢𐑦𐑛𐑞 = (𐑢𐑦𐑛𐑞 + 4) // 5 * -5 | |
𐑬𐑑 = [] | |
for 𐑧𐑯𐑑 in 𐑛𐑦𐑓: | |
if '- ' == 𐑧𐑯𐑑[0:2]: | |
𐑬𐑑.append('# [%3u] %*s <' % ( | |
𐑚.index(𐑧𐑯𐑑[2:]), 𐑢𐑦𐑛𐑞, 𐑧𐑯𐑑[2:])) | |
elif '+ ' == 𐑧𐑯𐑑[0:2]: | |
𐑬𐑑.append('# %*s > [%3u] %s' % ( | |
𐑢𐑦𐑛𐑞, '', | |
𐑚.index(𐑧𐑯𐑑[2:]), 𐑧𐑯𐑑[2:])) | |
elif ' ' == 𐑧𐑯𐑑[0:2]: | |
𐑬𐑑.append('# [%3u] %*s [%3u] %s' % ( | |
𐑚.index(𐑧𐑯𐑑[2:]), 𐑢𐑦𐑛𐑞, 𐑧𐑯𐑑[2:], | |
𐑚.index(𐑧𐑯𐑑[2:]), 𐑧𐑯𐑑[2:])) | |
return '\n'.join(𐑬𐑑) | |
for 𐑧, (𐑛𐑱𐑑𐑩, 𐑯𐑱𐑥) in enumerate(𐑤𐑴𐑛_𐑑𐑧𐑕𐑑𐑕()): | |
try: | |
𐑨 = 𐑛𐑱𐑑𐑩.copy() | |
for 𐑩 in range(5): | |
𐑨 = 𐑛𐑱𐑑𐑩.copy() | |
𐑖𐑳𐑓𐑩𐑤(𐑨) | |
𐑨 = 𐑖𐑱𐑝𐑾𐑯_𐑕𐑷𐑮𐑑(𐑨) | |
𐑛 = 𐑥𐑒𐑛𐑦𐑓(𐑛𐑱𐑑𐑩, 𐑨) | |
if 𐑛: | |
print('not ok %u - %s' % (𐑧+1, 𐑯𐑱𐑥)) | |
print(𐑛) | |
break | |
else: | |
print('ok %u - %s' % (𐑧+1, 𐑯𐑱𐑥)) | |
except Exception as 𐑰: | |
print('not ok %u - %s - %s' % (𐑧+1, 𐑯𐑱𐑥, 𐑰)) | |
else: | |
print('1..%u' % (𐑧+1)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 𐑰𐑗 𐑝 𐑞 %%-𐑛𐑦𐑤𐑦𐑥𐑦𐑑𐑩𐑛 𐑕𐑧𐑒𐑖𐑩𐑯𐑟 𐑒𐑩𐑯𐑑𐑱𐑯𐑟 𐑤𐑲𐑯𐑟 𐑦𐑯 𐑩 𐑒𐑼𐑧𐑒𐑑 𐑕𐑹𐑑𐑩𐑛 𐑹𐑛𐑼 | |
# 𐑤𐑲𐑯𐑟 𐑕𐑑𐑸𐑑𐑦𐑙 𐑢𐑦𐑞 # 𐑸 𐑒𐑪𐑥𐑧𐑯𐑑𐑕. | |
%% 𐑚𐑱𐑕𐑦𐑒 𐑤𐑧𐑑𐑼 𐑹𐑛𐑼 | |
𐑐𐑨𐑮𐑦𐑕 | |
𐑚𐑦𐑢𐑺 | |
𐑚𐑦𐑙𐑜𐑴 | |
𐑑𐑨𐑙𐑜𐑴 | |
𐑛𐑧𐑤𐑑𐑩 | |
𐑒𐑰𐑤𐑴 | |
𐑜𐑪𐑤𐑓 | |
𐑓𐑪𐑒𐑕 | |
𐑝𐑦𐑒𐑑𐑼𐑦 | |
𐑔𐑹𐑯 | |
𐑞𐑰𐑟 | |
𐑕𐑦𐑺𐑩 | |
𐑟𐑽𐑴 | |
𐑖𐑷 | |
𐑠𐑪𐑯𐑛𐑸𐑥 | |
𐑗𐑸𐑤𐑦 | |
𐑡𐑵𐑤𐑦𐑧𐑑 | |
𐑘𐑳𐑙 | |
𐑢𐑷𐑑𐑼 | |
𐑣𐑴𐑑𐑧𐑤 | |
𐑤𐑰𐑥𐑩 | |
𐑮𐑦𐑙 | |
𐑮𐑦𐑣𐑻𐑕 | |
𐑥𐑲𐑒 | |
𐑯𐑴𐑝𐑧𐑥𐑚𐑼 | |
𐑦𐑯𐑛𐑾 | |
𐑰𐑟𐑦 | |
𐑧𐑒𐑴 | |
𐑱𐑐𐑮𐑩𐑤 | |
𐑨𐑤𐑓𐑩 | |
𐑲𐑩𐑢𐑩 | |
𐑩𐑜𐑴 | |
𐑳𐑞𐑼 | |
𐑪𐑒𐑑𐑴𐑚𐑼 | |
𐑴𐑤𐑛 | |
𐑫𐑥𐑓 | |
𐑵𐑟 | |
𐑬𐑼 | |
𐑶𐑤 | |
𐑭𐑥𐑩𐑯𐑛 | |
𐑷𐑜𐑩𐑕𐑑 | |
𐑺 | |
𐑻𐑡 | |
𐑾𐑯 | |
%% 𐑒𐑪𐑥𐑐𐑬𐑯𐑛𐑟: 𐑸 → 𐑭𐑮 | |
𐑚𐑭𐑔 | |
𐑚𐑭𐑮𐑯 | |
𐑚𐑸𐑯 | |
𐑚𐑭𐑥 | |
𐑒𐑭𐑤𐑦 | |
𐑒𐑸 | |
%% 𐑒𐑪𐑥𐑐𐑬𐑯𐑛𐑟: 𐑹 → 𐑷𐑮 | |
𐑓𐑷𐑤𐑑 | |
𐑓𐑷𐑮𐑕 | |
𐑓𐑹𐑕 | |
𐑓𐑷𐑯 | |
𐑕𐑹𐑛 | |
𐑕𐑷𐑥𐑦𐑤 | |
%% 𐑒𐑪𐑥𐑐𐑬𐑯𐑛𐑟: 𐑼 → 𐑩𐑮 | |
𐑐𐑦𐑒𐑩𐑤 | |
𐑐𐑦𐑒𐑩𐑮 | |
𐑐𐑦𐑒𐑼 | |
𐑓𐑽𐑕𐑩𐑕𐑑 | |
𐑓𐑽𐑕𐑼 | |
𐑓𐑽𐑕𐑩𐑥 | |
%% 𐑒𐑪𐑥𐑐𐑬𐑯𐑛𐑟: 𐑽 → 𐑾𐑮 | |
𐑤𐑻𐑯 | |
𐑤𐑽 | |
𐑤𐑾𐑮𐑩 | |
𐑤𐑽𐑩 | |
𐑤𐑾𐑥 | |
𐑮𐑾𐑤 | |
𐑮𐑽 | |
%% 𐑒𐑪𐑥𐑐𐑬𐑯𐑛𐑟: 𐑿 → 𐑘𐑵 | |
𐑒𐑘𐑫𐑼 | |
𐑒𐑿 | |
𐑘𐑳𐑙 | |
𐑘𐑵 | |
𐑿 | |
𐑘𐑬𐑤 | |
%% 𐑯𐑱𐑥𐑼 𐑛𐑪𐑑 𐑯 𐑨𐑒𐑮𐑩𐑯𐑦𐑥 𐑐𐑶𐑯𐑑 | |
𐑐𐑮𐑱 | |
·𐑚𐑦𐑤𐑰 | |
⸰𐑛𐑯𐑨 | |
○𐑜𐑥𐑑 | |
·𐑕𐑐𐑦𐑯𐑔𐑴 | |
⸰𐑿𐑕 | |
⸰𐑰𐑛𐑑 | |
·𐑨𐑯𐑛𐑮𐑩𐑒𐑤𐑰𐑟 | |
𐑨𐑯𐑛𐑮𐑩𐑒𐑤𐑰𐑟 | |
·𐑨𐑯𐑛𐑮𐑩𐑒𐑤𐑰𐑟'𐑩𐑟 | |
%% 𐑥𐑦𐑒𐑕𐑑 𐑕𐑒𐑮𐑦𐑐𐑑𐑕 (𐑪𐑐𐑖𐑩𐑯𐑩𐑤?) | |
3⸰𐑐𐑥 | |
𐑤𐑧𐑑𐑼𐑟 | |
Hello, 𐑢𐑻𐑤𐑛 | |
シェイヴィアン | |
%% EOF |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment