Skip to main content

MultiLingualString

Project description

https://travis-ci.org/rembish/mls.svg?branch=master https://coveralls.io/repos/rembish/mls/badge.svg https://pypip.in/download/mls/badge.svg

This simple module implements simple unicode-like object, which can contain multiple language mutation of one string. Actually it’s subclass of unicode type (for python 2k) / string type (for py3k) with few helping methods, that allow you to translate your string to another languages.

Here, I’ll show you some usage examples:

from locale import setlocale, LC_ALL
from mls import mls

setlocale(LC_ALL, "en_US.UTF-8")  # Our system locale will be US english

empty = mls()  # same as unicode, but
print(empty.language)  # with .language attribute containing "en"

s = mls("Hello, world!")
t = s.translate_to("ru_RU", u"Здравствуй, мир!")  # generate new ru-mutation
print(t.language)  # => "ru"
print(t)  # => "Здравствуй, мир!"

x = mls("Ahoj", language="cs")  # czech mutation of "Hi"
x <<= "Nazdar"  # Change translation to another
print(repr(x))  # => "cs'Nazdar'"

a = mls({"en": "Bye", "ru": u"Пока", "cs": u"Čau"})
print(a)  # => "Bye"
b = a.translate_to("ru")
print(b)  # => "Пока"
c = a >> "cs"
print(c)  # => "Čau"

v = mls(en="Vodka", pl=u"Wódka", ru=u"Водка")
print(repr(v >> "pl"))  # => "pl'W\xf3dka'"
print(repr(v >> "fr"))  # => "fr'Vodka'" (no translation to french)

# Also you can use any unicode/str methods
print("world" in s)  # => True
print(s[:5])  # => "Hello"

Project details


Download files

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

Source Distribution

mls-1.2.2.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

mls-1.2.2-py2.py3-none-any.whl (5.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file mls-1.2.2.tar.gz.

File metadata

  • Download URL: mls-1.2.2.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mls-1.2.2.tar.gz
Algorithm Hash digest
SHA256 ab1d7f9bf21c7d3a86c3b88e342a36175b7fb3609aa22c15edc6e311aa0b2ed2
MD5 2066e325fafedaf0536ecc7331ef0251
BLAKE2b-256 eb6ec6305320e44abd20810dd8207900b65b3c5a78673e9fc2f1c8dc21269dd2

See more details on using hashes here.

File details

Details for the file mls-1.2.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for mls-1.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7ad426c1d6613ba638a7e9a7e74fe29ed8aef71322b0118d30f24aa1af4b0ecf
MD5 cea9ac4aa68cfd744eb4ffffa822c8a4
BLAKE2b-256 a95a86aac2366757487ebd2da2505716439b0ad07302f8714ba2719e3d5d67ac

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page