{ "info": { "author": "Aleksey Rembish", "author_email": "alex@rembish.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Internationalization", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "MultiLingualString for Python (2k and 3k)\n=========================================\n\n.. image:: https://travis-ci.org/rembish/mls.svg?branch=master\n :target: https://travis-ci.org/rembish/mls\n\n.. image:: https://coveralls.io/repos/rembish/mls/badge.svg\n :target: https://coveralls.io/r/rembish/mls\n\n.. image:: https://pypip.in/download/mls/badge.svg\n :target: https://pypi.python.org/pypi/mls\n\nThis simple module implements simple unicode-like object, which can contain\nmultiple language mutation of one string. Actually it's subclass of unicode\ntype (for python 2k) / string type (for py3k) with few helping methods,\nthat allow you to translate your string to another languages.\n\nHere, I'll show you some usage examples:\n\n.. code-block:: python\n\n from locale import setlocale, LC_ALL\n from mls import mls\n\n setlocale(LC_ALL, \"en_US.UTF-8\") # Our system locale will be US english\n\n empty = mls() # same as unicode, but\n print(empty.language) # with .language attribute containing \"en\"\n\n s = mls(\"Hello, world!\")\n t = s.translate_to(\"ru_RU\", u\"\u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439, \u043c\u0438\u0440!\") # generate new ru-mutation\n print(t.language) # => \"ru\"\n print(t) # => \"\u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439, \u043c\u0438\u0440!\"\n\n x = mls(\"Ahoj\", language=\"cs\") # czech mutation of \"Hi\"\n x <<= \"Nazdar\" # Change translation to another\n print(repr(x)) # => \"cs'Nazdar'\"\n\n a = mls({\"en\": \"Bye\", \"ru\": u\"\u041f\u043e\u043a\u0430\", \"cs\": u\"\u010cau\"})\n print(a) # => \"Bye\"\n b = a.translate_to(\"ru\")\n print(b) # => \"\u041f\u043e\u043a\u0430\"\n c = a >> \"cs\"\n print(c) # => \"\u010cau\"\n\n v = mls(en=\"Vodka\", pl=u\"W\u00f3dka\", ru=u\"\u0412\u043e\u0434\u043a\u0430\")\n print(repr(v >> \"pl\")) # => \"pl'W\\xf3dka'\"\n print(repr(v >> \"fr\")) # => \"fr'Vodka'\" (no translation to french)\n\n # Also you can use any unicode/str methods\n print(\"world\" in s) # => True\n print(s[:5]) # => \"Hello\"", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rembish/mls", "keywords": null, "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "mls", "package_url": "https://pypi.org/project/mls/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/mls/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/rembish/mls" }, "release_url": "https://pypi.org/project/mls/1.2.2/", "requires_dist": null, "requires_python": null, "summary": "MultiLingualString", "version": "1.2.2" }, "last_serial": 1503356, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "dd48a3b94ce6373b217634f21ba7ec93", "sha256": "ee093f80e42487ab437a0c35c7c2c4429e6744377c1480436943d43c646cdd55" }, "downloads": -1, "filename": "mls-1.0.1.tar.gz", "has_sig": false, "md5_digest": "dd48a3b94ce6373b217634f21ba7ec93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2582, "upload_time": "2015-03-18T15:14:53", "url": "https://files.pythonhosted.org/packages/76/7e/08a28591a64e7a4c31fa52d61967aceb2cffe9dc782b38199fb7d0f18145/mls-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "c48b0e3f17e0df4cbaec72eed856906d", "sha256": "e77caddcb0ab46d4478cb99571ef9da1756619fb7ccf7cf80f73c17ee15a1d73" }, "downloads": -1, "filename": "mls-1.0.2.tar.gz", "has_sig": false, "md5_digest": "c48b0e3f17e0df4cbaec72eed856906d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2675, "upload_time": "2015-03-29T17:38:02", "url": "https://files.pythonhosted.org/packages/63/8c/07b15a5ddebd16969c2de5ecba7dc158a41ddab49f1900738a6879fd73ff/mls-1.0.2.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "855b4a70af73fe04a4d2c99a0be6db70", "sha256": "afee45b749556f17e1cd64497d583f1e757eed7c0e60c3d1c31f18cde2fe00d2" }, "downloads": -1, "filename": "mls-1.1.0.tar.gz", "has_sig": false, "md5_digest": "855b4a70af73fe04a4d2c99a0be6db70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3271, "upload_time": "2015-04-01T14:36:41", "url": "https://files.pythonhosted.org/packages/a0/5b/3c2e1d89feee489fe08818ae3c7a168f061d7925fff8fc55578757e713fc/mls-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "55e409ac01228d9a8b5e95e2f358cd62", "sha256": "8df83ae3c29e859220d1567c0e26d502876367a12b4498963755d125b56a35cd" }, "downloads": -1, "filename": "mls-1.2.0.tar.gz", "has_sig": false, "md5_digest": "55e409ac01228d9a8b5e95e2f358cd62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3486, "upload_time": "2015-04-01T15:08:36", "url": "https://files.pythonhosted.org/packages/c3/8f/71c04d35518ea086108e06d13db26135036588853539961e34e549ea19c0/mls-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "c8e3e0cdf5426403d2f2496bd13dcc0f", "sha256": "b8b5fbc13634e519cf71165b580802d0b2ed9059ee04e103d2ac54c56e8615a9" }, "downloads": -1, "filename": "mls-1.2.1.tar.gz", "has_sig": false, "md5_digest": "c8e3e0cdf5426403d2f2496bd13dcc0f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3487, "upload_time": "2015-04-01T15:16:53", "url": "https://files.pythonhosted.org/packages/ac/81/802e49e16ff8d065e6d2cfdad0189d7b5d343decbc7c3b75f6efd7433eaa/mls-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "cea9ac4aa68cfd744eb4ffffa822c8a4", "sha256": "7ad426c1d6613ba638a7e9a7e74fe29ed8aef71322b0118d30f24aa1af4b0ecf" }, "downloads": -1, "filename": "mls-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cea9ac4aa68cfd744eb4ffffa822c8a4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5404, "upload_time": "2015-04-13T16:38:13", "url": "https://files.pythonhosted.org/packages/a9/5a/86aac2366757487ebd2da2505716439b0ad07302f8714ba2719e3d5d67ac/mls-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2066e325fafedaf0536ecc7331ef0251", "sha256": "ab1d7f9bf21c7d3a86c3b88e342a36175b7fb3609aa22c15edc6e311aa0b2ed2" }, "downloads": -1, "filename": "mls-1.2.2.tar.gz", "has_sig": false, "md5_digest": "2066e325fafedaf0536ecc7331ef0251", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3627, "upload_time": "2015-04-13T16:38:09", "url": "https://files.pythonhosted.org/packages/eb/6e/c6305320e44abd20810dd8207900b65b3c5a78673e9fc2f1c8dc21269dd2/mls-1.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cea9ac4aa68cfd744eb4ffffa822c8a4", "sha256": "7ad426c1d6613ba638a7e9a7e74fe29ed8aef71322b0118d30f24aa1af4b0ecf" }, "downloads": -1, "filename": "mls-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cea9ac4aa68cfd744eb4ffffa822c8a4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5404, "upload_time": "2015-04-13T16:38:13", "url": "https://files.pythonhosted.org/packages/a9/5a/86aac2366757487ebd2da2505716439b0ad07302f8714ba2719e3d5d67ac/mls-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2066e325fafedaf0536ecc7331ef0251", "sha256": "ab1d7f9bf21c7d3a86c3b88e342a36175b7fb3609aa22c15edc6e311aa0b2ed2" }, "downloads": -1, "filename": "mls-1.2.2.tar.gz", "has_sig": false, "md5_digest": "2066e325fafedaf0536ecc7331ef0251", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3627, "upload_time": "2015-04-13T16:38:09", "url": "https://files.pythonhosted.org/packages/eb/6e/c6305320e44abd20810dd8207900b65b3c5a78673e9fc2f1c8dc21269dd2/mls-1.2.2.tar.gz" } ] }