模組:Hani-sortkey/data/serializer
< Module:Hani-sortkey | data
local insert = table.insert
local export = {}
local byte_lookup = {
[0x07] = "\\a",
[0x08] = "\\b",
[0x09] = "\\t",
[0x0A] = "\\n",
[0x0B] = "\\v",
[0x0C] = "\\f",
[0x0D] = "\\r",
[0x22] = "\\\"",
[0x5C] = "\\\\",
}
function export.main(checker)
local data = require("Module:Hani-sortkey/data")
local ret = {}
local keys, radicals, val = data.keys, data.radicals
for i = 1, 0x323AF do
if keys[i] then
val = keys[i]:gsub("(%d+)%.(.*)", function(r, as)
r = tonumber(r)
if byte_lookup[r] then
r = byte_lookup[r]
elseif r < 0x20 or r >= 0x7F then
r = "\\" .. ("%03d"):format(r)
else
r = string.char(r)
end
-- Negative additional stroke counts are subtracted from 10 (i.e. -1 becomes -9, -2 becomes -8 etc.), so that lower values sort before higher ones (i.e. -3, -2, -1 ...).
as = tonumber(as)
if as < 0 then
as = tostring(-10 - as)
else
as = ("%02d"):format(as)
end
return r .. as
end)
insert(ret, val)
end
end
insert(ret, "\\254")
for i, radical in ipairs(data.radicals) do
insert(ret, radical)
end
insert(ret, "\\255")
for k, v in pairs(data.preconvert) do
insert(ret, k .. "\\001" .. v .. "\\002")
end
return table.concat(ret)
end
return export
分类:
- 各文字Sortkey-generating模塊
- 漢字模塊
- Sortkey-generating模塊
- 洋涇浜英語模塊
- 與那國語模塊
- 雷州話模塊
- 南部平話模塊
- 中古蒙古語模塊
- 中部白語模塊
- 跨語言模塊
- 錦語模塊
- 韶州土話模塊
- 壯語模塊
- 閩東語模塊
- 四川話模塊
- 北部平話模塊
- 高句麗語模塊
- 喜界語模塊
- 官話模塊
- 與論語模塊
- 台山話模塊
- 柔若語模塊
- 恰喀拉語模塊
- 布依語模塊
- 儂語模塊
- 泉漳話模塊
- 扎話模塊
- 贛語模塊
- 百濟語模塊
- 上古漢語模塊
- 粵語模塊
- 拉瑪白語模塊
- 客家語模塊
- 晉語模塊
- 澳門皮欽葡萄牙語模塊
- 漢語模塊
- 閩北語模塊
- 日語模塊
- 國頭語模塊
- 水語模塊
- 沖永良部語模塊
- 碧約語模塊
- 鮮卑語模塊
- 宮古語模塊
- 高欄語模塊
- 誒話模塊
- 吳語模塊
- 潮州話模塊
- 文言文模塊
- 八重山語模塊
- 烏桓語模塊
- 八丈語模塊
- 閩南語模塊
- 湘語模塊
- 吐谷渾語模塊
- 德之島語模塊
- 徽語模塊
- 閩中語模塊
- 沖繩語模塊
- 莆仙語模塊
- 中古漢語模塊
- 東干語模塊
- 海南話模塊
- 瓦鄉話模塊
- 南奄美大島語模塊
- 古典藏語模塊
- 達斡爾語模塊
- 岱依語模塊
- 中古越南語模塊
- 阿勒楚喀語模塊
- Rouran模塊
- 白狼語模塊
- 標敏語模塊
- 羯語模塊
- 北部白語模塊
- 古回鶻語模塊
- 契丹語模塊
- 越南語模塊
- 巴拉語模塊
- 扶餘語模塊
- 古典日語模塊
- 北奄美大島語模塊
- 南部白語模塊
- 拓跋語模塊
- 各文字Data模塊
- Data模塊
- 漢字data模塊
- 洋涇浜英語data模塊
- 與那國語data模塊
- 雷州話data模塊
- 南部平話data模塊
- 中古蒙古語data模塊
- 中部白語data模塊
- 跨語言data模塊
- 錦語data模塊
- 韶州土話data模塊
- 壯語data模塊
- 閩東語data模塊
- 四川話data模塊
- 北部平話data模塊
- 高句麗語data模塊
- 喜界語data模塊
- 官話data模塊
- 與論語data模塊
- 台山話data模塊
- 柔若語data模塊
- 恰喀拉語data模塊
- 布依語data模塊
- 儂語data模塊
- 泉漳話data模塊
- 扎話data模塊
- 贛語data模塊
- 百濟語data模塊
- 上古漢語data模塊
- 粵語data模塊
- 拉瑪白語data模塊
- 客家語data模塊
- 晉語data模塊
- 澳門皮欽葡萄牙語data模塊
- 漢語data模塊
- 閩北語data模塊
- 日語data模塊
- 國頭語data模塊
- 水語data模塊
- 沖永良部語data模塊
- 碧約語data模塊
- 鮮卑語data模塊
- 宮古語data模塊
- 高欄語data模塊
- 誒話data模塊
- 吳語data模塊
- 潮州話data模塊
- 文言文data模塊
- 八重山語data模塊
- 烏桓語data模塊
- 八丈語data模塊
- 閩南語data模塊
- 湘語data模塊
- 吐谷渾語data模塊
- 德之島語data模塊
- 徽語data模塊
- 閩中語data模塊
- 沖繩語data模塊
- 莆仙語data模塊
- 中古漢語data模塊
- 東干語data模塊
- 海南話data模塊
- 瓦鄉話data模塊
- 南奄美大島語data模塊
- 古典藏語data模塊
- 達斡爾語data模塊
- 岱依語data模塊
- 中古越南語data模塊
- 阿勒楚喀語data模塊
- Rourandata模塊
- 白狼語data模塊
- 標敏語data模塊
- 羯語data模塊
- 北部白語data模塊
- 古回鶻語data模塊
- 契丹語data模塊
- 越南語data模塊
- 巴拉語data模塊
- 扶餘語data模塊
- 古典日語data模塊
- 北奄美大島語data模塊
- 南部白語data模塊
- 拓跋語data模塊
- 需要說明文檔的模板和模組