@kensio/pinyinjs 1.10.4 → 1.10.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +3 -3
  2. package/data/core.entries +14 -13
  3. package/data/core.freq +0 -0
  4. package/data/core.keys +1 -0
  5. package/data/full.counts +0 -0
  6. package/data/full.entries +33 -23
  7. package/data/full.freq +0 -0
  8. package/data/full.keys +10 -0
  9. package/data/manifest.json +12 -12
  10. package/data/standard.entries +23 -25
  11. package/data/standard.freq +0 -0
  12. package/data/standard.keys +10 -12
  13. package/dist/decode/reading-rules.d.ts +1 -0
  14. package/dist/decode/reading-rules.d.ts.map +1 -1
  15. package/dist/decode/reading-rules.js +3 -0
  16. package/dist/decode/reading-rules.js.map +1 -1
  17. package/dist/decode/wenshu-rule.d.ts +17 -0
  18. package/dist/decode/wenshu-rule.d.ts.map +1 -0
  19. package/dist/decode/wenshu-rule.js +44 -0
  20. package/dist/decode/wenshu-rule.js.map +1 -0
  21. package/dist/dictionary/given-names.d.ts +46 -0
  22. package/dist/dictionary/given-names.d.ts.map +1 -0
  23. package/dist/dictionary/given-names.js +65 -0
  24. package/dist/dictionary/given-names.js.map +1 -0
  25. package/dist/dictionary/merge-types.d.ts +6 -0
  26. package/dist/dictionary/merge-types.d.ts.map +1 -1
  27. package/dist/dictionary/merge-types.js.map +1 -1
  28. package/dist/dictionary/merge.d.ts.map +1 -1
  29. package/dist/dictionary/merge.js +9 -2
  30. package/dist/dictionary/merge.js.map +1 -1
  31. package/dist/dictionary/proper-noun.d.ts +3 -1
  32. package/dist/dictionary/proper-noun.d.ts.map +1 -1
  33. package/dist/dictionary/proper-noun.js +6 -2
  34. package/dist/dictionary/proper-noun.js.map +1 -1
  35. package/dist/dictionary/reference-readings.d.ts.map +1 -1
  36. package/dist/dictionary/reference-readings.js +23 -1
  37. package/dist/dictionary/reference-readings.js.map +1 -1
  38. package/dist/index.d.ts +1 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +1 -1
  41. package/dist/index.js.map +1 -1
  42. package/dist/orthography/capitals.d.ts +5 -0
  43. package/dist/orthography/capitals.d.ts.map +1 -1
  44. package/dist/orthography/capitals.js +20 -1
  45. package/dist/orthography/capitals.js.map +1 -1
  46. package/dist/orthography/punctuation.d.ts.map +1 -1
  47. package/dist/orthography/punctuation.js +45 -4
  48. package/dist/orthography/punctuation.js.map +1 -1
  49. package/package.json +1 -1
@@ -54,6 +54,7 @@ fan4
54
54
  liu2
55
55
  bie3
56
56
  lou1
57
+ ce4 jia1,zhe2
57
58
  shao1
58
59
  hu2
59
60
  cai3
@@ -6256,7 +6257,7 @@ wei3 wei4 j
6256
6257
  zhu4 zg
6257
6258
  v
6258
6259
  ze5 zg
6259
- xian2
6260
+ xian2 xuan2
6260
6261
  bo2 nr bai3,bo5
6261
6262
  nr p
6262
6263
  nr
@@ -8668,7 +8669,7 @@ tai2 zg
8668
8669
  chou2 zg
8669
8670
  chai2 n
8670
8671
  n
8671
- ni3 zg
8672
+ ni3 zg yi4
8672
8673
  jin3 v
8673
8674
  d
8674
8675
  d
@@ -9375,7 +9376,6 @@ nei4 ying4 n
9375
9376
  ns p
9376
9377
  ns
9377
9378
  ns
9378
- ns
9379
9379
  n
9380
9380
  n
9381
9381
  n
@@ -10080,7 +10080,6 @@ xing1 cheng2 ns p
10080
10080
  xing4 tou5 v
10081
10081
  xing1 fen4 v
10082
10082
  xing1 fen4 ji4 n
10083
- xing1 xue2 n
10084
10083
  xing1 an1 ns p
10085
10084
  xing1 shan1 ns p
10086
10085
  xing1 shan1 xian4 ns p2
@@ -10107,9 +10106,6 @@ bing1 n
10107
10106
  bing1 bu4 xie3 ren4 i
10108
10107
  i
10109
10108
  n
10110
- bing1 lai2 jiang4 dang3 i
10111
- n
10112
- n
10113
10109
  n
10114
10110
  n
10115
10111
  n
@@ -10135,7 +10131,6 @@ bing1 lai2 jiang4 dang3 i
10135
10131
  bing1 bai4 ru2 shan1 dao3 i
10136
10132
  n
10137
10133
  n
10138
- bing1 lai2 jiang4 dang3 i
10139
10134
  n
10140
10135
  n
10141
10136
  n
@@ -10346,7 +10341,6 @@ nei4 ying4 n
10346
10341
  ns p
10347
10342
  ns
10348
10343
  ns
10349
- ns
10350
10344
  n
10351
10345
  n
10352
10346
  n
@@ -10517,7 +10511,6 @@ jun1 shi4 ji1 di4 n
10517
10511
  n
10518
10512
  n
10519
10513
  n
10520
- n
10521
10514
  vn
10522
10515
  n
10523
10516
  n
@@ -10645,7 +10638,6 @@ nong2 zg
10645
10638
  nr
10646
10639
  nong2 she4 n
10647
10640
  n
10648
- n
10649
10641
  nong2 hang2 j
10650
10642
  n
10651
10643
  n
@@ -17943,7 +17935,7 @@ pao2 v
17943
17935
  pao2 xiao1 v
17944
17936
  bi4 zg
17945
17937
  fu2
17946
- yang1
17938
+ yang1 yang3
17947
17939
  he2
17948
17940
  ze2 r zha1,za3
17949
17941
  v
@@ -20009,6 +20001,7 @@ guo2 n
20009
20001
  n
20010
20002
  j
20011
20003
  n
20004
+ guo2 xing1 nr p
20012
20005
  s
20013
20006
  s
20014
20007
  n
@@ -20330,6 +20323,7 @@ guo2 jia1 fa1 zhan3 ji4 hua4 wei3 yuan2 hui4 nt p2.4.6
20330
20323
  n
20331
20324
  j
20332
20325
  n
20326
+ guo2 xing1 nr p
20333
20327
  j
20334
20328
  n
20335
20329
  n
@@ -20500,7 +20494,7 @@ lüe4
20500
20494
  hui4 zg
20501
20495
  yi4
20502
20496
  yuan2 zg huan2
20503
- luan2
20497
+ luan2 you2
20504
20498
  luan2 zg
20505
20499
  tu3 zg
20506
20500
  n
@@ -25652,6 +25646,7 @@ zir3 nr
25652
25646
  n
25653
25647
  n
25654
25648
  n
25649
+ nr p
25655
25650
  n
25656
25651
  n
25657
25652
  n
@@ -28339,6 +28334,7 @@ xiao3 ben3 sheng1 yi5 n
28339
28334
  n
28340
28335
  n
28341
28336
  n
28337
+ nr p
28342
28338
  nr
28343
28339
  n
28344
28340
  n
@@ -33408,7 +33404,7 @@ che4 ad
33408
33404
  z
33409
33405
  jiao3 zg
33410
33406
  hui4
33411
- jiao3 g jiao4
33407
+ jiao3 g jiao4,yao1
33412
33408
  hui1 n
33413
33409
  n
33414
33410
  n
@@ -34348,7 +34344,7 @@ heng2 nr p
34348
34344
  nz p
34349
34345
  n
34350
34346
  xi1 zg
34351
- jiao3 zg
34347
+ jiao3 zg xiao4
34352
34348
  shu4 nr
34353
34349
  v
34354
34350
  yang4 n
@@ -37702,6 +37698,8 @@ la1 gan3 n
37702
37698
  v
37703
37699
  nz p1
37704
37700
  la1 du4 zi5 n
37701
+ nr p
37702
+ nr p
37705
37703
  ns p
37706
37704
  ns p
37707
37705
  nrt
@@ -41398,6 +41396,7 @@ xiao4 xue2
41398
41396
  xiao4
41399
41397
  wen2 n
41400
41398
  n
41399
+ nr p
41401
41400
  n
41402
41401
  n
41403
41402
  n
@@ -41481,6 +41480,7 @@ wen2 n
41481
41480
  nr
41482
41481
  n
41483
41482
  n
41483
+ nr p
41484
41484
  n
41485
41485
  n
41486
41486
  n
@@ -46482,7 +46482,7 @@ xie4 v
46482
46482
  vn
46483
46483
  vn
46484
46484
  kun3
46485
- zhuo2 zg
46485
+ zhuo2 zg zhuo1
46486
46486
  shu1 v
46487
46487
  v
46488
46488
  v
@@ -47873,7 +47873,7 @@ yu4 ba4 bu4 neng2 i
47873
47873
  kuan3
47874
47874
  xi1 x
47875
47875
  ai3 zg ê1,ê2,ê3,ê4,ai1,ei1,ei2,ei3,ei4,e1,e2,e3,e4
47876
- qi1 e
47876
+ qi1 e yi1
47877
47877
  qi1 vn
47878
47878
  i
47879
47879
  i
@@ -52272,7 +52272,7 @@ dan4 bo2 a
52272
52272
  z
52273
52273
  z
52274
52274
  z
52275
- yu4
52275
+ yu4 xu4
52276
52276
  yu1 v
52277
52277
  yu1 se4 v
52278
52278
  n
@@ -54814,7 +54814,7 @@ zhu2 n
54814
54814
  n
54815
54815
  n
54816
54816
  n
54817
- xuan3 zg
54817
+ xuan3 zg xuan1
54818
54818
  zheng1 zg
54819
54819
  po4
54820
54820
  yan1 n yin1
@@ -56701,7 +56701,7 @@ mu4
56701
56701
  bei4 x
56702
56702
  pi1
56703
56703
  yi2
56704
- sheng1
56704
+ sheng1 xing1
56705
56705
  pao2 n
56706
56706
  pao2 zi5 n
56707
56707
  xia2 zg
@@ -72252,7 +72252,6 @@ xing1 guo2 xian4 ns p2
72252
72252
  xing1 cheng2 ns p
72253
72253
  xing1 fen4 v
72254
72254
  xing1 fen4 ji4 n
72255
- xing1 xue2 n
72256
72255
  xing1 an1 ns p
72257
72256
  xing1 shan1 ns p
72258
72257
  xing1 shan1 xian4 ns p2
@@ -72722,6 +72721,7 @@ ai4 ha3 mai4 de2 nrt
72722
72721
  nr
72723
72722
  n
72724
72723
  n
72724
+ nr p
72725
72725
  nr p1
72726
72726
  nai3 x
72727
72727
  tiao2
@@ -82631,7 +82631,6 @@ jun1 shi4 ji1 di4 n
82631
82631
  n
82632
82632
  n
82633
82633
  n
82634
- n
82635
82634
  vn
82636
82635
  n
82637
82636
  n
@@ -83695,7 +83694,6 @@ nong2
83695
83694
  nong2 she4 n
83696
83695
  n
83697
83696
  n
83698
- n
83699
83697
  nong2 hang2 j
83700
83698
  n
83701
83699
  n
@@ -96056,7 +96054,7 @@ bian1 zg
96056
96054
  bian1 n
96057
96055
  n
96058
96056
  quan2 zg
96059
- zei2
96057
+ zei2 ze2
96060
96058
  wei1 zg
96061
96059
  yu2
96062
96060
  chun1
@@ -96236,7 +96234,7 @@ jie2 g
96236
96234
  wei3 g
96237
96235
  er2 g
96238
96236
  tong2 zg
96239
- zei2
96237
+ zei2 ze2
96240
96238
  kuai4 zg
96241
96239
  ji4 g
96242
96240
  jiao1 g
Binary file
@@ -54,6 +54,7 @@ B
54
54
  㽞
55
55
  㿜
56
56
  䁖
57
+ 䇲
57
58
  䈰
58
59
  䊀
59
60
  䌽
@@ -9374,7 +9375,6 @@ B
9374
9375
  內核
9375
9376
  內江
9376
9377
  內河
9377
- 內流河
9378
9378
  內海
9379
9379
  內涵
9380
9380
  內熱
@@ -10080,7 +10080,6 @@ B
10080
10080
  兴头
10081
10081
  兴奋
10082
10082
  兴奋剂
10083
- 兴学
10084
10083
  兴安
10085
10084
  兴山
10086
10085
  兴山县
@@ -10107,8 +10106,6 @@ B
10107
10106
  兵不血刃
10108
10107
  兵临城下
10109
10108
  兵书
10110
- 兵來將擋
10111
- 兵備道
10112
10109
  兵刃
10113
10110
  兵制
10114
10111
  兵力
@@ -10121,7 +10118,6 @@ B
10121
10118
  兵团
10122
10119
  兵團
10123
10120
  兵士
10124
- 兵备道
10125
10121
  兵家
10126
10122
  兵工
10127
10123
  兵工厂
@@ -10135,7 +10131,6 @@ B
10135
10131
  兵敗如山倒
10136
10132
  兵書
10137
10133
  兵权
10138
- 兵来将挡
10139
10134
  兵權
10140
10135
  兵法
10141
10136
  兵源
@@ -10345,7 +10340,6 @@ B
10345
10340
  内核
10346
10341
  内江
10347
10342
  内河
10348
- 内流河
10349
10343
  内海
10350
10344
  内涵
10351
10345
  内热
@@ -10512,7 +10506,6 @@ B
10512
10506
  军制
10513
10507
  军力
10514
10508
  军功
10515
- 军功章
10516
10509
  军务
10517
10510
  军区
10518
10511
  军医
@@ -10644,7 +10637,6 @@ B
10644
10637
  农畜
10645
10638
  农耕
10646
10639
  农舍
10647
- 农艺
10648
10640
  农药
10649
10641
  农行
10650
10642
  农贸市场
@@ -20009,6 +20001,7 @@ B
20009
20001
  国光
20010
20002
  国共
20011
20003
  国共合作
20004
+ 国兴
20012
20005
  国内
20013
20006
  国内外
20014
20007
  国军
@@ -20330,6 +20323,7 @@ B
20330
20323
  國腳
20331
20324
  國臺辦
20332
20325
  國舅
20326
+ 國興
20333
20327
  國航
20334
20328
  國藥
20335
20329
  國號
@@ -25652,6 +25646,7 @@ B
25652
25646
  子弹
25653
25647
  子彈
25654
25648
  子房
25649
+ 子明
25655
25650
  子母弹
25656
25651
  子母彈
25657
25652
  子民
@@ -28339,6 +28334,7 @@ B
28339
28334
  小组
28340
28335
  小组赛
28341
28336
  小结
28337
+ 小美
28342
28338
  小老婆
28343
28339
  小聲
28344
28340
  小肠
@@ -37702,6 +37698,8 @@ B
37702
37698
  拉练
37703
37699
  拉美
37704
37700
  拉肚子
37701
+ 拉胡尔
37702
+ 拉胡爾
37705
37703
  拉脫維亞
37706
37704
  拉脱维亚
37707
37705
  拉莫斯
@@ -41398,6 +41396,7 @@ B
41398
41396
  斆
41399
41397
  文
41400
41398
  文丑
41399
+ 文东
41401
41400
  文书
41402
41401
  文人
41403
41402
  文人学士
@@ -41481,6 +41480,7 @@ B
41481
41480
  文明
41482
41481
  文書
41483
41482
  文本
41483
+ 文東
41484
41484
  文案
41485
41485
  文档
41486
41486
  文檔
@@ -72252,7 +72252,6 @@ B
72252
72252
  興城
72253
72253
  興奮
72254
72254
  興奮劑
72255
- 興學
72256
72255
  興安
72257
72256
  興山
72258
72257
  興山縣
@@ -72722,6 +72721,7 @@ B
72722
72721
  艾滋
72723
72722
  艾滋病
72724
72723
  艾滋病毒
72724
+ 艾琳
72725
72725
  艾青
72726
72726
  艿
72727
72727
  芀
@@ -82628,7 +82628,6 @@ B
82628
82628
  軍制
82629
82629
  軍力
82630
82630
  軍功
82631
- 軍功章
82632
82631
  軍務
82633
82632
  軍區
82634
82633
  軍品
@@ -83694,7 +83693,6 @@ B
83694
83693
  農耕
83695
83694
  農舍
83696
83695
  農莊
83697
- 農藝
83698
83696
  農藥
83699
83697
  農行
83700
83698
  農貿市場
@@ -22,6 +22,7 @@ export { RESULTATIVE_ZHAO } from "./zhao-rule.js";
22
22
  export { VERBAL_DE_QUESHI } from "./dique-rule.js";
23
23
  export { COMPASS_DONGXI } from "./dongxi-rule.js";
24
24
  export { VERBAL_CHANGYONG } from "./changyong-rule.js";
25
+ export { LANGUAGE_WENSHU } from "./wenshu-rule.js";
25
26
  import type { EdgeRule } from "./rules.js";
26
27
  export { ATTESTED_ERHUA } from "./erhua-rule.js";
27
28
  export { ADJECTIVAL_CHANG, ADJECTIVAL_MEI, EASY_HAO, PLAYING_TAN, SUMMING_DOU, } from "./polyphone-rules.js";
@@ -1 +1 @@
1
- {"version":3,"file":"reading-rules.d.ts","sourceRoot":"","sources":["../../src/decode/reading-rules.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUjD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,QAAQ,EAqC5C,CAAC"}
1
+ {"version":3,"file":"reading-rules.d.ts","sourceRoot":"","sources":["../../src/decode/reading-rules.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUjD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,WAAW,EACX,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,QAAQ,EAsC5C,CAAC"}
@@ -22,6 +22,7 @@ import { RESULTATIVE_ZHAO } from "./zhao-rule.js";
22
22
  import { VERBAL_DE_QUESHI } from "./dique-rule.js";
23
23
  import { COMPASS_DONGXI } from "./dongxi-rule.js";
24
24
  import { VERBAL_CHANGYONG } from "./changyong-rule.js";
25
+ import { LANGUAGE_WENSHU } from "./wenshu-rule.js";
25
26
  export { MODAL_DE, NOUN_HUA, PARTICLE_DE, POTENTIAL_DE } from "./de-rule.js";
26
27
  export { CALCULATING_SUAN, COMPLEMENT_DE } from "./complement-rule.js";
27
28
  export { ADVERBIAL_DI, ASPECTUAL_PARTICLE } from "./particle-rule.js";
@@ -46,6 +47,7 @@ export { RESULTATIVE_ZHAO } from "./zhao-rule.js";
46
47
  export { VERBAL_DE_QUESHI } from "./dique-rule.js";
47
48
  export { COMPASS_DONGXI } from "./dongxi-rule.js";
48
49
  export { VERBAL_CHANGYONG } from "./changyong-rule.js";
50
+ export { LANGUAGE_WENSHU } from "./wenshu-rule.js";
49
51
  import { ATTESTED_ERHUA } from "./erhua-rule.js";
50
52
  export { ATTESTED_ERHUA } from "./erhua-rule.js";
51
53
  import { ADJECTIVAL_CHANG, ADJECTIVAL_MEI, EASY_HAO, PLAYING_TAN, SUMMING_DOU, } from "./polyphone-rules.js";
@@ -90,5 +92,6 @@ export const READING_RULES = [
90
92
  VERBAL_DE_QUESHI,
91
93
  COMPASS_DONGXI,
92
94
  VERBAL_CHANGYONG,
95
+ LANGUAGE_WENSHU,
93
96
  ];
94
97
  //# sourceMappingURL=reading-rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reading-rules.js","sourceRoot":"","sources":["../../src/decode/reading-rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reading-rules.js","sourceRoot":"","sources":["../../src/decode/reading-rules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The 文 that closes a language name, and not the 文 of 文书 *a document*.
3
+ *
4
+ * 中文书, 日文书 and 外文书 are books in Chinese, in Japanese and in a foreign
5
+ * language. 文书 is a word and 中文书 is not, and 中 is cheap enough on its
6
+ * own that 中 + 文书 cost less than 中文 + 书. The decode came out `zhōng
7
+ * wénshū`, a middle document, and 中文 lost the capital a language name takes.
8
+ */
9
+ import type { EdgeRule } from "./rules.js";
10
+ /**
11
+ * 文书 taken apart where its 文 closes a language name.
12
+ *
13
+ * Taking the edge away leaves the 文 to the language and the 书 to itself, so
14
+ * 有很多中文书 reads `yǒu hěn duō Zhōngwén shū`.
15
+ */
16
+ export declare const LANGUAGE_WENSHU: EdgeRule;
17
+ //# sourceMappingURL=wenshu-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wenshu-rule.d.ts","sourceRoot":"","sources":["../../src/decode/wenshu-rule.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,YAAY,CAAC;AA8BxD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,QAU7B,CAAC"}
@@ -0,0 +1,44 @@
1
+ /** The word, in both scripts. */
2
+ const WENSHU = new Set(["文书", "文書"]);
3
+ /**
4
+ * The language names that end in 文, in both scripts.
5
+ *
6
+ * Listed rather than read off the dictionary, because the dictionary holds
7
+ * plenty of words ending in 文 that a 书 does not follow as a book: 公文书 is
8
+ * an official document either way.
9
+ */
10
+ const LANGUAGES = new Set([
11
+ "中文",
12
+ "英文",
13
+ "日文",
14
+ "法文",
15
+ "德文",
16
+ "俄文",
17
+ "韩文",
18
+ "韓文",
19
+ "外文",
20
+ "汉文",
21
+ "漢文",
22
+ "藏文",
23
+ "蒙文",
24
+ "越文",
25
+ "泰文",
26
+ ]);
27
+ /**
28
+ * 文书 taken apart where its 文 closes a language name.
29
+ *
30
+ * Taking the edge away leaves the 文 to the language and the 书 to itself, so
31
+ * 有很多中文书 reads `yǒu hěn duō Zhōngwén shū`.
32
+ */
33
+ export const LANGUAGE_WENSHU = {
34
+ name: "language-wenshu",
35
+ verdictFor: (context) => {
36
+ const { edge, characters } = context;
37
+ return WENSHU.has(edge.text) &&
38
+ edge.from > 0 &&
39
+ LANGUAGES.has(characters.slice(edge.from - 1, edge.from + 1).join(""))
40
+ ? "forbid"
41
+ : "keep";
42
+ },
43
+ };
44
+ //# sourceMappingURL=wenshu-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wenshu-rule.js","sourceRoot":"","sources":["../../src/decode/wenshu-rule.ts"],"names":[],"mappings":"AAUA,iCAAiC;AACjC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;CACL,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa;IACvC,IAAI,EAAE,iBAAiB;IACvB,UAAU,EAAE,CAAC,OAAoB,EAAE,EAAE;QACnC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACrC,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,CAAC;YACb,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtE,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,MAAM,CAAC;IACb,CAAC;CACF,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { JiebaEntry } from "../sources/jieba.js";
2
+ /**
3
+ * Given names no source lists, with the reading each takes, as the phrase
4
+ * corpus writes one.
5
+ *
6
+ * jieba lists a scattering of given names and counts some of them (文华 1,074
7
+ * times, 建华 342, 志强 15), and CC-CEDICT lists almost none. One the sources
8
+ * lack decodes a character at a time, and each character is capitalised only
9
+ * where it happens to be tagged as a name of its own. 文东 came out `Wén Dōng`,
10
+ * read as the place 东, and 小美的妈妈 came out `Xiǎo Měidí māma`, with 美的
11
+ * the company Midea taking the 美 from the name and reading the 的 `dí`.
12
+ *
13
+ * These are the given names of the recurring characters in Chinese Boost's
14
+ * graded reading, where each was read in its passages. Only the 简体 is
15
+ * listed. The merge carries each name to its 繁體 key, and listing 國興 as a
16
+ * word of its own put a 國興 → 國興 exception into the script tables. A name here is never a
17
+ * family name and a given name: GB/T 16159 joins the syllables of a given
18
+ * name, and the whole entry is the given name.
19
+ *
20
+ * 新雨 and 爱雪 are given names in the same series and are left out. Each is
21
+ * also two words that sit side by side in ordinary text, 一场新雨 *a fresh
22
+ * rain* and 我爱雪 *I love snow*, and entered as names they took both.
23
+ *
24
+ * **Keep this small.** A name joins the list when a text that needs it is
25
+ * found, the same way {@link import("./kept-names.js").KEPT_NAMES} grows.
26
+ */
27
+ export declare const GIVEN_NAMES: ReadonlyMap<string, readonly string[]>;
28
+ /**
29
+ * The count a listed given name is entered at.
30
+ *
31
+ * jieba's own default for a word it lists and cannot count is 3
32
+ * ({@link import("./frequency-table.js").UNCOUNTED_NAME}), and that is not
33
+ * enough here. It costs 17.62, and 小 and 美 together cost 16.24, so the name
34
+ * would still come apart. 100 is within the range jieba counts the given names
35
+ * it does list, and puts a name in bucket 5, at 14.62. 小美 then holds against
36
+ * 小 + 美的, and 美国兴起 still reads 美国 兴起.
37
+ */
38
+ export declare const GIVEN_NAME_COUNT = 100;
39
+ /**
40
+ * jieba's entries with the listed given names entered as names.
41
+ *
42
+ * A name jieba already lists takes the person tag and keeps the larger of the
43
+ * two counts. jieba lists 国兴 as `b`, a distinguishing word, ten times.
44
+ */
45
+ export declare function withGivenNames(jieba: ReadonlyMap<string, JiebaEntry>, names: ReadonlyMap<string, readonly string[]>): ReadonlyMap<string, JiebaEntry>;
46
+ //# sourceMappingURL=given-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"given-names.d.ts","sourceRoot":"","sources":["../../src/dictionary/given-names.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAO7D,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,EACtC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAC5C,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAajC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Given names no source lists, with the reading each takes, as the phrase
3
+ * corpus writes one.
4
+ *
5
+ * jieba lists a scattering of given names and counts some of them (文华 1,074
6
+ * times, 建华 342, 志强 15), and CC-CEDICT lists almost none. One the sources
7
+ * lack decodes a character at a time, and each character is capitalised only
8
+ * where it happens to be tagged as a name of its own. 文东 came out `Wén Dōng`,
9
+ * read as the place 东, and 小美的妈妈 came out `Xiǎo Měidí māma`, with 美的
10
+ * the company Midea taking the 美 from the name and reading the 的 `dí`.
11
+ *
12
+ * These are the given names of the recurring characters in Chinese Boost's
13
+ * graded reading, where each was read in its passages. Only the 简体 is
14
+ * listed. The merge carries each name to its 繁體 key, and listing 國興 as a
15
+ * word of its own put a 國興 → 國興 exception into the script tables. A name here is never a
16
+ * family name and a given name: GB/T 16159 joins the syllables of a given
17
+ * name, and the whole entry is the given name.
18
+ *
19
+ * 新雨 and 爱雪 are given names in the same series and are left out. Each is
20
+ * also two words that sit side by side in ordinary text, 一场新雨 *a fresh
21
+ * rain* and 我爱雪 *I love snow*, and entered as names they took both.
22
+ *
23
+ * **Keep this small.** A name joins the list when a text that needs it is
24
+ * found, the same way {@link import("./kept-names.js").KEPT_NAMES} grows.
25
+ */
26
+ export const GIVEN_NAMES = new Map([
27
+ ["子明", ["zǐ", "míng"]],
28
+ ["文东", ["wén", "dōng"]],
29
+ ["小美", ["xiǎo", "měi"]],
30
+ ["国兴", ["guó", "xīng"]],
31
+ ["艾琳", ["ài", "lín"]],
32
+ ["拉胡尔", ["lā", "hú", "ěr"]],
33
+ ]);
34
+ /**
35
+ * The count a listed given name is entered at.
36
+ *
37
+ * jieba's own default for a word it lists and cannot count is 3
38
+ * ({@link import("./frequency-table.js").UNCOUNTED_NAME}), and that is not
39
+ * enough here. It costs 17.62, and 小 and 美 together cost 16.24, so the name
40
+ * would still come apart. 100 is within the range jieba counts the given names
41
+ * it does list, and puts a name in bucket 5, at 14.62. 小美 then holds against
42
+ * 小 + 美的, and 美国兴起 still reads 美国 兴起.
43
+ */
44
+ export const GIVEN_NAME_COUNT = 100;
45
+ /**
46
+ * jieba's entries with the listed given names entered as names.
47
+ *
48
+ * A name jieba already lists takes the person tag and keeps the larger of the
49
+ * two counts. jieba lists 国兴 as `b`, a distinguishing word, ten times.
50
+ */
51
+ export function withGivenNames(jieba, names) {
52
+ if (names.size === 0) {
53
+ return jieba;
54
+ }
55
+ const entered = new Map(jieba);
56
+ for (const name of names.keys()) {
57
+ const listed = jieba.get(name)?.frequency ?? 0;
58
+ entered.set(name, {
59
+ frequency: Math.max(listed, GIVEN_NAME_COUNT),
60
+ partOfSpeech: "nr",
61
+ });
62
+ }
63
+ return entered;
64
+ }
65
+ //# sourceMappingURL=given-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"given-names.js","sourceRoot":"","sources":["../../src/dictionary/given-names.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,WAAW,GAA2C,IAAI,GAAG,CAAC;IACzE,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtB,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvB,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvB,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;CAC5B,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,KAAsC,EACtC,KAA6C;IAE7C,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;YAChB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAC7C,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -33,6 +33,12 @@ export interface MergeSources {
33
33
  * Absent, the merge reads only what the sources give.
34
34
  */
35
35
  readonly reference?: ReferenceReadings;
36
+ /**
37
+ * Given names the sources lack, with their readings. See
38
+ * {@link import("./given-names.js").GIVEN_NAMES}. Absent, a name is only
39
+ * what the sources make one.
40
+ */
41
+ readonly givenNames?: ReadonlyMap<string, readonly string[]>;
36
42
  }
37
43
  /**
38
44
  * Counts describing what the merge did, for the build to report and check.