Usage

Top-level package for prakriya.

class prakriya.Prakriya[source]

Generate a prakriya class.

Example

To use prakriya in a project:

>>> from prakriya import Prakriya
>>> p = Prakriya()

If you are using the library the first time, be patient. This will take a long time, because the data file (30 MB) is being downloaded.

If you can spare around 600 MB space, it is highly recommended to decompress the tar.gz first time. Subsequent actions will be very fast. This is one time requirement. If the data is not decompressed, the code will read from tar.gz file every time. It introduces slowness to a great extent. So highly recommended to decompress.

>>> p.decompress()

Now you are ready to roll!

The generic format for usage is as follows:

>>> p.get_info(verbform, field)

verbform is mandatory. It is the verb form to be investigated. The input should be in SLP1 encoding.

field is optional.

Actual usage examples will be like the following.

>>> p.get_info('Bavati')
>>> p.get_info('Bavati', 'prakriya')
>>> p.get_info('Bavati', 'verb')

Valid values of field and expected output are as follows.

prakriya - Return step by step derivation.

verb - Return verb in Devanagari without accent marks.

verbaccent - Return the verb in Devanagari with accent marks.

lakara - Return the lakAra (tense / mood) in which this form is generated.

gana - Return the gaNa (class) of the verb.

meaning - Return meaning of the verb in SLP1 transliteration.

number - Return number of the verb in dhAtupATha.

madhaviya - Return link to mAdhaviyadhAtuvRtti. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

kshiratarangini - Return link to kSIrataraGgiNI. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

dhatupradipa - Return link to dhAtupradIpa. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

jnu - Return link to JNU site for this verb form. http://sanskrit.jnu.ac.in/tinanta/tinanta.jsp is the home page.

uohyd - Return link to UoHyd site for this verb form. http://sanskrit.uohyd.ac.in/cgi-bin/scl/skt_gen/verb/verb_gen.cgi is the home page.

upasarga - Return upasarga, if any. Currently we do not support verb forms with upasargas.

padadecider_id - Return the rule number which decides whether the verb is parasmaipadI, AtmanepadI or ubhayapadI.

padadecider_sutra - Return the rule text which decides whether the verb is parasmaipadI, AtmanepadI or ubhayapadI.

it_id - Returns whether the verb is seT, aniT or veT, provided the form has iDAgama.

it_status - Returns whether the verb form has iDAgama or not. seT, veT, aniT are the output.

it_sutra - Returns rule number if iDAgama is caused by some special rule.

purusha - Returns the purusha of the given verb form.

vachana - Returns the vacana of the given verb form.

If you want to set the input or output transliteration, follow these steps.

>>> from prakriya import Prakriya
>>> p = Prakriya()
>>> p.input_translit('hk') # Customize 'hk'
>>> p.output_translit('devanagari') # Customize 'devanagari'
>>> p.get_info('bhavati') # Input in HK and output in Devanagari.
>>> p.input_translit('devanagari')
>>> p.output_translit('iast')
>>> p.get_info('गच्छति') # Input in Devanagari and output in IAST.

Valid transliterations are slp1, itrans, hk, iast, devanagari, wx, bengali, gujarati, gurmukhi, kannada, malayalam, oriya and telugu. They can be used both as input transliteration and output transliteration.

decompress()[source]

Decompress the tar file if user asks for it.

get_data(verbform, tar, intran='slp1', outtran='slp1')[source]

Get whole data from the json file for given verb form.

get_info(verbform, field='prakriya')[source]

Return the data requested by user.

input_translit(tran)[source]

Set input transliteration.

output_translit(tran)[source]

Set output transliteration.

class prakriya.VerbFormGenerator[source]

Return the verb form for given verb, tense, purusha-vachana or suffix.

Example

To get verb form for given verb, tense, suffix / (purusha and vachana) in a project:

>>> from prakriya import VerbFormGenerator
>>> g = VerbFormGenerator()

There are four ways to get verb forms for given verb.

>>> g.getforms(inputverb, lakara='', purusha='', vachana='')
>>> g.getforms(inputverb, lakara='', suffix='')
>>> g[verb, tense, purusha, vachana]
>>> g[verb, tense, suffix]
# Examples of four formats are as follows. Default input transliteration is SLP1.
>>> g.getforms('BU', 'law', 'praTama', 'bahu')
>>> g.getforms('BU', 'law', 'Ji')
>>> g['BU', 'law', 'praTama', 'eka']
>>> g['BU', 'law', 'tip']

__getitem__ method is discouraged. Will be deprecated in later versions.

For using transliterations in VerbFormGenerator class, use as below.

>>> from prakriya import VerbFormGenerator
>>> g = VerbFormGenerator()
>>> g.input_translit('hk') # Customize 'hk'
>>> g.output_translit('devanagari') # Customize 'devanagari'
>>> g.getforms('bhU', 'laT', 'prathama', 'bahu') # Input in HK and output in Devanagari.

Valid transliterations are slp1, itrans, hk, iast, devanagari, wx, bengali, gujarati, gurmukhi, kannada, malayalam, oriya and telugu. They can be used both as input transliteration and output transliteration.

getforms(inputverb, lakara='', purusha='', vachana='', suffix='')[source]

Get verb form data for given input.

input_translit(tran)[source]

Set input transliteration.

output_translit(tran)[source]

Set output transliteration.

prakriya

Console script to get derivation and other information for given verb form.

$ prakriya [OPTIONS] VERBFORM [FIELD]
Valid values of FIELD and expected output are as follows.

prakriya - Return step by step derivation.

verb - Return verb in Devanagari without accent marks.

verbaccent - Return the verb in Devanagari with accent marks.

“lakara” - Return the lakAra (tense / mood) in which this form is generated.

purusha - Returns purusha of the given verb form.

vachana - Returns vachana of the given verb form.

gana - Return the gaNa (class) of the verb.

meaning - Return meaning of the verb in SLP1 transliteration.

number - Return number of the verb in dhAtupATha.

madhaviya - Return link to mAdhaviyadhAtuvRtti. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

kshiratarangini - Return link to kSIrataraGgiNI. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

dhatupradipa - Return link to dhAtupradIpa. http://sanskrit.uohyd.ac.in/scl/dhaatupaatha is the home page.

jnu - Return link to JNU site for this verb form. http://sanskrit.jnu.ac.in/tinanta/tinanta.jsp is the home page.

uohyd - Return link to UoHyd site for this verb form. http://sanskrit.uohyd.ac.in/cgi-bin/scl/skt_gen/verb/verb_gen.cgi is the home page.

upasarga - Return upasarga, if any. Currently we do not support verb forms with upasargas.

padadecider_id - Return the rule number which decides whether the verb is parasmaipadI, AtmanepadI or ubhayapadI.

padadecider_sutra - Return the rule text which decides whether the verb is parasmaipadI, AtmanepadI or ubhayapadI.

it_id - Returns whether the verb is seT, aniT or veT, provided the form has iDAgama.

it_status - Returns whether the verb form has iDAgama or not. seT, veT, aniT are the output.

it_sutra - Returns rule number if iDAgama is caused by some special rule.

prakriya [OPTIONS] VERBFORM [FIELD]

Options

--intran <intran>
Options:slp1|itrans|hk|iast|devanagari|wx|bengali|gujarati|gurmukhi|kannada|malayalam|oriya|telugu
--outtran <outtran>
Options:slp1|itrans|hk|iast|devanagari|wx|bengali|gujarati|gurmukhi|kannada|malayalam|oriya|telugu

Arguments

VERBFORM

Required argument

FIELD

Optional argument

generate

Console script to get verb form for given verb, lakara, purusha and vachana.

$ generate [OPTIONS] VERB LAKARA PURUSHA VACHANA

LAKARA can take law, liw, luw, lfw, low, laN, viDiliN, ASIrliN, luN, lfN values.

PURUSHA can take praTama, maDyama, uttama values.

VACHANA can take eka, dvi, bahu values.

generate [OPTIONS] VERB LAKARA PURUSHA VACHANA

Options

--intran <intran>
Options:slp1|itrans|hk|iast|devanagari|wx|bengali|gujarati|gurmukhi|kannada|malayalam|oriya|telugu
--outtran <outtran>
Options:slp1|itrans|hk|iast|devanagari|wx|bengali|gujarati|gurmukhi|kannada|malayalam|oriya|telugu

Arguments

VERB

Required argument

LAKARA

Required argument

PURUSHA

Required argument

VACHANA

Required argument