Skip to main content

Very compact Japanese tokenizer

Project description

TinySegmenter
=============

“TinySegmenter in Python” is a Python port_ by Masato Hagiwara of TinySegmenter_, which is an extremely compact Japanese tokenizer originally written in JavaScript by Mr. Taku Kudo.

The library has been finally packaged by Jehan. It resulted into this fork because Masako Hagiwara did not answer emails, and packaging patches
could therefore not be committed upstream. But this is a friendly fork, and Masako Hagiwara is welcome to take back maintainance over his
project.
For the time being, I (Jehan) took up the maintenance, so please refer to this new website_ as being official, and
direct any new patch_ there. I will follow up on patchs and bug reports, but probably won't maintain an active development. Anyone wishing to
improve the library is welcome to participate and will be gladly given committer rights.

It works on Python 2.6 or above (works on Python 3 too).

.. _port: http://lilyx.net/tinysegmenter-in-python/
.. _TinySegmenter: http://chasen.org/~taku/software/TinySegmenter/
.. _website: http://tinysegmenter.tuxfamily.org/

Authors
-------

See all authors and contributors in ``AUTHORS`` file.

Download and Installation
-------------------------

This library can be installed the common ways: with a setup.py, as a pip package...
See the ``INSTALL`` file in the package for more details.

If you simply want to download the source package, refer to the pypi repository: http://pypi.python.org/pypi/tinysegmenter

Development version can be downloaded anonymously at the Git repository::

$ git clone git://git.tuxfamily.org/gitroot/tinysegmente/tinysegmenter.git

or browsed online at: http://git.tuxfamily.org/tinysegmente/tinysegmenter/

Usage
-----

Example code for direct usage::

> import tinysegmenter
> segmenter = tinysegmenter.TinySegmenter()
> print(' | '.join(segmenter.tokenize(u"私の名前は中野です")))
私 | の | 名前 | は | 中野 | です


TinySegmenter‘s interface is compatible with ``NLTK``’s ``TokenizerI`` class, although the distribution does not directly depend on NLTK.
Here is one way to use it as a tokenizer in NLTK (order of the multiple base classes matters)::

import nltk.tokenize.api

class myTinySegmenter(tinysegmenter.TinySegmenter, nltk.tokenize.api.TokenizerI):
pass
segmenter = myTinySegmenter()
# This segmenter can be used any place which expects a NLTK's TokenizerI subclass.

For more about NLTK (*Natural Language Toolkit* module), see: http://nltk.org/api/nltk.tokenize.html#nltk.tokenize.api.TokenizerI

.. _patch:

Contact, Bugs and Contributing
------------------------------

All bug, patch, question, etc. can be sent to `tinysegmenter` at `zemarmot` dot `net`.

License
-------

This package is distributed under a New BSD License (see ``COPYING`` file).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
tinysegmenter-0.3.tar.gz (16.9 kB) Copy SHA256 hash SHA256 Source None Jul 23, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page