bindu 1.9.0 → 1.10.0
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.
- package/ChangeLog +5 -0
- package/README.md +12 -10
- package/lib/pratyahara.js +26 -3
- package/lib/sandhi/visarga/apply-kharovasana/index.js +35 -0
- package/lib/sandhi/visarga/index.js +2 -0
- package/package.json +1 -1
package/ChangeLog
CHANGED
package/README.md
CHANGED
|
@@ -47,17 +47,19 @@ places[0].message;
|
|
|
47
47
|
|
|
48
48
|
#### ac
|
|
49
49
|
|
|
50
|
-
- ✅[`
|
|
51
|
-
- ✅[`
|
|
52
|
-
- ✅[`
|
|
53
|
-
- ✅[`
|
|
54
|
-
- ✅[`
|
|
55
|
-
- ✅[`
|
|
56
|
-
- ✅[`
|
|
57
|
-
|
|
50
|
+
- ✅[`ac/apply-dirgha`](https://putout.cloudcmd.io/#/gist/0ad8154614be489ae50931109618100a/5ce86f7344b37fd40afeb229e6cb1f668d4f92fd): [अकः सवर्णे दीर्घः](https://www.learnsanskrit.org/vyakarana/sounds/ac-sandhi/#:~:text=a%20new%20rule%3A-,%E0%A4%85%E0%A4%95%E0%A4%83%20%E0%A4%B8%E0%A4%B5%E0%A4%B0%E0%A5%8D%E0%A4%A3%E0%A5%87%20%E0%A4%A6%E0%A5%80%E0%A4%B0%E0%A5%8D%E0%A4%98%E0%A4%83%E0%A5%A4%20%E0%A5%AC.%E0%A5%A7.%E0%A5%A7%E0%A5%A6%E0%A5%A7,-aka%E1%B8%A5%20savar%E1%B9%87e%20d%C4%ABrgha%E1%B8%A5);
|
|
51
|
+
- ✅[`ac/apply-yan`](https://putout.cloudcmd.io/#/gist/3091528d3d3eb095032fbec200599df0/c4dcefa2d29fd85f9d3d768b6eaf6934fd5a3fbb): [इको यणचि](https://www.learnsanskrit.org/vyakarana/sounds/vidhi-rules);
|
|
52
|
+
- ✅[`ac/apply-guna`](https://putout.cloudcmd.io/#/gist/c057229cbbedf356c1d317022141f8ca/dea60bda78c84f12aef77a9e08bc17274d66c65e): [आद्गुणः](https://www.learnsanskrit.org/panini/vowel/#:~:text=in%20ayav%C4%81y%C4%81v.-,6.1.87,-%E0%A4%86%E0%A4%A6%E0%A5%8D%E0%A4%97%E0%A5%81%E0%A4%A3%E0%A4%83);
|
|
53
|
+
- ✅[`ac/apply-vriddhi`](https://putout.cloudcmd.io/#/gist/7cdc2383c74d7afeb8cfd93df7b5f868/79b1c979be725fc082cf81991b16fac527cfcd7b): [वृद्धिरेचि](https://www.learnsanskrit.org/panini/vowel/#:~:text=and%20%C4%81.-,6.1.88,-%E0%A4%B5%E0%A5%83%E0%A4%A6%E0%A5%8D%E0%A4%A7%E0%A4%BF%E0%A4%B0%E0%A5%87%E0%A4%9A%E0%A4%BF);
|
|
54
|
+
- ✅[`ac/apply-purvarupa`](https://putout.cloudcmd.io/#/gist/23e2b612a185529ea6823e5f81d35b7d/2ace30ac469be03af1c41911b78d85e85b9a1120): [एकः पूर्वपरयोः](https://www.learnsanskrit.org/panini/vowel/#:~:text=this%20rule%20mean%3F-,%E0%A4%8F%E0%A4%95%E0%A4%83%20%E0%A4%AA%E0%A5%82%E0%A4%B0%E0%A5%8D%E0%A4%B5%E0%A4%AA%E0%A4%B0%E0%A4%AF%E0%A5%8B%E0%A4%83,-eka%E1%B8%A5%20p%C5%ABrvaparayo%E1%B8%A5)
|
|
55
|
+
- ✅[`ac/apply-ayadaya`](https://putout.cloudcmd.io/#/gist/39db56c40174f61caed795c2a2dc89a7/dc956c6b0834167d9814ba70036674f4a10f56f9): [आयादयः](https://www.learnsanskrit.org/references/sandhi/vowel/#:~:text=madhu%20iva%20%E2%86%92%20madhviva-,Now,-%2C%20some%20examples%20for)
|
|
56
|
+
- ✅[`ac/apply-padantad`](https://putout.cloudcmd.io/#/gist/f73f49bf102a6f2ab34a100ee29f81cc/6b1c3f1595841a08a035437924165e4b8d27896d): [एङः पदान्तादति](https://www.gingersunrise.com/i/133147357/एङ-पदनतदत);
|
|
57
|
+
|
|
58
58
|
#### visarga
|
|
59
|
-
|
|
60
|
-
- ✅[`
|
|
59
|
+
|
|
60
|
+
- ✅[`visarga/apply-rori`](https://putout.cloudcmd.io/#/gist/839c4d49726a2f869dc2854a110001d9/f443ecb1522b2b0f8d18a86eaaf8bdfe9325eaf6): [रो रि।](https://www.learnsanskrit.org/vyakarana/sounds/hal-sandhi/#:~:text=rule%208.3.15%20below%3A-,%E0%A4%B0%E0%A5%8B%20%E0%A4%B0%E0%A4%BF%E0%A5%A4%20%E0%A5%AE.%E0%A5%A9.%E0%A5%A7%E0%A5%AA,-ro%20ri%20);
|
|
61
|
+
- ✅[`visarga/apply-bhobhago`](https://putout.cloudcmd.io/#/gist/839c4d49726a2f869dc2854a110001d9/f443ecb1522b2b0f8d18a86eaaf8bdfe9325eaf6): [भोभगोअघोअपूर्वस्य योऽशि](https://ashtadhyayi.com/sutraani/8/3/17);
|
|
62
|
+
- ✅[`visarga/apply-kharovasana`](https://putout.cloudcmd.io/#/gist/425cfcba3ba6dd2bb4a6692fc6fb6959/bc3fb244c2bbe03597e3ae2ab85473ae46a5f22b):[खरवसानयोर्विसर्जनीयः](https://ashtadhyayi.com/sutraani/8/3/15);
|
|
61
63
|
|
|
62
64
|
#### apply-padantad
|
|
63
65
|
|
package/lib/pratyahara.js
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
const ac = [
|
|
2
|
+
'a',
|
|
3
|
+
'i',
|
|
4
|
+
'u',
|
|
5
|
+
'f',
|
|
6
|
+
'x',
|
|
7
|
+
'e',
|
|
8
|
+
'o',
|
|
9
|
+
'ai',
|
|
10
|
+
'au',
|
|
11
|
+
];
|
|
12
|
+
|
|
13
|
+
const khar = [
|
|
14
|
+
'k',
|
|
15
|
+
'c',
|
|
16
|
+
'w',
|
|
17
|
+
't',
|
|
18
|
+
'p',
|
|
19
|
+
'z',
|
|
20
|
+
's',
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
const createAsti = (a) => (b) => a.includes(b.toLowerCase());
|
|
24
|
+
|
|
25
|
+
export const astiAc = createAsti(ac);
|
|
26
|
+
export const astiKhar = createAsti(khar);
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {astiKhar} from '../../../pratyahara.js';
|
|
2
|
+
|
|
3
|
+
export const report = () => `kharavasānayor visarjanīyaḥ`;
|
|
4
|
+
|
|
5
|
+
export const fix = ({path, name}) => {
|
|
6
|
+
path.node.name = `${name.slice(0, -1)}H`;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export const traverse = ({push}) => ({
|
|
10
|
+
Identifier(path) {
|
|
11
|
+
const next = path.getNextSibling();
|
|
12
|
+
|
|
13
|
+
if (!next.node)
|
|
14
|
+
return;
|
|
15
|
+
|
|
16
|
+
const {name} = path.node;
|
|
17
|
+
|
|
18
|
+
const nextName = next.node.name;
|
|
19
|
+
const first = nextName.at(0);
|
|
20
|
+
const last = name.at(-1);
|
|
21
|
+
|
|
22
|
+
if (!/[sr]/.test(last))
|
|
23
|
+
return;
|
|
24
|
+
|
|
25
|
+
if (!astiKhar(first))
|
|
26
|
+
return;
|
|
27
|
+
|
|
28
|
+
push({
|
|
29
|
+
path,
|
|
30
|
+
next,
|
|
31
|
+
name,
|
|
32
|
+
nextName,
|
|
33
|
+
});
|
|
34
|
+
},
|
|
35
|
+
});
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import * as applyKharovasana from './apply-kharovasana/index.js';
|
|
1
2
|
import * as applyBhobhago from './apply-bhobhago/index.js';
|
|
2
3
|
import * as applyRori from './apply-rori/index.js';
|
|
3
4
|
|
|
4
5
|
export const rules = {
|
|
5
6
|
'apply-bhobhago': applyBhobhago,
|
|
6
7
|
'apply-rori': applyRori,
|
|
8
|
+
'apply-kharovasana': applyKharovasana,
|
|
7
9
|
};
|