2017年12月27日 星期三

關於入聲調標註問題

老張寄來一份關於入聲調標註的文件, 要我評估可行與否, 因最近較忙無暇細看, 故先將其中網上資料部分記錄如下 :

【煨番薯】彭瑞珠原作
關於入聲字表的說明
入声字自动标注工具

另有一篇應該是湘雲的作品 "石牯情緣" docx 檔, 須以客語發音才能了解.

還有一篇中央大學客家語文研究所徐翠真的碩士論文 "四縣客家話入聲字研究", 有 200 頁之多, 要花一點時間來看.

語言學與網頁設計都好久沒摸了, 坦白說有點吃力.

對岸這個入聲字自動標註工具好用, 我把 "石牯情緣" 前三段貼上去 :

"時間過還遽,埋頭佇研究室打電腦,無感覺到,一日又會過忒咧。 探頭看向窗門外背,日頭偏西,王椰 樹搖啊搖,像同捱揲手,喊捱毋好恁拼,好放下手頭任做都做毋忒个事情,出去外背行行啊仔。乜好,恁久無運動咧,這幾日都落水,落到人、鳥仔摎蟲仔通棚都囥嶐孔樣少行出來,趕今晡日下晝天時恁好,來出去曬一下日頭,行行看看仔乜好 。
 學校後山有一條路做得直直蹶到八卦山山頂,一路係上崎,一路係梯碫,爬到山崠頂,没汗流脈落, 也乜氣賒激激。毋過來到崗頂,鼻到花香草香,看到山下一大片恁闊 个風景,先先个腳軟身痶也無算麼介咧。
 來到飛機公園,一台老飛行機像雞嫲孵卵 樣跍佇草坪頂,仰頭看 向天頂,堵好兩台訓練用个現代飛行機飛等過,這隻「老雞嫲」也像緬懷當年樣仔,還想做過一飆沖天,飛到高高个雲頂看遍世界,毋過這下煞分大索綯核核鎖到地泥頂,樣般想飛也飛毋起來咧。"

按第一個按鈕 (標準模式) 下方就出現標註結果, 入聲字底下會有紅色底線 :

入声字自动标注 输出结果:
時間過還遽,埋頭佇研究打電腦,無感到,又會過咧。 探頭看向窗門外背,頭偏西,王椰 樹搖啊搖,像同捱揲手,喊捱毋好恁拼,好放下手頭任做都做毋个事情,去外背行行啊仔。乜好,恁久無運動咧,這幾都落水,落到人、鳥仔摎蟲仔通棚都囥嶐孔樣少行來,趕今晡下晝天時恁好,來去曬頭,行行看看仔乜好 。
 校後山有條路做卦山山頂,路係上崎,路係梯碫,爬到山崠頂,汗流落, 也乜氣賒。毋過來到崗頂,鼻到花香草香,看到山下大片恁 个風景,先先个軟身痶也無算麼介咧。
 來到飛機公園,台老飛行機像雞嫲孵卵 樣跍佇草坪頂,仰頭看 向天頂,堵好兩台訓練用个現代飛行機飛等過,這「老雞嫲」也像緬懷當年樣仔,還想做過飆沖天,飛到高高个雲頂看遍世界,毋過這下分大索綯鎖到地泥頂,樣般想飛也飛毋起來咧。

現在問題是入聲字雖然標出來了, 但卻無法連結發音, 紅色的底線如果能加上超連結就完美了. 老張要我評估能否將標註的結果加工一下, 可連結到萌典去聽發音, 如【煨番薯】所示.

觀察此標註工具網頁原始碼, 輸入框是一個 id 為 mf_ipt 的 textarea 元件 :

<textarea name=mf_ipt id=mf_ipt cols=50 rows=10></textarea>

底下有三個按鈕, 按下去會分別呼叫 Javascript 函數 MarkWords(0), MarkWords(1), 以及 ResetWords()  :

<div class="rsz_btn"><button onclick="MarkWords(0);">查询入声字(标准检查模式)</button></div>
<div class="rsz_btn"><button onclick="MarkWords(1);">查询入声字(使用平水韵检查模式)</button></div>
<div class="rsz_btn"><button onclick="ResetWords();">清除</button></div>

底下則是 id 為 rsz_output 的輸出區塊 :

<div class="rsz_opt"><div id="rsz_output"></div>

呼叫 MarkWords(0) 時此函數會讀取輸入框 mf_ipt 之內容, 如果有輸入內容就呼叫 CheckRSZ() 函數, 它會依據傳入的第一參數 pi_iType 是 0 (標準) 或 1 (平水韻) 去搜尋存放在變數 g_strRSZ (標準) 或 g_strPS (平水韻) 中的入聲字表來辨認是否為入聲字, 如果是入聲字就給這個字加上底線與紅色樣式, 加工後的字串放在變數 t_strOpt 裡 :

<div class=result>"+t_strOpt+"</div>

然後再用 innerHTML 將此標註結果字串 t_strOpt 寫入輸出區塊 rsz_output 內 :

document.getElementById("rsz_output").innerHTML = "<div class=output><div class=tips><strong>入声字自动标注 输出结果:</strong></div><div class=result>"+t_strOpt+"</div><div class=for_print>入声字自动标注工具: <span class=b>https://www.xiaohui.com/rsz</span></div></div><div class=print><a href='#' onclick='OnPrint();'>打印标注结果</a></div>";

初步研究我覺得應該可行.

至於第二個按鈕的平水韻, 我查了維基, 原來是宋代之後的詩韻系統 :

https://zh.wikipedia.org/wiki/平水韻

平水之名據說源自金朝聲韻家劉淵所作 "壬子新刊禮部韻略",  劉淵為山西平水人因而得名; 又有一說為出自金國人王文鬱所作 "新刊韻略", 尚無定論.

2018-08-17 補充 :

老張邀我今晚登門一敘, 討論如何將入聲調標註後連結萌典, 因 9 月初要用, 近日集中時間解決此問題.

2018-08-20 補充 :

這個功能其實很簡單, 只要將 MarkWords() 中的變數 t_strOpt 改成如下即可 :

t_strOpt += "<a href='https://www.moedict.tw/:" + t_strChar +
    "' target='checked_tone'>" + t_strChar + "</a>";

修改後的網頁暫時放在下列免費伺服器測試 :

https://tony1966.000webhostapp.com/test/checked_tone.htm

沒有留言 :