Splits text by separator, and limited length language names, combines split text chunks into OrderedDict, or combines back to text.


License
Unlicense
Install
pip install langsplit==0.2.7

Documentation

langsplit

Travis status

Inline translations

.:lt:Labas, Pasauli.:ja:ハロー・ワールド!

Multiline translations

.:cn
你好,世界
.:en
Hello, World

Usage

from langsplit import splitter

result = splitter.split('''.:cn
你好,世界
.:en
Hello, World''')

original = splitter.convert(result)

Capital letters used for machine translations, e.g.:

# pip install requests

from langsplit.extras import append_machine_translations
append_machine_translations('''.:cn
你好,世界
.:en
Hello, World''', langs=['ru', 'cn', 'lt'], intext=True, use_requests=True)
.:cn
你好,世界
.:en
Hello, World
.:RU
Привет мир
.:LT
Sveikas pasaulis

If you want, you can post-process transaltions, e.g.:

from langsplit import extras

def post_process(value, lang):
    return value + '123'

extras.post_translate = post_process

extras.append_machine_translations('''.:cn
你好,世界
.:en
Hello, World''', langs=['ru', 'cn', 'lt'], intext=True, use_requests=True)