Skip to content

Releases: nk2028/tshet-uinh-js

0.13.4

28 May 06:23
Compare
Choose a tag to compare

Full Changelog: 0.13.3...0.13.4

0.13.3

22 May 14:54
Compare
Choose a tag to compare
  • Fix: Incorrect TypeScript declarations (index.d.ts)
    • Removed default export in order to fix this, please use import * as Qieyun from 'qieyun'; instead of import Qieyun from 'qieyun';

Full Changelog: 0.13.2...0.13.3

0.13.2

17 May 06:52
Compare
Choose a tag to compare
  • Update data for Qieyun.資料

Full Changelog: 0.13.1...0.13.2

0.13.1

05 May 05:45
Compare
Choose a tag to compare

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

24 Apr 10:55
Compare
Choose a tag to compare

更動概要

(可參照文檔閱覽)

資料相關:

  • 內置預設資料使用 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

28 Mar 04:11
Compare
Choose a tag to compare

Full Changelog: 0.12.4...0.12.5

0.12.4

24 Mar 03:26
Compare
Choose a tag to compare

Full Changelog: 0.12.3...0.12.4

0.12.3

02 Oct 02:35
Compare
Choose a tag to compare
  1. Update qieyun-data
  2. Add bracket support and 判斷 method (#19)

0.12.2

27 Mar 05:45
Compare
Choose a tag to compare
  1. Update qieyun-data
  2. Add 最簡描述 and modify from描述 to support 最簡描述
> 音韻地位 = Qieyun.音韻地位.from描述('幫三凡入');
> 音韻地位.最簡描述;
'幫凡入'
> 音韻地位.等於(Qieyun.音韻地位.from描述('幫凡入'));
true
> 音韻地位 = Qieyun.音韻地位.from描述('羣開三A支平');
> 音韻地位.最簡描述;
'羣開A支平'
> 音韻地位.等於(Qieyun.音韻地位.from描述('羣開A支平'));
true

0.12.1

27 Feb 03:07
Compare
Choose a tag to compare
  1. Update qieyun-data