{ "info": { "author": "Martin Vrbov\u010dan", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "Jhlangtool\n==========\n\n\nJhlangtool is a command line tool built for processing translations in the form of .json files.\nIt is divided into multiple different utilities, each accessed by a keyword.\n\nIt currently supports:\n\n- Generating an excel workbook from translation json files\n- Generating json from a corresponding excel workbook\n\nInstallation\n------------\n\nInstall and update using pip_:\n\n.. code-block:: text\n\n $ pip install jhlangtool\n\nThis should add jhlangtool to the system's path variable, allowing you to call it from\nthe command line.\n\n.. _pip: https://pip.pypa.io/en/stable/quickstart/\n\nUtilities\n---------\n\nGenerating an excel workbook from translation json files\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nThe *generateExcel* or *toExcel* utility generates an excel workbook listing\nthe values of json files. It takes the base directory as an argument, which is the directoy in\nwhich the language directories are stored. It generates one spreadsheet for every json file,\nand a column for every language (see example spreadsheet below). The first value in\nthe spreadsheet (first row, first column) will be the json file name when converting back into\njson with the *generateJson* or *toJson* utility.\n\n\n\n\n**Note** that currently, it only works\nif the json files are direct children from language directories (it will work on\n``\"./i18n/en/example.json\"``, but it will not work on ``\"./i18n/en/admin/example.json\"``\nbecause *example.json* is not a direct child of *en*). Also, any empty string value in the json file\nwill be replaced by the empty string identifier ($JHEMPTY by default). The identifier will be converted back\ninto an empty string when using the generateJson or toJson utility.\n\n\n.. code-block:: text\n\n $ jhlangtool generateExcel [options]\n\n\nExample directory tree:\n\n.. code-block:: text\n\n I18n <-- The base directory\n |\n |-+ de\n | |- audits.json\n | |- dashboard.json\n | |- login.json\n |\n |-+ en\n | |- audits.json\n | |- dashboard.json\n | |- login.json\n |\n |-+ es\n | |- audits.json\n | |- dashboard.json\n | |- login.json\n | |- extra.json <--- The language directories don't necessary have to have the same json files.\n | If a file is missing in other directories, the excel file wil treat is as missing keys.\n |\n |-+ fr\n | |- audits.json\n | |- dashboard.json\n | |- login.json\n\nWhen the command ``$ jhlangtool generateExcel ./i18n`` is used on the example input directory, it\ngenerates an excel file. The audits spreadsheet of that excel file (filled with mock data):\n\n+-------------+----------+---------+---------+---------+\n| audits.json | de | en | es | fr |\n+=============+==========+=========+=========+=========+\n| | | | | |\n+-------------+----------+---------+---------+---------+\n| example/key | Hallo | Hello | Hola | Bonjour |\n+-------------+----------+---------+---------+---------+\n| example/key2| Beispiel | Example | Ejemplo | Exemple |\n+-------------+----------+---------+---------+---------+\n\n**Options**\n -f, --filepath The path to the excelfile. Must end with the excel filename and the .xlsx extension. Default is ./output.xlsx.\n\n -s, --separator The separator for the keys in the excel file. Default is \"/\".\n\n -i, --identifier The empty str ( \"\" <--- ) identifier\n\n -v, --verbose Enables verbose output (outputs which files are currently being processed and which directory is currently being checked for new files)\n\n -q, --quiet Disables writing to stdout (disables outputting anything)\n\n -h, --help Shows a help message\n\n\nGenerating json files from an excel workbook\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nThe *generateJson* or *toJson* utility is meant to be used with the *generateExcel*\nor *toExcel* utility. It takes the path to the excel file as an argument. The excel\nfile must have the format generated by the *generateExcel* or *toExcel* utility. It\ngenerates a new language directory for every language column in the excel file, with\ncorresponding json files. It will also convert the empty string identifier into an empty string.\n\n.. code-block:: text\n\n $ jhlangtool generateJson ./output.xlsx\n\n**Options**\n -o, --output In which directory to generate the language json files. Default is the current working directory.\n Note that the json files will be generated in the selected directory (it does not generate\n a new directory inside the selected one).\n\n -s, --separator The separator for the keys in the excel file. Default is \"/\".\n\n -i, --identifier The identifier for the empty string( \"\" <--- this).\n\n -v, --verbose Enables verbose output (outputs which files are currently being processed)\n\n -q, --quiet Disables writing to stdout (disables outputting anything)\n\n -h, --help Shows a help message\n\nVersion: 0.8.0\n\nAuthor: Martin Vrbovcan, 2018.\n\n\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/MartinVrbovcan/jhlangtool", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "jhlangtool", "package_url": "https://pypi.org/project/jhlangtool/", "platform": "", "project_url": "https://pypi.org/project/jhlangtool/", "project_urls": { "Homepage": "https://github.com/MartinVrbovcan/jhlangtool" }, "release_url": "https://pypi.org/project/jhlangtool/0.8.1/", "requires_dist": [ "xlsxwriter (>=1.0.3)", "pandas" ], "requires_python": ">=3", "summary": "Program that converts jhipster language-specific JSON files into an excel file and back", "version": "0.8.1" }, "last_serial": 4865942, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "7e58e1021fa05a9d78b5129c610d8475", "sha256": "c89bda793afeab16f1dffcc07054b317b580dc798077c231d479bdc3d4ad2605" }, "downloads": -1, "filename": "jhlangtool-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7e58e1021fa05a9d78b5129c610d8475", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 7055, "upload_time": "2018-02-25T22:23:53", "url": "https://files.pythonhosted.org/packages/05/16/e9fc04feccb4b14eef9c431059b685b4748229358724e113a40a7f2f7443/jhlangtool-0.0.1-py3-none-any.whl" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "1fd22a233a778a2be2843319b198186b", "sha256": "e668afe0fa07a237125df8f5934e66540cb7e3e1b87b5763d6e6503fc0fe4a0a" }, "downloads": -1, "filename": "jhlangtool-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1fd22a233a778a2be2843319b198186b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3", "size": 8594, "upload_time": "2018-03-11T16:06:35", "url": "https://files.pythonhosted.org/packages/93/67/fb225474696cd340cb78c3cae1e1cb39e14ec84865c064311481e8b47390/jhlangtool-0.0.2-py2.py3-none-any.whl" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "c8fcba321faffbc12088e7fdd0b29a7e", "sha256": "f9922076ea43d0e0960567ee601c3f416ebf6a81915e8acd523bfabb1938d4f2" }, "downloads": -1, "filename": "jhlangtool-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c8fcba321faffbc12088e7fdd0b29a7e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3", "size": 8829, "upload_time": "2018-03-11T17:15:16", "url": "https://files.pythonhosted.org/packages/f5/5d/ab9f7a9debc7b33f2dac0f156dcd2cc23f04ace244f11286b3f29e909f49/jhlangtool-0.0.3-py2.py3-none-any.whl" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e6e9de2825c81d0b5b2127ca6a8de62a", "sha256": "b3e1b5c1f6b3164232d16b317bfb6b163ce7aae9cde112cc1d68587cabddb2d8" }, "downloads": -1, "filename": "jhlangtool-0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e6e9de2825c81d0b5b2127ca6a8de62a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3", "size": 8997, "upload_time": "2018-03-12T18:18:09", "url": "https://files.pythonhosted.org/packages/0e/40/35026d7b4526c483904c3f71f4e08f579624fd8e2ebce7bf01a4a4f91a6c/jhlangtool-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cb045da05586053f62300bd4cacff29", "sha256": "34f285bc52f5a8173ac6b91c3b60bcfc9d443b1f018b3af1a4af24eac8684237" }, "downloads": -1, "filename": "jhlangtool-0.0.4.tar.gz", "has_sig": false, "md5_digest": "0cb045da05586053f62300bd4cacff29", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 6264, "upload_time": "2018-04-07T17:53:58", "url": "https://files.pythonhosted.org/packages/e1/a1/73ddb77663e9e564d4a582066ea2b9b11785c0c42646b71fa14ccb48b252/jhlangtool-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "f24e70fc37f149faa826dbca816a8381", "sha256": "15ec80e73586753916cd00afdcc1845d6e260587d4fe116658446dad00149fc9" }, "downloads": -1, "filename": "jhlangtool-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "f24e70fc37f149faa826dbca816a8381", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 10390, "upload_time": "2018-07-06T18:09:12", "url": "https://files.pythonhosted.org/packages/d8/9d/56c1b6223aef693220a2aca6c47bc94e2f97981862ddbbc7204efd746f09/jhlangtool-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3180016a9df00eadb124526cbae9ea14", "sha256": "446df017bebc8f405123a04f7ed623341fb3b1d5031a88b1a5f82e0c7d3c6ef5" }, "downloads": -1, "filename": "jhlangtool-0.0.5.tar.gz", "has_sig": false, "md5_digest": "3180016a9df00eadb124526cbae9ea14", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 6818, "upload_time": "2018-07-06T18:09:13", "url": "https://files.pythonhosted.org/packages/a0/4b/307d3638591fbe9e06db53883427a7e574d45412de6b98f8f2398be042ce/jhlangtool-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "abc49aaa90ce4292714ec7c559d45772", "sha256": "c69316f0ce47e74d14566efcdc80d3a9e26e697c5b6167d4c22e31fa6a5e3c7f" }, "downloads": -1, "filename": "jhlangtool-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "abc49aaa90ce4292714ec7c559d45772", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 10372, "upload_time": "2018-07-09T15:37:09", "url": "https://files.pythonhosted.org/packages/77/fb/ccfc4ed9c24e7bb1de3c3db3f0d4909818f5616b588a16836e9da75f2861/jhlangtool-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce8adaddcc4153626cd83fbccaa80cff", "sha256": "87c43345374d6877cc6adcfe94e52355137a80a1f568cf65686c5a2aaee4cfc7" }, "downloads": -1, "filename": "jhlangtool-0.0.6.tar.gz", "has_sig": false, "md5_digest": "ce8adaddcc4153626cd83fbccaa80cff", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 6805, "upload_time": "2018-07-09T15:37:10", "url": "https://files.pythonhosted.org/packages/43/97/9a1c83aa600db4eb09f9f74a60380853878902fa02820a29e6e8b20f7bd3/jhlangtool-0.0.6.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "908b7b8d6852f303327c7627c45e4071", "sha256": "41419a0b3c26f13fcb3edd16fe34f2b7db323c2ee90fcc5c2580d139fbfb0793" }, "downloads": -1, "filename": "jhlangtool-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "908b7b8d6852f303327c7627c45e4071", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 15809, "upload_time": "2018-09-11T20:22:59", "url": "https://files.pythonhosted.org/packages/2c/a6/1533ec4e2854df85056353b6fb69ed12577b11c6e86e7833d07630ceb288/jhlangtool-0.8.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "404fbdfb70eafb6e544997b38a64b99b", "sha256": "c4bbdae21ee231dc3d5c76ff1334e7a8ca2307fc6ac1041afee66b510054a4ab" }, "downloads": -1, "filename": "jhlangtool-0.8.1.tar.gz", "has_sig": false, "md5_digest": "404fbdfb70eafb6e544997b38a64b99b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 9372, "upload_time": "2018-09-11T20:23:01", "url": "https://files.pythonhosted.org/packages/0e/24/a8f5bb87ab6a6e719d6400b5d381a543ac71cad815c91577f335f83badd3/jhlangtool-0.8.1.tar.gz" } ], "0.8.2a0": [ { "comment_text": "", "digests": { "md5": "c8d9014993dd29b99473e3cb99895d41", "sha256": "c68739e2f01ad39c22425432eb50dae7fcd65b1746765367f1c2a4a6c795dbd0" }, "downloads": -1, "filename": "jhlangtool-0.8.2a0-py3-none-any.whl", "has_sig": false, "md5_digest": "c8d9014993dd29b99473e3cb99895d41", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 17437, "upload_time": "2019-02-25T17:57:13", "url": "https://files.pythonhosted.org/packages/bf/65/42809f1c4ef874d68d3e746c07e47dfa6ff75b10e0d1aa28780626018a2b/jhlangtool-0.8.2a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c957e8fe86c0cb2437313b37087a0e69", "sha256": "bd8ae084f0d15689a2da9fb02b7a20291bfb28f82cc280d1e3cc1765fb89d43f" }, "downloads": -1, "filename": "jhlangtool-0.8.2a0.tar.gz", "has_sig": false, "md5_digest": "c957e8fe86c0cb2437313b37087a0e69", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 10555, "upload_time": "2019-02-25T17:57:14", "url": "https://files.pythonhosted.org/packages/03/75/2542de30454be8aec3b9b1a9540c78deca08de5ea69a627a972d5e8c917d/jhlangtool-0.8.2a0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "908b7b8d6852f303327c7627c45e4071", "sha256": "41419a0b3c26f13fcb3edd16fe34f2b7db323c2ee90fcc5c2580d139fbfb0793" }, "downloads": -1, "filename": "jhlangtool-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "908b7b8d6852f303327c7627c45e4071", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 15809, "upload_time": "2018-09-11T20:22:59", "url": "https://files.pythonhosted.org/packages/2c/a6/1533ec4e2854df85056353b6fb69ed12577b11c6e86e7833d07630ceb288/jhlangtool-0.8.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "404fbdfb70eafb6e544997b38a64b99b", "sha256": "c4bbdae21ee231dc3d5c76ff1334e7a8ca2307fc6ac1041afee66b510054a4ab" }, "downloads": -1, "filename": "jhlangtool-0.8.1.tar.gz", "has_sig": false, "md5_digest": "404fbdfb70eafb6e544997b38a64b99b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 9372, "upload_time": "2018-09-11T20:23:01", "url": "https://files.pythonhosted.org/packages/0e/24/a8f5bb87ab6a6e719d6400b5d381a543ac71cad815c91577f335f83badd3/jhlangtool-0.8.1.tar.gz" } ] }