@@ -83,7 +83,7 @@ class Patch:
8383 校正釋義 : str
8484 原釋義參照 : str
8585 校正釋義參照 : str
86- 當刪說明 : str
86+ 字頭說明 : str
8787 備注 : str
8888
8989
@@ -106,8 +106,9 @@ class 廣韻Row:
106106 韻目原貌 : str
107107 音韻地位 : str
108108 反切 : str
109+ 字頭原貌 : str
109110 字頭 : str
110- 字頭當刪 : str
111+ 字頭說明 : str
111112 釋義 : str
112113 釋義參照 : str
113114
@@ -174,7 +175,7 @@ def main():
174175 釋義參照 = ''
175176
176177 # 修正
177- 字頭當刪 = ''
178+ 字頭說明 = ''
178179 if (patch := patches .get (字序_key )) is not None :
179180 assert patch .原字頭 == 字頭 , (
180181 f'patching 小韻 #{ 原書小韻號 } /{ 小韻字號 } 字 "{ patch .原字頭 } ", but the actual 字 is "{ 字頭 } "'
@@ -192,12 +193,10 @@ def main():
192193 f'cannot use "~" in 校正字頭 when 字頭 contains correction: "{ 字頭 } "'
193194 )
194195 字頭 = patch .校正字頭 .replace ('~' , 字頭 )
195- if 字頭 .endswith ('/-]' ):
196- 字頭當刪 = patch .當刪說明 or '當刪'
197- else :
198- assert not patch .當刪說明 , (
199- f'patching 當刪說明 on 小韻 #{ 原書小韻號 } /{ 小韻字號 } 字 "{ patch .原字頭 } ", but 校正字頭 is not marked for removal'
200- )
196+
197+ # 字頭說明 is an added field, thus it does not have an original value
198+ 字頭說明 = patch .字頭說明
199+
201200 if patch .校正釋義 or patch .原釋義 :
202201 assert patch .原釋義 == 釋義 , (
203202 f'patching 釋義 on 小韻 #{ 原書小韻號 } /{ 小韻字號 } 字 "{ patch .原字頭 } ", but the actual 釋義 is "{ 釋義 } "'
@@ -212,15 +211,17 @@ def main():
212211 elif 字序_data [字序_key ].sbgy_字 .endswith ('/-]' ):
213212 assert not 字頭 .startswith ('[' )
214213 字頭 = f'[{ 字頭 } /-]'
215- 字頭當刪 = '當刪'
216214
217215 字_check = 字序_data [字序_key ].字
218216 assert 字頭 == 字_check , (
219- f'字頭 mismatch between 字序表 and patched data: "{ 字_check } " != "{ 字頭 } " (小韻 { 原書小韻號 } /{ 小韻字號 } )'
217+ f'字頭 mismatch between 字序表 and ( patched) 廣韻 data: "{ 字_check } " != "{ 字頭 } " (小韻 { 原書小韻號 } /{ 小韻字號 } )'
220218 )
221219 if 字頭 .startswith ('[' ):
222- 校前 , 校後 = 字頭 [1 :- 1 ].split ('/' )
223- 字頭 = 校後 if 校後 != '-' else 校前
220+ 字頭原貌 , 字頭 = 字頭 [1 :- 1 ].split ('/' )
221+ 字頭 = '' if 字頭 == '-' else 字頭
222+ 字頭原貌 = '' if 字頭原貌 == '-' else 字頭原貌
223+ else :
224+ 字頭原貌 = ''
224225
225226 # 小韻號
226227 if 原書小韻號 in has_細分 :
@@ -254,7 +255,16 @@ def main():
254255 釋義 = 釋義 .replace (poem_反切 + '切' , 反切原貌 + '切' )
255256
256257 廣韻_data [字序_key ] = 廣韻Row (
257- 小韻號 , 小韻字號 , 韻目原貌 , 音韻地位 , 反切 , 字頭 , 字頭當刪 , 釋義 , 釋義參照
258+ 小韻號 ,
259+ 小韻字號 ,
260+ 韻目原貌 ,
261+ 音韻地位 ,
262+ 反切 ,
263+ 字頭原貌 ,
264+ 字頭 ,
265+ 字頭說明 ,
266+ 釋義 ,
267+ 釋義參照 ,
258268 )
259269
260270 for 小韻號 , cov in 小韻細分_coverage .items ():
0 commit comments