pymorphy
========

Возможности библиотеки
----------------------

1. Умеет приводит слово к нормальной форме (например, в ед.ч.,
   И.п. для существительных)::

        >>> from pymorphy import get_morph
        >>> morph = get_morph('dicts/ru')
        >>> print morph.normalize(u"ЛЮДЕЙ")
        ЧЕЛОВЕК

2. Умеет ставить слово в нужную форму. Например, ставить слово во множественное
   число, менять падеж слова и т.д.::

        >>> print morph.inflect_ru(u"СУСЛИК", u"мн,рд") # много кого?
        СУСЛИКОВ

   Есть template filter, который позволяет делать это прямо в шаблоне django:

   .. code-block:: django

       {# в переменной animals "тридцать восемь попугаев и Удав" #}

       {% load pymorphy_tags %}
       {{ animals|inflect:"дт" }} захотелось пройтись по лесу.

       {# выведет "тридцати восьми попугаям и Удаву захотелось пройтись по лесу" #}


3. Умеет возвращать грамматическую информацию о слове (число, род,
   падеж, часть речи и т.д.). Делает это по словарю, для неизвестных
   слов работает предсказатель, если возможных форм несколько - возвращает
   несколько форм::

        >>> info = morph.get_graminfo(u"БУТЯВКОВЕДАМИ")
        >>> print info[0]['norm'] # нормальная форма
        БУТЯВКОВЕД
        >>> print info[0]['class'] # часть речи, С = существительное
        C
        >>> print info[0]['info'] # род, число, падеж и т.д.
        мр,мн,тв


Установка
---------

1. Устанавливаем pymorphy

   ::

       $ pip install pymorphy

2. Скачиваем словари. Для начала можно скачать
   `файл <https://bitbucket.org/kmike/pymorphy/downloads/ru.sqlite-json.zip>`_
   с русскими словарями в sqlite.

   Все словари лежат тут: https://bitbucket.org/kmike/pymorphy/downloads/

3. Распаковываем скачанный файл.


Пример использования
--------------------

::

    from pymorphy import get_morph

    morph = get_morph('<путь/до/папки/в/которую/были/распакованы/скачанные/словари>')

    #слова должны быть в юникоде и ЗАГЛАВНЫМИ
    info = morph.get_graminfo(u'ВАСЯ')


Больше информации можно найти в :doc:`Руководстве<usage/index>`.

.. note::

    В pymorphy все, что не относится к django, можно использовать без django.

Лицензия, полезные ссылки и т.д.
--------------------------------

Лицензия - MIT.

Должно работать на windows и \*nix-системах, python 2.5, 2.6 и 2.7.
Python 2.4 не поддерживается.

* `Обсуждение`_ (тут можно задавать вопросы, делиться опытом, предлагать идеи)
* `Сообщить об ошибке <https://bitbucket.org/kmike/pymorphy/issues/new/>`_
* `Репозиторий с исходным кодом <https://bitbucket.org/kmike/pymorphy/>`_

Подключайтесь к разработке! Замечания, исправления, документация, патчи в любом
виде всегда приветствуются.

Если у вас какой-то вопрос, пишите о нем, по возможности,
в `гугл-группу`_ - найденным ответом смогут потом воспользоваться другие люди.

.. _Обсуждение: https://groups.google.com/forum/#!forum/pymorphy
.. _гугл-группу: https://groups.google.com/forum/#!forum/pymorphy
