{
"info": {
"author": "Wichert Akkerman",
"author_email": "wichert@wiggy.net",
"bugtrack_url": null,
"classifiers": [
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: End Users/Desktop",
"License :: DFSG approved",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3"
],
"description": "Translating via spreadsheets\n============================\n\nNot all translators are comfortable with using PO-editors such as `Poedit\n`_ or translation tools like `Transifex\n`_. For them this package provides simple tools to\nconvert PO-files to `xlsx`-files and back again. This also has another benefit:\nit is possible to include multiple languages in a single spreadsheet, which can be\nhelpful when translating to multiple similar languages at the same time (for\nexample simplified and traditional chinese).\n\nThe format for spreadsheets is simple: \n\n* If any message use a message context the first column will specify the\n context. If message contexts are not used this column will be skipped.\n* The next (or first) column contains the message id. This is generally the\n canonical text.\n* A set of columns for any requested comment types (message occurrences, source\n comments or translator comments).\n* A column with the translated text for each locale. Fuzzy translations are\n marked in italic.\n\nThe first row contains the column headers. *``xls-to-po`` uses these to locale\ninformation in the file, so make sure never to change these!*\n\n\nCatalog to spreadshseet\n-----------------------\n\nConverting one or more PO-files to an xls file is done with the `po-to-xls`\ncommand::\n\n po-to-xls nl.po\n\nThis will create a new file `messages.xlsx` with the Dutch translations. Multiple\nPO files can be specified::\n\n po-to-xls -o texts.xlsx zh_CN.po zh_TW.po nl.po\n\nThis will generate a ``texts.xlsx`` file with all simplified Chinese,\ntraditional Chinese and Dutch translations.\n\n``po-to-xls`` will guess the locale for a PO file by looking at the `Language`\nkey in the file metadata, falling back to the filename of no language informatino\nis specified. You can override this by explicitly specifying the locale on the\ncommandline. For example::\n\n po-to-xs nl:locales/nl/LC_MESSAGES/mydomain.po\n\nThis will read ``locales/nl/LC_MESSAGES/mydomain.po`` and treat it as Dutch\n(``nl`` locale).\n\nYou can also use the ``-c`` or ``--comments`` option with one of those choices:\n``translator``, ``extracted``, ``reference``, ``all`` to add more column in the\noutput.\n\n\nSpreadshseet to catalog\n-----------------------\n\nTranslations can be converted back from a spreadsheet into a PO-file using the\n`xls-to-po` command::\n\n xls-to-po nl texts.xlsx nl.po\n\nThis will take the Dutch (`nl`) translations from `texts.xls`, and (re)create a\n``nl.po`` file using those. You can merge those into an existing po-file using\na tool like gettext's ``msgmerge``.\n\nChangelog\n=========\n\n1.4.2 - May 11, 2017\n-------------------------\n\n- Fix another problem with message context handling in po-to-xls.\n\n\n1.4.1 - May 11, 2017\n-------------------------\n\n- Fix po-to-xls handling of messages with a context.\n\n\n1.4.0 - December 23, 2016\n-------------------------\n\n- Fix compatibility with current OpenPyxl releases.\n\n- Fix Python 3 compatibility.\n\n\n1.3.0 - July 6, 2015\n--------------------\n\n- Fix another ReST syntax error in package description.\n\n- Correcty handle rows with a missing translation.\n\n\n1.2.0 - June 12, 2015\n---------------------\n\n- Fix ReST syntax error in package description.\n\n- Skip rows without a message id.\n\n\n1.1.0 - 25 March 2015\n---------------------\n\n- Use `openpyxl `_ instead of xlrd/xlwt. This\n fixes warnings about cell type conversions when opening generated xlsx files\n in Apple Numbers (and possibly others).\n\n\n1.0.0 - 15 March 2015\n---------------------\n\n- Split po-excel conversion tools out from `lingua `_.\n\n- Simplify CLI interfaces.\n",
"description_content_type": null,
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/wichert/po-xls",
"keywords": "translation po gettext Babel lingua",
"license": "BSD",
"maintainer": "",
"maintainer_email": "",
"name": "poxls",
"package_url": "https://pypi.org/project/poxls/",
"platform": "",
"project_url": "https://pypi.org/project/poxls/",
"project_urls": {
"Homepage": "https://github.com/wichert/po-xls"
},
"release_url": "https://pypi.org/project/poxls/1.4.2/",
"requires_dist": null,
"requires_python": "",
"summary": "Convert between Excel and PO files",
"version": "1.4.2"
},
"last_serial": 2866873,
"releases": {
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "8753eb00cc68aa271a5e12907ac5d1d6",
"sha256": "c9fd4e5e602c6ca1f771dadf264d46111f8cb18244f46974c89edd7e15d7ae04"
},
"downloads": -1,
"filename": "poxls-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "8753eb00cc68aa271a5e12907ac5d1d6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5804,
"upload_time": "2015-03-15T21:00:24",
"url": "https://files.pythonhosted.org/packages/79/b7/330510bbab26aabce2e4d28d151d5afa1d3644692903857b79b0fdcb1306/poxls-1.0.0.tar.gz"
}
],
"1.1.0": [
{
"comment_text": "",
"digests": {
"md5": "b7d3b17e1286767dc022fa606e4d21b9",
"sha256": "254c5d1449e0b942982219f39159b09b05d6fea5f76d9796f312bb4ce8a26b9d"
},
"downloads": -1,
"filename": "poxls-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "b7d3b17e1286767dc022fa606e4d21b9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5531,
"upload_time": "2015-03-25T07:39:35",
"url": "https://files.pythonhosted.org/packages/ab/64/fa13381b0dc646db115f110df49360f9f09cb953e00e79f6155ecd5e91aa/poxls-1.1.0.tar.gz"
}
],
"1.2.0": [
{
"comment_text": "",
"digests": {
"md5": "58a36b94a5c6979cbdaaa34f0be0f6f0",
"sha256": "a19f8746494c4f46ed3a640c0c8da34bbc268223bdfbf442c270852fb9d9b601"
},
"downloads": -1,
"filename": "poxls-1.2.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "58a36b94a5c6979cbdaaa34f0be0f6f0",
"packagetype": "bdist_wheel",
"python_version": "2.7",
"requires_python": null,
"size": 8669,
"upload_time": "2015-06-12T22:55:31",
"url": "https://files.pythonhosted.org/packages/88/e9/f1b69ba05a128e4be46ecfce80345469bff5cd755bf1d07e2165f4f99b5d/poxls-1.2.0-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "b987807e6ace5443fb5a3d1ee2e985d6",
"sha256": "21873c640df980e5467198419e459d8924fdbb9a25b0076ae8e918e005d441cf"
},
"downloads": -1,
"filename": "poxls-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "b987807e6ace5443fb5a3d1ee2e985d6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5647,
"upload_time": "2015-06-12T22:55:28",
"url": "https://files.pythonhosted.org/packages/54/92/99776fd1fb229e502212da5ea661a2fdc65078164ab9b3716452d2990d28/poxls-1.2.0.tar.gz"
}
],
"1.3.0": [
{
"comment_text": "",
"digests": {
"md5": "08bc5f9d42a4cefb07c88f02f2883a9e",
"sha256": "2fcc4d1f569ec9106d5ffca6008135ef2bcb21c7c9a09b67e5a6e3febb753399"
},
"downloads": -1,
"filename": "poxls-1.3.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "08bc5f9d42a4cefb07c88f02f2883a9e",
"packagetype": "bdist_wheel",
"python_version": "2.7",
"requires_python": null,
"size": 8764,
"upload_time": "2015-07-06T12:10:47",
"url": "https://files.pythonhosted.org/packages/4d/14/005c2783990380f45b985747633fd1d1e542c3642b6d03eaafd4397ea9ad/poxls-1.3.0-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "eb458c6176e714a07ee83200fa47fe61",
"sha256": "eb85311b325dae4f31da20d4e3e6ac957a351aad238f0ac0da2ee6e6bfd6a0f8"
},
"downloads": -1,
"filename": "poxls-1.3.0.tar.gz",
"has_sig": false,
"md5_digest": "eb458c6176e714a07ee83200fa47fe61",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5693,
"upload_time": "2015-07-06T12:10:51",
"url": "https://files.pythonhosted.org/packages/16/1f/5fb424dc8897c1b440c65b64b7d02869372b34787c09a8d99d4fbb334bbd/poxls-1.3.0.tar.gz"
}
],
"1.4.0": [
{
"comment_text": "",
"digests": {
"md5": "68e23c60a20a535ed5d913be479922ea",
"sha256": "27de3d418fbd3ad4ac8f77a34459ae8014f4731a03922466fc7a99eec76c6d6c"
},
"downloads": -1,
"filename": "poxls-1.4.0-py2-none-any.whl",
"has_sig": false,
"md5_digest": "68e23c60a20a535ed5d913be479922ea",
"packagetype": "bdist_wheel",
"python_version": "2.7",
"requires_python": null,
"size": 8880,
"upload_time": "2016-12-23T09:30:45",
"url": "https://files.pythonhosted.org/packages/d2/9b/fc1de9a8f89272e4a15892bdda053236b853e24d5b70ab3d0c224b72a035/poxls-1.4.0-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "d8f22a05b14401b7336f29bf7e6a0e9a",
"sha256": "b04515e612707c7e6c9333267baee3ac0d859976d8bde169b5f350488bd8a6b4"
},
"downloads": -1,
"filename": "poxls-1.4.0.tar.gz",
"has_sig": false,
"md5_digest": "d8f22a05b14401b7336f29bf7e6a0e9a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5784,
"upload_time": "2016-12-23T09:30:42",
"url": "https://files.pythonhosted.org/packages/e1/6f/1fee515737e1b312d68222823c7636753486ec4e29c173319e1a0c5946d2/poxls-1.4.0.tar.gz"
}
],
"1.4.1": [
{
"comment_text": "",
"digests": {
"md5": "b31c244f40a99bb37d27db0ba405bb62",
"sha256": "daa3d8b4092d772412252c0540363dda63d762e2920f536d39ba3d113ef7e0c0"
},
"downloads": -1,
"filename": "poxls-1.4.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "b31c244f40a99bb37d27db0ba405bb62",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 9129,
"upload_time": "2017-05-11T11:21:38",
"url": "https://files.pythonhosted.org/packages/69/c3/1425eda0641a22008e6710e4599bbe3cfe806698ea103704b51c17e7ec1a/poxls-1.4.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "1ee25b53769ba9112fba89479f5e691d",
"sha256": "96ce6f78ce3e13eabc557bdc06286aa50242bf696803458cc5a27c13869d29b4"
},
"downloads": -1,
"filename": "poxls-1.4.1.tar.gz",
"has_sig": false,
"md5_digest": "1ee25b53769ba9112fba89479f5e691d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6004,
"upload_time": "2017-05-11T11:21:36",
"url": "https://files.pythonhosted.org/packages/14/ff/3ec00a8f0891ea590998ac72aba30030aad7c98eb872f3d296efdf2ad755/poxls-1.4.1.tar.gz"
}
],
"1.4.2": [
{
"comment_text": "",
"digests": {
"md5": "f07ea7d0421848e973ef52d014c04c43",
"sha256": "3ab55288e596a4c759536e08bfc6c64152bf182e1a50546c579b04a496187dfa"
},
"downloads": -1,
"filename": "poxls-1.4.2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "f07ea7d0421848e973ef52d014c04c43",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 9178,
"upload_time": "2017-05-11T12:40:35",
"url": "https://files.pythonhosted.org/packages/2b/b2/dccfe885329dd58866698dc396d36508ca835166f474218261fd00acd9e8/poxls-1.4.2-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "2aa5009e2571fa41f4dbdf8323e0a717",
"sha256": "86409c243009992cfa0356447dfc039e495912906e4f0e84d059a0feab5da17c"
},
"downloads": -1,
"filename": "poxls-1.4.2.tar.gz",
"has_sig": false,
"md5_digest": "2aa5009e2571fa41f4dbdf8323e0a717",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6051,
"upload_time": "2017-05-11T12:40:33",
"url": "https://files.pythonhosted.org/packages/2a/b1/4df511ef23bdf324f8b555afa7f472c64db5e948bea053d09bfab6a3ba78/poxls-1.4.2.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "f07ea7d0421848e973ef52d014c04c43",
"sha256": "3ab55288e596a4c759536e08bfc6c64152bf182e1a50546c579b04a496187dfa"
},
"downloads": -1,
"filename": "poxls-1.4.2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "f07ea7d0421848e973ef52d014c04c43",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 9178,
"upload_time": "2017-05-11T12:40:35",
"url": "https://files.pythonhosted.org/packages/2b/b2/dccfe885329dd58866698dc396d36508ca835166f474218261fd00acd9e8/poxls-1.4.2-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "2aa5009e2571fa41f4dbdf8323e0a717",
"sha256": "86409c243009992cfa0356447dfc039e495912906e4f0e84d059a0feab5da17c"
},
"downloads": -1,
"filename": "poxls-1.4.2.tar.gz",
"has_sig": false,
"md5_digest": "2aa5009e2571fa41f4dbdf8323e0a717",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6051,
"upload_time": "2017-05-11T12:40:33",
"url": "https://files.pythonhosted.org/packages/2a/b1/4df511ef23bdf324f8b555afa7f472c64db5e948bea053d09bfab6a3ba78/poxls-1.4.2.tar.gz"
}
]
}