shreevatsa / sanskrit

Tool(s) to help read Sanskrit (and other) metrical verse
https://sanskritmetres.appspot.com
GNU General Public License v2.0
73 stars 14 forks source link

Add more metres #3

Open shreevatsa opened 11 years ago

shreevatsa commented 11 years ago

Might be a good idea to add more metres than the <40 currently. Some work of prosody with a big list would help here.

But first, I'd like to do a corpus analysis and not include rubbish metres that no poet has used. :-) My preference is to first focus on the metres that one is most likely to encounter in reading classical Sanskrit, and they are also the most beautiful for composition.

drdhaval2785 commented 11 years ago

I have done the data entry of the samavRttas used in vRttaratnAkara,. I don't understand python. Just copy pasted the lines of your command and filled them.

AddSamavrtta('śrī', ' G ') AddSamavrtta('strī', ' G G ') AddSamavrtta('nārī', ' G G G ') AddSamavrtta('mṛgī', ' G L G ') AddSamavrtta('kanyā', ' G G G G ') AddSamavrtta('paṅkti', ' G L L G G ') AddSamavrtta('tanumadhyā', ' G G L L G G ') AddSamavrtta('śaśivadanā', ' L L L L G G ') AddSamavrtta('vasumatī', ' G G L L L G ') AddSamavrtta('madhumatī', ' L L L L L L G ') AddSamavrtta('madalekhā', ' G G G L L G G ') AddSamavrtta('kumāralalitā', ' L G L L L G G ') AddSamavrtta('haṁsamālā', ' L L G G L G G ') AddSamavrtta('vidyunmālā', ' G G G G — G G G G ') AddSamavrtta('chitrapadā', ' G L L G L L G G ') AddSamavrtta('māṇavaka', ' G L L G G L L G ') AddSamavrtta('haṁsaruta', ' G G G L L L G G ') AddSamavrtta('samānikā', ' G L G L G L G L ') AddSamavrtta('pramāṇikā', ' L G L G L G L G ') AddSamavrtta('campakamālā', ' G L L G G G L L G G ') AddSamavrtta('nārācaka', ' G G L G L G L G ') AddSamavrtta('halamukhī', ' G L G L L L L L G ') AddSamavrtta('bhujagaśiśubhṛtā', ' L L L L L L G — G G ') AddSamavrtta('śuddhavirāṭ', ' G G G L L G L G L G ') AddSamavrtta('paṇava', ' G G G L L — L L G G G ') AddSamavrtta('mayūrasāriṇī', ' G L G L G L G L G G ') AddSamavrtta('rukmavatī', ' G L L G G G L L G G ') AddSamavrtta('mattā', ' G G G G — L L L L G G ') AddSamavrtta('manoramā', ' L L L G L G L G L G ') AddSamavrtta('upasthitā', ' G G — L L G L L G L G ') AddSamavrtta('indravajrā', ' G G L G G L L G L G G ') AddSamavrtta('upendravajrā', ' L G L G G L L G L G G ') AddSamavrtta('sāndrapada', ' G L L G G L L L L G G ') AddSamavrtta('sumukhī', ' L L L L G — L L G L L G ') AddSamavrtta('dodhaka', ' G L L G L L G L L G G ') AddSamavrtta('śālinī', ' G G G G — G L G G L G G ') AddSamavrtta('vātormī', ' G G G G — L L G G L G G ') AddSamavrtta('bhramaravilasita', ' G G G G — L L L L L L G ') AddSamavrtta('śrī', ' G L L G G — L L L L G G ') AddSamavrtta('rathoddhatā', ' G L G L L L G L G L G ') AddSamavrtta('svāgatā', ' G L G L L L G L L G G ') AddSamavrtta('vṛntā', ' L L L L — L L L L G G G ') AddSamavrtta('bhadrikā', ' L L L L L L G L G L G ') AddSamavrtta('śyenikā', ' G L G L G L G L G L G ') AddSamavrtta('upasthita', ' L G L L L G G G L G G ') AddSamavrtta('śikhaṇḍita', ' L G L L L G G G L G G ') AddSamavrtta('mauktikamālā', ' G L L G L L G G L L G ') AddSamavrtta('candravartma', ' G L G L L L G L L L L G ') AddSamavrtta('vaṁśastha', ' L G L G G L L G L G L G ') AddSamavrtta('indravaṁśā', ' G G L G G L L G L G L G ') AddSamavrtta('toṭaka', ' L L G L L G L L G L L G ') AddSamavrtta('drutavilambita', ' L L L G L L G L L G L G ') AddSamavrtta('puṭa', ' L L L L L L G G G L G G ') AddSamavrtta('pramuditavadanā', ' L L L L L L G L G G L G ') AddSamavrtta('mauktidadāma', ' L G L L G L L G L L G L ') AddSamavrtta('kusumavicitrā', ' L L L L G G — L L L L G G ') AddSamavrtta('jaloddhatagati', ' L G L L L G L G L L L G ') AddSamavrtta('bhujaṅgaprayāta', ' L G G L G G L G G L G G ') AddSamavrtta('sragviṇī', ' G L G G L G G L G G L G ') AddSamavrtta('priyaṁvadā', ' L L L G L L L G L G L G ') AddSamavrtta('maṇimālā', ' G G L L G G G G L L G G ') AddSamavrtta('lalitā', ' G G L G L L L G L G L G ') AddSamavrtta('pramitākṣarā', ' L L G L G L L L G L L G ') AddSamavrtta('ujjvalā', ' L L L L L L G L L G L G ') AddSamavrtta('vaiśvadevī', ' G G G G G — G L G G L G G ') AddSamavrtta('jaladharamālā', ' G G G G — L L L L G G G G ') AddSamavrtta('navamālinī', ' L L L L — G L G L L L G G ') AddSamavrtta('prabhā', ' L L L L L L G L G G L G ') AddSamavrtta('mālatī', ' L L L L G L L G L G L G ') AddSamavrtta('pañcacāmara', ' L G L G L G L G L G L G ') AddSamavrtta('tāmarasa', ' L L L L G L L G L L G G ') AddSamavrtta('kṣamā', ' L L L L L L G G L G G L G ') AddSamavrtta('praharṣiṇī', ' G G G L L L L G L G L G G ') AddSamavrtta('rucirā', ' L G L G L L L L G L G L G ') AddSamavrtta('mattamayūra', ' G G G G — G L L G G L L G G ') AddSamavrtta('mañjubhāṣiṇī', ' L L G L G L L L G L G L G ') AddSamavrtta('nandinī', ' L L G L G L L L G L L G G ') AddSamavrtta('candrikā', ' L L L L — L L G G L G L G G ') AddSamavrtta('asambādhā', ' G G G G G — L L L L L L G G G ') AddSamavrtta('aparājitā', ' L L L L L L G — L G L L G L G ') AddSamavrtta('praharaṇakalikā', ' L L L L L L G — L L L L L L G ') AddSamavrtta('vasantatilakā' , ' G G L G L L L G L L G L G G ') AddSamavrtta('induvadanā', ' G L L L G L L L G L L L G G ') AddSamavrtta('alolā', ' G G G L L G G — G G G L L G G ') AddSamavrtta('śaśikalā', ' L L L L L L L — L L L L L L L G ') AddSamavrtta('mālā', ' L L L L L L — L L L L L L L L G ') AddSamavrtta('maṇiguṇanikara', ' L L L L L L L L — L L L L L L G ') AddSamavrtta('malinī', ' L L L L L L G G — G L G G L G G ') AddSamavrtta('prabhadraka', ' L L L L G L G L L L G L G L G ') AddSamavrtta('elā', ' L L G L G — L L L L L L L L G G ') AddSamavrtta('candralekhā', ' G G G G L G G — G G L G G L G G ') AddSamavrtta('ṛṣabhagajavilasita', ' G L L G L G — L L L L L L L L L G ') AddSamavrtta('vāṇinī', ' L L L L G L G L L L G L G L G G ') AddSamavrtta('śikhariṇī', ' L G G G G G — L L L L L G G L L L G ') AddSamavrtta('pṛthvī', ' L G L L L G L G — L L L G L G G L G ') AddSamavrtta('vaṁśapatrapatita', ' G L L G L G L L L G L L — L L L L G ') AddSamavrtta('hariṇī', ' L L L L L G — G G G G — L G L L G L G ') AddSamavrtta('mandākrāntā', ' G G G G — L L L L L G — G L G G L G G ') AddSamavrtta('narkuṭaka', ' L L L L G L G L L L G L L G L L G ') AddSamavrtta('kokilaka', ' L L L L G L G — L L L G L L — G L L G ') AddSamavrtta('kusumitalatāvellitā', ' G G G G G — L L L L L G — G L G G L G G ') AddSamavrtta('meghavisphurjita', ' L G G G G G — L L L L L G — G L G G L G G ') AddSamavrtta('śārdulavikrīḍita', ' G G G L L G L G L L L G — G G L G G L G ') AddSamavrtta('suvadanā', ' G G G G L G G — L L L L L L G — G G L L L G ') AddSamavrtta('vṛtta', ' G L G L G L G L G L G L G L G L G L G L ') AddSamavrtta('sragdharā', ' G G G G L G G — L L L L L L G — G L G G L G G ') AddSamavrtta('madraka', ' G L L G L G L L L G — L G L L L G L G L L L G ') AddSamavrtta('aśvalalita', ' L L L L G L G L L L G — L G L L L G L G L L L G ') AddSamavrtta('mattākrīḍa', ' G G G G G G G G — L L L L L — L L L L L L L L L G ') AddSamavrtta('tanvī', ' G L L G G — L L L L L L G — G L L G L L L L L L G G ') AddSamavrtta('krauñcapadā', ' G L L G G — G L L G G L L L — L L L L L L L —L L L L G ') AddSamavrtta('bhujaṅgavijṛmbhita', ' G G G G G G G G — L L L L L L L L L L G —L G L L G L G ') AddSamavrtta('apavāha', ' G G G L L L L L L — L L L L L L — L L L L L L — L L G G G ')

drdhaval2785 commented 11 years ago

Listing daNDakas from vRttaratnAkara here.

AddSamavrtta('caṇḍavṛṣṭiprayātadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('arṇadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('arṇavadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('vyāladaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('jīmūtadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('līlākaradaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('uddāmadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('śaṅkhadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('samudradaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('bhujaṅgadaṇḍaka', ' L L L L L L G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G G L G ') AddSamavrtta('pracitakadaṇḍaka', ' L L L L L L L G G L G G L G G L G G L G G L G G L G G ')

drdhaval2785 commented 11 years ago

ardhasamavRttas in vRttaratnAkara:

AddArdhasamavrtta('upacitrā', ' L L G L L G L L G L G ', ' G L L G L L G L L G G ') AddArdhasamavrtta('drutamadhyā', ' G L L G L L G L L G G ', ' L L L L G L L G L L G G ') AddArdhasamavrtta('vegavatī', ' L L G L L G L L G L L G G ', ' G L L G L L G L L G G ') AddArdhasamavrtta('bhadravirāṭ', ' G G L L G L G L G G ', ' G G G L L G L G L G ') AddArdhasamavrtta('ketumatī', ' L L G L G L L L G G ', ' G L L G L G L L L G G ') AddArdhasamavrtta('ākhyānikī', ' G G L G G L L G L G G ', ' L G L G G L L G L G G ') AddArdhasamavrtta('viparītākhyānikī', ' L G L G G L L G L G G ', ' G G L G G L L G L G G ') AddArdhasamavrtta('hariṇaplutā', ' L L G L L G L L G L G ', ' L L L G L L G L L G L G ') AddArdhasamavrtta('aparavaktra', ' L L L L L L G L G L G ', ' L L L L G L L G L G L G ') AddArdhasamavrtta('puṣpitāgrā', ' L L L L L L G L G L G G ', ' L L L L G L L G L G L G G ') AddArdhasamavrtta('yavātparāmatīya', ' G L G L G L G L G L G L ', ' L G L G L G L G L G L G ')

For upajAti -> only the first letter is either laghu / guru.
(G/L) G L G G L L G L G G

drdhaval2785 commented 11 years ago

AddVishamavrtta('padacaturūrdhva', ' ........ ', ' ............ ', ' ................', ' ....................') AddVishamavrtta('āpīḍa', ' L L L L L L G G ', ' L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L L L L L G G ') AddVishamavrtta('kalikā', ' L L L L L L L L L L G G ', ' L L L L L L G G ', ' L L L L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L L L L L G G ') AddVishamavrtta('lavalī', ' L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L G G ', ' L L L L L L G G ', ' L L L L L L L L L L L L L L L L L L G G ') AddVishamavrtta('amṛtadhārā', ' L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L G G ', ' L L L L L L L L L L L L L L L L L L G G ', ' L L L L L L G G ') AddVishamavrtta('udgatā', ' L L G L G L L L G L ', ' L L L L L G L G L G ', ' G L L L L L L G L L G ', ' L L G L G L L L G L G L G ') AddVishamavrtta('saurabhaka', ' L L G L G L L L G L ', ' L L L L L G L G L G ', ' G L G L L L G L L G ', ' L L G L G L L L G L G L G ') AddVishamavrtta('lalita', ' L L G L G L L L G L ', ' L L L L L G L G L G ', ' L L L L L L L L G L L G ', ' L L G L G L L L G L G L G ') AddVishamavrtta('upasthitapracupita', ' G G G L L G L G L G L L G G ', ' L L G L L L L G L G L G G ', ' L L L L L L L L G ', ' L L L L L L L L L L G L L G G ') AddVishamavrtta('vardhamāna', ' G G G L L G L G L G L L G G ', ' L L G L L L L G L G L G G ', ' L L L L L G L L L ', ' L L L L L L L L L L G L L G G ') AddVishamavrtta('śuddhavirāḍārṣabha', ' G G G L L G L G L G L L G G ', ' L L G L L L L G L G L G G ', ' G G L L G L G L G ', ' L L L L L L L L L L G L L G G ')

gāthā is one which doesn't correspond to any of the above pattern.

drdhaval2785 commented 11 years ago

For complete list of Chhandas for the input -

https://www.dropbox.com/s/gwc3lyqbj5frjw7/chhandascode.txt

drdhaval2785 commented 11 years ago

https://github.com/drdhaval2785/Chhandas/commit/e26a5d18e87651bc9cdab957952dfa38c64a79e8

shreevatsa commented 10 years ago

Thanks to the input by Dhaval, I tried adding the metres above (the smaller list of 147 metres from vRttaratnAkara which was typed directly into the comments here, not the bigger list of 1348 metres -- I'll get to those too eventually). See https://github.com/shreevatsa/sanskrit/blob/45416c62219f33ea5815778cc6bf0f747cf44b2c/data_dhaval_vrttaratnakara.py There were some issues:

vvasuki commented 10 years ago

नूनमुपकृतोऽस्म्यहं उपरि तेन लिखितैः वृत्तरत्नाकरवृत्तलक्षणैः। तानि च मम छन्दःकोशे योजितवानधुना ( https://docs.google.com/spreadsheet/ccc?key=0Al_QBT-hoqqVdDhjNVRMTXdsdDVTZG9kcDIwVnhhN0E&usp=drive_web#gid=15 )। तत्र "वृत्तरत्नाकरोक्तिः" नाम स्तम्भे "१" इति सङ्केतितानि वृत्तर्त्नाकरोक्तानि छन्दांसि। विशिष्य तेन यतिथानानि सम्यक् प्रदर्शितानि, दण्डकानि मया बहुकालादीप्सितानि सूचितानीति विशेषमोदहेतू।

एतस्य स्मारणेन श्रीवत्सस्याप्य् कृपा मयि।

vvasuki commented 10 years ago

अवधेयं यत् क्वचित् टङ्कनदोषास् सन्ति उपरि धवललिखिते (ह्रस्वदीर्घप्रमादः), अन्यत्र च छन्दस् त्व् आसीद् अन्यनाम्ना ( http://sanskrit.sai.uni-heidelberg.de/Chanda/HTML/ ) इत्यत्र - तेषु बहुशः नाम्नोः एकाक्षर भेद आसीत्। मया दोषा परिष्कृताः, नामावलिः यथापेक्ष्तं वर्धिता च। श्रियाः उपरनाम त्वस्ति, परन्तु भवद्यन्त्रेण सर्वाणि नामानि प्रदर्श्येरन्।

drdhaval2785 commented 10 years ago

any progress in this meter addition. I have not been keeping close look on the repository recently

shreevatsa commented 7 years ago

An update: Although I said in the very first comment opening this issue that:

But first, I'd like to do a corpus analysis and not include rubbish metres that no poet has used. :-) My preference is to first focus on the metres that one is most likely to encounter in reading classical Sanskrit, and they are also the most beautiful for composition.

and my preference is still for “real” or “useful” metres over noise, I recently (over the last 5 days) gave this some more thought and decided that this is something to be fixed elsewhere in the code (ranking, display, etc.), not by truncating/restricting the data. Let's collect all the data and filter later. Accordingly, I have added the metres contributed by Dhaval (in all the comments above and also at https://github.com/drdhaval2785/Chhandas/commit/e26a5d18e87651bc9cdab957952dfa38c64a79e8) into JSON files (and made the code use the JSON files instead): https://github.com/shreevatsa/sanskrit/blob/98cbd8a/data/vrttaratnakara.json https://github.com/shreevatsa/sanskrit/blob/98cbd8a/data/mishra.json

The .py files in https://github.com/shreevatsa/sanskrit/tree/98cbd8a/data are no longer used (other than metrical_data.py) but I'm keeping them around because they have some hard-learned comments about the messiness of the data, and I need to figure out how to present that better to the user.

The code is a bit brittle because of these changes (assumptions like no-duplicates were violated), so I am still testing locally and have not yet deployed the changes to the website (which may be somewhat unstable now… older versions should still work fine).

Vishvas says there are a few errors so I'll check/reconcile against the data in his spreadsheet next. Once done and deployed I will close this issue because all the data is indeed present now!

shreevatsa commented 6 years ago

Other large lists:

sridatta1 commented 6 years ago

The same list in jayadāman is also in H.D. Velankar's edition of Hemacandra's Chandonuśāsana https://jainelibrary.org/book-detail/?srno=090113 but a better scan. (One needs to upload on archive.org, I couldn't find this book there)

On Sun 29 Jul, 2018 11:00 am Shreevatsa, notifications@github.com wrote:

Other large lists:

-

Velankar's Jayadaman appendix https://archive.org/stream/in.ernet.dli.2015.318664/2015.318664.Jayadaman#page/n191 .

Apte's dictionary revised and enlarged, Appendix A https://archive.org/stream/ApteSanskritEnglishDictionaryV3YaHa1959/Apte_Sanskrit-English%20Dictionary%20v3%20ya-ha_1959#page/n479 especially Appendix A.II https://archive.org/stream/ApteSanskritEnglishDictionaryV3YaHa1959/Apte_Sanskrit-English%20Dictionary%20v3%20ya-ha_1959#page/n493 .

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/shreevatsa/sanskrit/issues/3#issuecomment-408653256, or mute the thread https://github.com/notifications/unsubscribe-auth/AWL561lvoNanDSl85nOpGf98qu20y7Ecks5uLUiQgaJpZM4BINbD .