Releases: nk2028/qieyun-js
Releases · nk2028/qieyun-js
v0.15.0-beta.2
- feat(資料)!: replace 韻目原貌 with 來源
- Breaking:
.韻目原貌
removed, use.來源?.文獻 === '廣韻'
and then.來源.韻目
instead
- Breaking:
- fix: add commas in errmsg of 音韻地位.屬於
- doc: update README for v0.15
v0.15.0-beta.1
音韻地位體系更動:
(基於 v0.13 的 v2 體系有若干改動,不再支持其他體系的音韻屬性組合,也不支持轉換)
- 用字更動:
- 眞 → 真(與字頭一致)
- 欣 → 殷(用切韻韻目)
- 「呼」變動:
- 虞韻:開合中立 → 合口(與魚韻開合對應)
- 侯韻:開口 → 開合中立(與尤、東韻平行)
- 幽韻:開合中立 → 開口(與侵韻平行)
- 「重紐」改為「類」,所有三等鈍聲母均標明「類」(銳聲母或非三等則均不標「類」)
- 云母均標明 B/C 類
- 庚韻原不標重紐,現均標明 B 類
- 清韻原不標重紐,現均標明 A 類
- 幽、蒸韻原本除開口牙喉B類外不標重紐,現幽韻均標明 A/B 類、蒸韻均標明 B/C 類
- 「輕脣」現可用「幫組 C類」直接判斷,不需再羅列輕脣韻
- 搭配規則更動:
- 匣母不再搭配三等
- 三等韻在拼端組時作為「四等」(如地、爹、丟等),一些判斷「三等」「四等」的條件需要注意端組
- 邊緣音韻地位,除內置資料已知之地位外,創建
音韻地位
時須指定額外參數以確認其邊緣性質 - 詳見
音韻地位.驗證
文檔
其他音韻地位相關更動:
- 元韻由臻攝改歸山攝
- 內置資料的音韻地位與反切有諸多更新
- 內置資料移除了 poem 原表注「應刪」的條目,但其中因廣韻用「正字」字形而刪去的原表字頭(「韓」「脈」)仍可用於查詢
功能更動:
- 移除
Qieyun.推導方案
模塊,請用 tshet-uinh-deriver-tools - 移除
Qieyun.分析體系
模塊,不再支持體系間自動轉換 - 「音韻地位編碼」與舊版不再兼容,且不再歸入
音韻地位
類,獨立為Qieyun.壓縮表示
模塊 - 「最簡描述」改為「簡略描述」(注意:其簡省規則尚未敲定,請不要用簡略描述進行文本比較)
音韻地位.from描述
預設僅認別完整描述,需指定額外參數以令其識別簡略描述- 檢索結果物件亦包含「字頭」(按字頭和按音韻地位查詢均會得到相同格式結果),其「韻部原貌」改稱「韻目原貌」
- 音韻地位增加「字母」(三十六字母)、「韻圖等」功能
其他更動:
- 工具鏈更新,構建及運行均需要 Node 18 以上
0.13.5
0.13.4
- Update data for
Qieyun.資料
(See nk2028/qieyun-data@c396b1f...c562352 )
Full Changelog: 0.13.3...0.13.4
0.13.3
- Fix: Incorrect TypeScript declarations (index.d.ts)
- Removed default export in order to fix this, please use
import * as Qieyun from 'qieyun';
instead ofimport Qieyun from 'qieyun';
- Removed default export in order to fix this, please use
Full Changelog: 0.13.2...0.13.3
0.13.2
- Update data for
Qieyun.資料
Full Changelog: 0.13.1...0.13.2
0.13.1
What's Changed
- Suggested Changes by @graphemecluster in #29
- Add explicit default export
- Improve type annotation
- Improve code style
Full Changelog: 0.13.0...0.13.1
0.13.0
更動概要
(可參照文檔閱覽)
資料相關:
- 內置預設資料使用 NK2028 維護的新版《廣韻》字音資料,引入諸多新考證成果(差異詳見下文「遷移指南」)
iter音韻地位
與query字頭
兩函數移至Qieyun.資料
下- 移除
音韻地位
的.反切
.代表字
.條目
三項,功能由Qieyun.資料.query音韻地位
取代 query字頭
與query音韻地位
返回的條目所含信息增加「反切」「韻目原貌」兩項
音韻地位相關:
- 放寬
音韻地位
建立時的限制,允許在建立時「呼」和「重紐」不為null
(無論何種聲韻組合)- 當然,仍然不允許在不應為
null
的場合下為null
- 編碼向上兼容 0.12(只有新增的合法碼位,既有編碼無改動)
- 當然,仍然不允許在不應為
- 雖然創建時限制非常寬,但運用時往往需要更多限制以及統一等價音韻地位表達方式等(且標準寬嚴可能不惟一)
- 該功能由
Qieyun.適配分析體系
擔任,具體可參見其文檔 - 關於 Qieyun.js 0.13 預設體系("v2" 與 "v2ext" 兩種),亦可參見下文「遷移指南」中「音韻地位差異」部分
- 該功能由
- 新增
Qieyun.表達式
裡面含有一些預定義的常用表達式
autoderiver 與 qieyun-examples 相關:
Qieyun.推導方案.建立
為 autoderiver 和 qieyun-examples 兩者提供統一的函數包裝及解析選項列表等功能- 由其所產生的推導函數,自帶音韻地位合法性檢查(依 v2ext 體系,因此推導方案代碼只需考慮符合 v2ext 格式的音韻地位即可)
- 若推導方案需要更嚴格的檢查或正則化,可在代碼中調用
Qieyun.適配分析體系
整體調整,或用音韻地位.調整
來精細調整 - 推導方案中的用例可參見新版的切韻拼音及有女羅馬字推導代碼開頭部分
- 若推導方案需要更嚴格的檢查或正則化,可在代碼中調用
- 舊推導代碼可以啟用「兼容模式」在 Qieyun.js 0.13 下繼續使用一段時間
- 該功能只會保留一段時間(也不會加入文檔),請儘快依推導方案升級指南來更新代碼
- 啟用「兼容模式」後,傳給包裝後推導函數的音韻地位,會在繼續傳給方案代碼前,自動轉換為符合舊版資料格式的音韻地位
- 啟用「兼容模式」方法是在選項列表中加入
['$legacy', true]
這樣一項,Qieyun.推導方案.建立
會識別該項,且該項不會包含在解析後的選項列表中(尚未升級的推導代碼均已做該處理)
遷移指南
推導代碼
- 如果想在代碼中使用
is`...`
格式的音韻地位.屬於
,請將其定義為const is = (...x) => 音韻地位.屬於(...x)
,注意請使用...x
音韻地位差異
此處列出 Qieyun.js 0.13 預設資料所用音韻地位體系(稱為 "v2" 體系)與舊版的差異。
v2 調整:
- 清韻不再標重紐(舊版清B「碧」小韻現為庚三)
- 例:「辟」幫清入、「碧」幫三庚入
v2(及預設資料)新增情形:
- 端組麻三、庚二、佳韻:資料有「爹」「打」「箉」(定開佳上)三小韻(「地」是舊資料已經有的)
- 例:「打」端開二庚上
- 祭廢韻平上聲:資料聲母有章組、云以日母,《廣韻》寄於齊灰咍韻
- 例:「茝」昌開廢上
- 蒸B、幽B、陽A(注意與之對立的是
重紐 = null
,並沒有蒸A幽A陽B):資料蒸B、幽B有牙喉音,陽A僅脣音「𩦠」一小韻- 例:「抑」影開B蒸入、「憶」影開蒸入、「𩦠」並A陽上
- 匣母三等:於重紐韻須分AB;資料僅「礥」小韻一筆
- 例:「礥」匣開A眞平
- 歌三脣音:注意其(雖然不屬於輕脣十韻但)當為輕脣,資料有「縛」小韻一筆
- 例:「縛」幫三歌去
v2 取消的情形:
(凡說明「無統一校法」者,適配分析體系.v2
會拒絕處理該地位;另有 v2lenient 體系可用,會對該類地位保持原樣,如需處理請注意覆蓋這些情況)
(注「僅資料」者,指 v2 正則化規則中本身沒有直接禁止該類地位,也不會轉換該類地位,但資料中這類地位都被校了)
- 章組云以日母非三等:二等章組、日母分別校為莊組、孃母,其餘除蟹攝齊灰咍韻(調整為祭廢韻)外無統一校法
- 精組二等:校為莊組
- 莊組一四等:無統一校法
- 莊組眞欣韻:校為臻韻
- 羣、邪母非三等(僅資料):邪校為從,羣母無統一校法
- 歌韻三等銳音(僅資料):校為一等
v2ext 比 v2 額外多出組合:
(處理預設資料時不會遇到,但若想處理其他來源資料,可能需要注意以下額外多出的聲韻組合與對立)
- 寒歌韻脣音可能有「呼」為「開」者
- 例:「爸」可能為「幫開一歌平」(v2:幫一歌平)
- 咍、嚴韻可能有脣音,凡韻可能有非脣音
- 例:「劎」可能為「見凡去」(v2:見嚴去)
- 清韻的分重紐聲母可能有「B類」(但不會有明顯標出A類的)
- 例:「碧」可能為「幫B清入」或「幫開B清入」(v2:幫三庚入)
- 除「地」「爹」「打」「箉」外可能有其他端組二三等或知組一四等
- 章組云以日母可能拼齊、灰、咍韻
- 例:「茝」可能為「昌咍上」(v2:昌開廢上)
- 可能有精組二等、莊組一四等、章組以日母非三等
- 可能有云母非三等
- 可能有莊組眞欣韻
Full Changelog: 0.12.5...0.13.0
0.12.5
- Fix keyword lexing
- Add 鈍音 and 銳音 by @graphemecluster in #24
Full Changelog: 0.12.4...0.12.5
0.12.4
- Add support for tagged template by @graphemecluster in #20
- Rewrite
音韻地位.屬於
by @syimyuzya in #21 - Fix #22 by @graphemecluster in #23
Full Changelog: 0.12.3...0.12.4