@kensio/pinyinjs 1.10.1 → 1.10.3

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.
@@ -5,31 +5,31 @@
5
5
  "keys": "core.keys",
6
6
  "readings": "core.entries",
7
7
  "frequencies": "core.freq",
8
- "bytes": 220724,
9
- "compressedBytes": 71612
8
+ "bytes": 220927,
9
+ "compressedBytes": 71714
10
10
  },
11
11
  "standard": {
12
12
  "entries": 66970,
13
13
  "keys": "standard.keys",
14
14
  "readings": "standard.entries",
15
15
  "frequencies": "standard.freq",
16
- "bytes": 1418684,
17
- "compressedBytes": 390798
16
+ "bytes": 1418887,
17
+ "compressedBytes": 390903
18
18
  },
19
19
  "full": {
20
- "entries": 461560,
20
+ "entries": 461563,
21
21
  "keys": "full.keys",
22
22
  "readings": "full.entries",
23
23
  "frequencies": "full.freq",
24
- "bytes": 9379911,
25
- "compressedBytes": 2449557
24
+ "bytes": 9380232,
25
+ "compressedBytes": 2449826
26
26
  }
27
27
  },
28
28
  "counts": {
29
29
  "file": "full.counts",
30
30
  "tier": "full",
31
- "keys": 723154,
32
- "bytes": 766849,
31
+ "keys": 723157,
32
+ "bytes": 766852,
33
33
  "compressedBytes": 250587
34
34
  },
35
35
  "script": {
@@ -3619,7 +3619,7 @@ hu1 zg hu5
3619
3619
  fa2 a
3620
3620
  a
3621
3621
  a
3622
- le4 a yue4
3622
+ le4 a yue4,lao4
3623
3623
  n
3624
3624
  n
3625
3625
  v
@@ -4732,7 +4732,7 @@ wang2 vg
4732
4732
  n
4733
4733
  n
4734
4734
  n
4735
- kang4 nr
4735
+ kang4 nr hang2
4736
4736
  v
4737
4737
  v
4738
4738
  v
@@ -7824,7 +7824,7 @@ juan4 zg
7824
7824
  zong1 zg
7825
7825
  ju4 ag
7826
7826
  a
7827
- qian4 zg
7827
+ qian4 zg qing4
7828
7828
  n
7829
7829
  ni2 nr p
7830
7830
  lun2 ns
@@ -19291,7 +19291,7 @@ xu1 e shi1
19291
19291
  de1 zg dei1,de4
19292
19292
  ma5 y ma2
19293
19293
  ma4
19294
- lei5 y
19294
+ lei5 y le1
19295
19295
  du1 o
19296
19296
  du1 nong5 v
19297
19297
  du1 lu5 o
@@ -21325,7 +21325,7 @@ pi2 zg pi4
21325
21325
  qing1 zg
21326
21326
  ju4 zg
21327
21327
  kong1 zg
21328
- tang3 chong3
21328
+ tang3 chong3 shang3
21329
21329
  dong1 zg
21330
21330
  dai4 zg
21331
21331
  tan4 zg
@@ -25370,7 +25370,7 @@ wei2 zg
25370
25370
  di4
25371
25371
  rou2
25372
25372
  mei3
25373
- ruan3
25373
+ ruan3 nen4
25374
25374
  wo4 zg
25375
25375
  chun1 zg
25376
25376
  miao2
@@ -35163,7 +35163,7 @@ yi4 you2 wei4 jin4 i
35163
35163
  n
35164
35164
  n
35165
35165
  n
35166
- kai4 zg
35166
+ kai4 zg he4,qi4
35167
35167
  dang4
35168
35168
  yin1 zg
35169
35169
  e4 a
@@ -44310,7 +44310,7 @@ lang3 nr
44310
44310
  v
44311
44311
  v
44312
44312
  v
44313
- zui1 zg
44313
+ zui1 zg juan1
44314
44314
  ming2 zg
44315
44315
  huang1 zg
44316
44316
  wang4 v wang5
@@ -46333,7 +46333,7 @@ kuo4 zg
46333
46333
  jing4 zg
46334
46334
  po5 zg bo2
46335
46335
  fu2 g
46336
- rui2 zg
46336
+ rui2 zg rui3
46337
46337
  tong3 zg
46338
46338
  jue2 g
46339
46339
  xi1 zg
@@ -47107,7 +47107,7 @@ man4 zg
47107
47107
  jin3 x
47108
47108
  di2 zg di1
47109
47109
  zhuang1 q
47110
- le4 a yue4
47110
+ le4 a yue4,lao4
47111
47111
  n
47112
47112
  le4 he1 he1 z
47113
47113
  le4 shan4 hao4 shi1 i
@@ -50263,7 +50263,7 @@ mei2 guan1 xi5 mei2 guan1 xi4 l
50263
50263
  mei2 tou2 cang1 ying5 i
50264
50264
  ta4 zg da2
50265
50265
  mian3 nrt
50266
- mi4
50266
+ mi4 hu1
50267
50267
  chong1 zg chong4
50268
50268
  vn
50269
50269
  n
@@ -53916,7 +53916,7 @@ se4 a
53916
53916
  se4
53917
53917
  cheng2 zg
53918
53918
  jiong3 zg
53919
- cheng2 ns deng4
53919
+ cheng2 ns deng4,deng1
53920
53920
  ns p1
53921
53921
  v
53922
53922
  a
@@ -55020,7 +55020,7 @@ feng1 n
55020
55020
  rong2
55021
55021
  he4 zg
55022
55022
  xun1 zg
55023
- ku4
55023
+ ku4 kao4
55024
55024
  xiao1 zg
55025
55025
  yan1 v
55026
55026
  ns p
@@ -57026,7 +57026,7 @@ xian4 xie3 v
57026
57026
  tuan1
57027
57027
  ya4
57028
57028
  nao2 g
57029
- xie1 zg
57029
+ xie1 zg he4
57030
57030
  jia1
57031
57031
  hou2 ng
57032
57032
  hour2 n
@@ -57433,7 +57433,7 @@ ma3 nr
57433
57433
  nrt
57434
57434
  wu3 zg
57435
57435
  fu1 zg
57436
- wen2 zg
57436
+ wen2 zg min2
57437
57437
  jie4 zg
57438
57438
  ya2 zg
57439
57439
  fen1 x bin1
@@ -59754,7 +59754,7 @@ shu3 zg
59754
59754
  dan4 zg
59755
59755
  dian4 g
59756
59756
  lin3 zg
59757
- lai4 n
59757
+ lai4 n la4
59758
59758
  lai4 ha2 ma5 lai4 ha2 ma2 n
59759
59759
  bie3 a bie1
59760
59760
  ji4
@@ -59767,7 +59767,7 @@ zheng1 zg
59767
59767
  n
59768
59768
  li4 x
59769
59769
  huo4 zg
59770
- lai4 n
59770
+ lai4 n la4
59771
59771
  lai4 ha2 ma5 lai4 ha2 ma2 n
59772
59772
  dian1 n
59773
59773
  a
@@ -62555,7 +62555,7 @@ pang2 pang1 m bang4
62555
62555
  v
62556
62556
  v
62557
62557
  hua2
62558
- wei3
62558
+ wei3 kui3
62559
62559
  sang3
62560
62560
  lei3 nr
62561
62561
  a
@@ -65058,7 +65058,7 @@ deng3 cha1 shu4 lie4 l
65058
65058
  n
65059
65059
  n
65060
65060
  n
65061
- xiao2 zg
65061
+ xiao2 zg jiao3
65062
65062
  jin1 n
65063
65063
  jin1 dou3 n
65064
65064
  jin1 pi2 li4 jin4 i
@@ -65226,7 +65226,7 @@ jian3 piao2 jian3 pu2 a
65226
65226
  v
65227
65227
  a
65228
65228
  pou2 zg
65229
- bi3 bei1
65229
+ bi3 bei1,pai2
65230
65230
  bi4 zg
65231
65231
  ge4 zg
65232
65232
  yu1
@@ -65357,7 +65357,7 @@ xian3 zg
65357
65357
  ping2
65358
65358
  zhen1 zg
65359
65359
  n
65360
- xing1
65360
+ xing1 xing3
65361
65361
  hu2 zg
65362
65362
  yi2 zg
65363
65363
  zhu4 zg
@@ -72777,7 +72777,7 @@ zi4 zg
72777
72777
  hui4
72778
72778
  sui1
72779
72779
  xiang1 ns
72780
- bi3 x
72780
+ bi3 x pi2
72781
72781
  fu2 nrt
72782
72782
  n
72783
72783
  ns
@@ -73999,7 +73999,7 @@ yan1 dou3 n
73999
73999
  n
74000
74000
  n
74001
74001
  n
74002
- zu1 ju1 g
74002
+ zu1 ju1 g ju4
74003
74003
  lin3 zg
74004
74004
  tan3 zg
74005
74005
  shu1 zg
@@ -74470,7 +74470,7 @@ suan4 n
74470
74470
  li4 vg
74471
74471
  v
74472
74472
  ju3 zg
74473
- bang4
74473
+ bang4 pang2
74474
74474
  chu2 zg
74475
74475
  huo4
74476
74476
  qian4 zg
@@ -75993,7 +75993,7 @@ man2 zi5 n
75993
75993
  man2 heng4 a
75994
75994
  man2 heng4 wu2 li3 i
75995
75995
  n
75996
- qu2 x
75996
+ qu2 x jue2
75997
75997
  jie2
75998
75998
  zhu2
75999
75999
  zhuo1
@@ -78666,7 +78666,7 @@ an1 v
78666
78666
  a
78667
78667
  xian2
78668
78668
  nan2
78669
- chen2 nr
78669
+ chen2 nr shen4
78670
78670
  feng3 feng4 v
78671
78671
  feng4 ci4 v
78672
78672
  v
@@ -79995,7 +79995,7 @@ mou2 hua4 n
79995
79995
  v
79996
79996
  i
79997
79997
  n
79998
- chen2 nr
79998
+ chen2 nr shen4
79999
79999
  die2 n
80000
80000
  n
80001
80001
  huang3 ng
@@ -80331,7 +80331,7 @@ xiu1 x
80331
80331
  huan2
80332
80332
  kun1 zg
80333
80333
  he2
80334
- he2 ng hao2
80334
+ he2 ng hao2,mo4
80335
80335
  mo4 g
80336
80336
  mao4 ng
80337
80337
  i
@@ -81981,7 +81981,7 @@ zhi3 n
81981
81981
  ta1 v
81982
81982
  yue4
81983
81983
  ba4
81984
- qi2 zg qi4
81984
+ qi2 zg qi4,qi3
81985
81985
  yue4 v
81986
81986
  v
81987
81987
  v
@@ -82329,7 +82329,7 @@ nie4 z
82329
82329
  z
82330
82330
  pan2 man2 v
82331
82331
  man2 shan1 v
82332
- liu1 zg
82332
+ liu1 zg liu4
82333
82333
  zan4
82334
82334
  bi4 g
82335
82335
  lu4
@@ -82368,7 +82368,7 @@ dun1 v cun2
82368
82368
  v
82369
82369
  v
82370
82370
  v
82371
- cu4 g jiu5
82371
+ cu4 g jiu5,jiu4
82372
82372
  cu4
82373
82373
  jue2 g jue3
82374
82374
  jue2
@@ -91283,7 +91283,7 @@ sui1
91283
91283
  c
91284
91284
  c
91285
91285
  c
91286
- wo4 zg
91286
+ wo4 zg huo4
91287
91287
  shuang1 n
91288
91288
  n
91289
91289
  t
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Whether a 里 standing alone means "in, inside", which 繁體 writes 裡.
3
+ *
4
+ * 里 has two senses that read alike. `lǐ` is the unit of distance and the
5
+ * neighbourhood, written 里 in both scripts (公里, 邻里, 里程, 里长), and `lǐ`
6
+ * is also the locative after a noun, written 裡 (鏡子裡, 房間裡, 冰箱裡). The
7
+ * syllable cannot tell them apart. The character table takes 里 by default,
8
+ * because most of the words that hold 里 are the unit or the neighbourhood.
9
+ * The table converts the locative words it knows (这里, 心里, 家里, 夜里)
10
+ * whole. A 里 the decode leaves as a word of its own has no such word behind
11
+ * it, and is the locative unless a number comes before it: 屋子里 is inside the
12
+ * room, and 走了十里 is ten 里 walked.
13
+ */
14
+ import type { Dictionary } from "../dictionary/dictionary.js";
15
+ import type { ScriptChoice } from "./script-types.js";
16
+ /**
17
+ * Write 裡 where a 里 standing alone means "in, inside".
18
+ *
19
+ * The character table takes 里 by default, which is right for 公里 and 邻里 and
20
+ * wrote 镜子里 as 鏡子里. A 里 the decode left as a word of its own after a
21
+ * noun is the locative. A number before it makes it the unit, and a
22
+ * transliteration syllable either side makes it part of a name. See
23
+ * {@link isInsideAt}.
24
+ *
25
+ * Only a choice that names 裡 as a rival is touched, which confines this to
26
+ * 简→繁: converting into 简体 has nothing to change 里 into.
27
+ */
28
+ export declare function writeInside(choices: readonly ScriptChoice[], dictionary: Dictionary, characters: readonly string[], from: number): readonly ScriptChoice[];
29
+ //# sourceMappingURL=li-frames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"li-frames.d.ts","sourceRoot":"","sources":["../../src/decode/li-frames.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAqFtD;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,IAAI,EAAE,MAAM,GACX,SAAS,YAAY,EAAE,CAoBzB"}
@@ -0,0 +1,84 @@
1
+ import { toCharacters } from "../script/characters.js";
2
+ /**
3
+ * The 繁體 form of the locative.
4
+ */
5
+ const INSIDE = "裡";
6
+ /**
7
+ * What can come before a 里 that counts distance, in both scripts.
8
+ *
9
+ * The numerals, and the words that stand in for one or round it off: 几里,
10
+ * 数里, 十多里, 十来里, 十余里, 半里.
11
+ */
12
+ const COUNTING = new Set(toCharacters("〇零一二三四五六七八九十百千万萬两兩廿几幾数數多来來余餘半"));
13
+ /**
14
+ * Transliteration syllables that come before a 里 in a foreign name: 克里斯,
15
+ * 加布里埃尔, 德米特里, 鲍里斯, 恩里科, 胡里奥, 齐里.
16
+ */
17
+ const NAME_BEFORE = new Set(toCharacters("克布特鲍胡恩夏埃尤荷齐弗杰诺莫默奥艾迪阿伊佩塞贝哈帕茨维格"));
18
+ /**
19
+ * Transliteration syllables that come after a 里 in a foreign name: 里玛,
20
+ * 鲍里斯, 胡里奥, 恩里科, 格里菲斯, 斯特里普, 叶里温.
21
+ */
22
+ const NAME_AFTER = new Set(toCharacters("斯埃玛奥科希约马奇尔亚诺娜莎欧达雅菲普曼温"));
23
+ /**
24
+ * Whether two characters are a word of their own, which the name syllables
25
+ * are not. 坦克里 and 表格里 end in 克 and 格, and 坦克 and 表格 are nouns.
26
+ */
27
+ function isWord(dictionary, characters) {
28
+ return (characters.length === 2 &&
29
+ dictionary.lookup(characters.join("")) !== undefined);
30
+ }
31
+ /**
32
+ * Whether a 里 sits inside a foreign name, between syllables that make no
33
+ * word with what is either side of them.
34
+ */
35
+ function isInName(dictionary, characters, at) {
36
+ return ((NAME_BEFORE.has(characters[at - 1]) &&
37
+ !isWord(dictionary, characters.slice(at - 2, at))) ||
38
+ (NAME_AFTER.has(characters[at + 1]) &&
39
+ !isWord(dictionary, characters.slice(at + 1, at + 3))));
40
+ }
41
+ /**
42
+ * Whether the 里 at a position means "in, inside".
43
+ *
44
+ * The caller has already settled that the character is a 里 standing alone.
45
+ * A 里 with nothing before it in the run is left alone, since there is no noun
46
+ * for it to be inside. A run starts after punctuation or any character that is
47
+ * not Han, digits among them, and 5里 is as likely as Facebook里.
48
+ */
49
+ function isInsideAt(dictionary, characters, at) {
50
+ const before = characters[at - 1];
51
+ return (before !== undefined &&
52
+ !COUNTING.has(before) &&
53
+ !isInName(dictionary, characters, at));
54
+ }
55
+ /**
56
+ * Write 裡 where a 里 standing alone means "in, inside".
57
+ *
58
+ * The character table takes 里 by default, which is right for 公里 and 邻里 and
59
+ * wrote 镜子里 as 鏡子里. A 里 the decode left as a word of its own after a
60
+ * noun is the locative. A number before it makes it the unit, and a
61
+ * transliteration syllable either side makes it part of a name. See
62
+ * {@link isInsideAt}.
63
+ *
64
+ * Only a choice that names 裡 as a rival is touched, which confines this to
65
+ * 简→繁: converting into 简体 has nothing to change 里 into.
66
+ */
67
+ export function writeInside(choices, dictionary, characters, from) {
68
+ const [choice] = choices;
69
+ if (choices.length !== 1 ||
70
+ choice === undefined ||
71
+ !choice.alternatives.includes(INSIDE) ||
72
+ !isInsideAt(dictionary, characters, from)) {
73
+ return choices;
74
+ }
75
+ return [
76
+ {
77
+ from: choice.from,
78
+ to: INSIDE,
79
+ evidence: "reading",
80
+ alternatives: [choice.to, ...choice.alternatives].filter((form) => form !== INSIDE),
81
+ },
82
+ ];
83
+ }
84
+ //# sourceMappingURL=li-frames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"li-frames.js","sourceRoot":"","sources":["../../src/decode/li-frames.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD;;GAEG;AACH,MAAM,MAAM,GAAG,GAAG,CAAC;AAEnB;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,YAAY,CAAC,+BAA+B,CAAC,CAC9C,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,YAAY,CAAC,+BAA+B,CAAC,CAC9C,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,YAAY,CAAC,uBAAuB,CAAC,CACtC,CAAC;AAEF;;;GAGG;AACH,SAAS,MAAM,CACb,UAAsB,EACtB,UAA6B;IAE7B,OAAO,CACL,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CACrD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CACf,UAAsB,EACtB,UAA6B,EAC7B,EAAU;IAEV,OAAO,CACL,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAClC,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjC,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CACzD,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CACjB,UAAsB,EACtB,UAA6B,EAC7B,EAAU;IAEV,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAClC,OAAO,CACL,MAAM,KAAK,SAAS;QACpB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;QACrB,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,CACtC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CACzB,OAAgC,EAChC,UAAsB,EACtB,UAA6B,EAC7B,IAAY;IAEZ,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;IACzB,IACE,OAAO,CAAC,MAAM,KAAK,CAAC;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrC,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EACzC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO;QACL;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,EAAE,EAAE,MAAM;YACV,QAAQ,EAAE,SAAS;YACnB,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACtD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAC1B;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Revisiting a converted word in the light of the run around it.
3
+ *
4
+ * The character table decides each character alone, and for a few the words
5
+ * either side are what settle it. `script-words` converts a word on its own
6
+ * evidence, and this is what follows it.
7
+ */
8
+ import type { Dictionary } from "../dictionary/dictionary.js";
9
+ import type { CharacterConversion } from "../script/conversion.js";
10
+ import type { Syllable } from "../syllable/syllable.js";
11
+ import type { ScriptChoice } from "./script-types.js";
12
+ /**
13
+ * What a word in a run is converted against.
14
+ */
15
+ export interface RunTables {
16
+ readonly dictionary: Dictionary;
17
+ readonly table: ReadonlyMap<string, CharacterConversion>;
18
+ readonly words: ReadonlyMap<string, string>;
19
+ }
20
+ /**
21
+ * Convert a word, then revisit its choices in the light of the run around it.
22
+ *
23
+ * The character table decides 干 and 里 alone, and a frame around the word can
24
+ * overrule it: 与你无干 keeps 干 and 镜子里 writes 裡. `from` is where the
25
+ * word starts in `characters`, which are the whole run's.
26
+ */
27
+ export declare function convertInRun(tables: RunTables, word: string, reading: readonly Syllable[], characters: readonly string[], from: number): readonly ScriptChoice[];
28
+ //# sourceMappingURL=script-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-context.d.ts","sourceRoot":"","sources":["../../src/decode/script-context.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACzD,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7C;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,QAAQ,EAAE,EAC5B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,IAAI,EAAE,MAAM,GACX,SAAS,YAAY,EAAE,CAUzB"}
@@ -0,0 +1,45 @@
1
+ import { CONCERNING, isConcerningAt, isGan } from "./gan-frames.js";
2
+ import { writeInside } from "./li-frames.js";
3
+ import { convertWord } from "./script-words.js";
4
+ /**
5
+ * Convert a word, then revisit its choices in the light of the run around it.
6
+ *
7
+ * The character table decides 干 and 里 alone, and a frame around the word can
8
+ * overrule it: 与你无干 keeps 干 and 镜子里 writes 裡. `from` is where the
9
+ * word starts in `characters`, which are the whole run's.
10
+ */
11
+ export function convertInRun(tables, word, reading, characters, from) {
12
+ const converted = convertWord(tables.table, tables.words, word, reading);
13
+ const concerning = keepConcerning(converted, tables.dictionary, characters, from, reading);
14
+ return writeInside(concerning, tables.dictionary, characters, from);
15
+ }
16
+ /**
17
+ * Keep 干 where it means "to concern".
18
+ *
19
+ * 干 read `gān` is 乾 when it means dry (干燥, 干货) and stays 干 when it means
20
+ * to concern (干扰, 相干), and the syllable cannot tell the two apart. A word
21
+ * settles most of them. A 干 standing alone at `gān` fell back on 乾, which
22
+ * wrote 与你无干 as 與你無乾 and 干卿底事 as 乾卿底事. The frames that read
23
+ * it `gān` in the first place are the ones that decide it here. See
24
+ * {@link isConcerningAt}.
25
+ *
26
+ * `from` is where the word starts in `characters`, which are the whole run's,
27
+ * since the frames reach past the word.
28
+ */
29
+ function keepConcerning(choices, dictionary, characters, from, reading) {
30
+ if (reading.length !== choices.length) {
31
+ return choices;
32
+ }
33
+ return choices.map((choice, at) => choice.from === CONCERNING &&
34
+ choice.to !== CONCERNING &&
35
+ isGan(reading[at]) &&
36
+ isConcerningAt(dictionary, characters, from + at)
37
+ ? {
38
+ from: choice.from,
39
+ to: CONCERNING,
40
+ evidence: "reading",
41
+ alternatives: [choice.to, ...choice.alternatives].filter((form) => form !== CONCERNING),
42
+ }
43
+ : choice);
44
+ }
45
+ //# sourceMappingURL=script-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-context.js","sourceRoot":"","sources":["../../src/decode/script-context.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAYhD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAiB,EACjB,IAAY,EACZ,OAA4B,EAC5B,UAA6B,EAC7B,IAAY;IAEZ,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,cAAc,CAC/B,SAAS,EACT,MAAM,CAAC,UAAU,EACjB,UAAU,EACV,IAAI,EACJ,OAAO,CACR,CAAC;IACF,OAAO,WAAW,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,cAAc,CACrB,OAAgC,EAChC,UAAsB,EACtB,UAA6B,EAC7B,IAAY,EACZ,OAA4B;IAE5B,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAChC,MAAM,CAAC,IAAI,KAAK,UAAU;QAC1B,MAAM,CAAC,EAAE,KAAK,UAAU;QACxB,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClB,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,CAAC;QAC/C,CAAC,CAAC;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,EAAE,EAAE,UAAU;YACd,QAAQ,EAAE,SAAS;YACnB,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACtD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,CAC9B;SACF;QACH,CAAC,CAAC,MAAM,CACX,CAAC;AACJ,CAAC"}
@@ -6,7 +6,6 @@
6
6
  * can show where the conversion was guessing.
7
7
  */
8
8
  import type { ScriptChoice, ScriptEvidence, ScriptTarget } from "./script-types.js";
9
- import type { Dictionary } from "../dictionary/dictionary.js";
10
9
  import { type CharacterConversion } from "../script/conversion.js";
11
10
  import { type Region } from "../script/glyphs.js";
12
11
  import type { Script } from "../script/script.js";
@@ -23,19 +22,10 @@ export declare function targetOf(target: ScriptTarget): {
23
22
  */
24
23
  export declare function convertWord(table: ReadonlyMap<string, CharacterConversion>, words: ReadonlyMap<string, string>, word: string, reading: readonly Syllable[]): readonly ScriptChoice[];
25
24
  /**
26
- * Keep 干 where it means "to concern".
27
- *
28
- * 干 read `gān` is 乾 when it means dry (干燥, 干货) and stays 干 when it means
29
- * to concern (干扰, 相干), and the syllable cannot tell the two apart. A word
30
- * settles most of them. A 干 standing alone at `gān` fell back on 乾, which
31
- * wrote 与你无干 as 與你無乾 and 干卿底事 as 乾卿底事. The frames that read
32
- * it `gān` in the first place are the ones that decide it here. See
33
- * {@link isConcerningAt}.
34
- *
35
- * `from` is where the word starts in `characters`, which are the whole run's,
36
- * since the frames reach past the word.
25
+ * Keep a word as it stands, which is what a text already in the target script
26
+ * needs. Every character is locked, because none of them was in question.
37
27
  */
38
- export declare function keepConcerning(choices: readonly ScriptChoice[], dictionary: Dictionary, characters: readonly string[], from: number, reading: readonly Syllable[]): readonly ScriptChoice[];
28
+ export declare function keepWord(word: string): readonly ScriptChoice[];
39
29
  /**
40
30
  * Rank what settled a character, strongest evidence first.
41
31
  *
@@ -1 +1 @@
1
- {"version":3,"file":"script-words.d.ts","sourceRoot":"","sources":["../../src/decode/script-words.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EACL,KAAK,mBAAmB,EAIzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAkB,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAQA;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAC/C,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,QAAQ,EAAE,GAC3B,SAAS,YAAY,EAAE,CAuCzB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,SAAS,YAAY,EAAE,EAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,QAAQ,EAAE,GAC3B,SAAS,YAAY,EAAE,CAmBzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,OAAO,GAChB,cAAc,CAQhB"}
1
+ {"version":3,"file":"script-words.d.ts","sourceRoot":"","sources":["../../src/decode/script-words.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,KAAK,mBAAmB,EAIzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAkB,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAQA;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAC/C,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,QAAQ,EAAE,GAC3B,SAAS,YAAY,EAAE,CAuCzB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,YAAY,EAAE,CAO9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,OAAO,GAChB,cAAc,CAQhB"}
@@ -1,7 +1,6 @@
1
1
  import { toCharacters } from "../script/characters.js";
2
2
  import { conversionKey, convertCharacter, formsOf, } from "../script/conversion.js";
3
3
  import { DEFAULT_REGION } from "../script/glyphs.js";
4
- import { CONCERNING, isConcerningAt, isGan } from "./gan-frames.js";
5
4
  /**
6
5
  * The script and region a target names.
7
6
  */
@@ -51,33 +50,16 @@ export function convertWord(table, words, word, reading) {
51
50
  });
52
51
  }
53
52
  /**
54
- * Keep 干 where it means "to concern".
55
- *
56
- * 干 read `gān` is 乾 when it means dry (干燥, 干货) and stays 干 when it means
57
- * to concern (干扰, 相干), and the syllable cannot tell the two apart. A word
58
- * settles most of them. A 干 standing alone at `gān` fell back on 乾, which
59
- * wrote 与你无干 as 與你無乾 and 干卿底事 as 乾卿底事. The frames that read
60
- * it `gān` in the first place are the ones that decide it here. See
61
- * {@link isConcerningAt}.
62
- *
63
- * `from` is where the word starts in `characters`, which are the whole run's,
64
- * since the frames reach past the word.
53
+ * Keep a word as it stands, which is what a text already in the target script
54
+ * needs. Every character is locked, because none of them was in question.
65
55
  */
66
- export function keepConcerning(choices, dictionary, characters, from, reading) {
67
- if (reading.length !== choices.length) {
68
- return choices;
69
- }
70
- return choices.map((choice, at) => choice.from === CONCERNING &&
71
- choice.to !== CONCERNING &&
72
- isGan(reading[at]) &&
73
- isConcerningAt(dictionary, characters, from + at)
74
- ? {
75
- from: choice.from,
76
- to: CONCERNING,
77
- evidence: "reading",
78
- alternatives: [choice.to, ...choice.alternatives].filter((form) => form !== CONCERNING),
79
- }
80
- : choice);
56
+ export function keepWord(word) {
57
+ return toCharacters(word).map((character) => ({
58
+ from: character,
59
+ to: character,
60
+ evidence: "locked",
61
+ alternatives: [],
62
+ }));
81
63
  }
82
64
  /**
83
65
  * Rank what settled a character, strongest evidence first.
@@ -1 +1 @@
1
- {"version":3,"file":"script-words.js","sourceRoot":"","sources":["../../src/decode/script-words.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script-words.js","sourceRoot":"","sources":["../../src/decode/script-words.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAEL,aAAa,EACb,gBAAgB,EAChB,OAAO,GACR,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAe,MAAM,qBAAqB,CAAC;AAIlE;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAoB;IAI3C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IACpD,CAAC;IACD,OAAO;QACL,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc;KACxD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,KAA+C,EAC/C,KAAkC,EAClC,IAAY,EACZ,OAA4B;IAE5B,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,2EAA2E;IAC3E,4EAA4E;IAC5E,gEAAgE;IAChE,MAAM,kBAAkB,GACtB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,kBAAkB,EAAE,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC;IAEpE,wEAAwE;IACxE,2EAA2E;IAC3E,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC;IAEvD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE;QACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,UAAU;YACnB,CAAC,CAAC,qDAAqD;gBACrD,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC;YACvC,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjD,yEAAyE;QACzE,oEAAoE;QACpE,iEAAiE;QACjE,uEAAuE;QACvE,mBAAmB;QACnB,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;QACvE,OAAO;YACL,IAAI,EAAE,SAAS;YACf,EAAE;YACF,QAAQ,EAAE,WAAW,CACnB,UAAU,EACV,SAAS,KAAK,SAAS,EACvB,YAAY,CAAC,MAAM,GAAG,CAAC,CACxB;YACD,YAAY;SACb,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5C,IAAI,EAAE,SAAS;QACf,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,QAAiB;QAC3B,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CACzB,UAAmB,EACnB,WAAoB,EACpB,QAAiB;IAEjB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/decode/script.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAS5D,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,cAAc,EACd,KAAK,YAAY,GAClB,MAAM,mBAAmB,CAAC;AAC3B;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,aAAkB,GAC1B,gBAAgB,CAmDlB;AAeD;;GAEG;AACH,wBAAgB,QAAQ,CACtB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAER;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE/D"}
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/decode/script.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAU5D,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,cAAc,EACd,KAAK,YAAY,GAClB,MAAM,mBAAmB,CAAC;AAC3B;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,aAAkB,GAC1B,gBAAgB,CAmDlB;AAED;;GAEG;AACH,wBAAgB,QAAQ,CACtB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAER;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE/D"}