{ "info": { "author": "Matth\u00e4us G. Chajdas", "author_email": "dev@anteru.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 6 - Mature", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Pre-processors" ], "description": "Lina\n=======\n\nLina is a template engine in the spirit of Google's [CTemplate](http://code.google.com/p/ctemplate/?redir=1) written in Python 3. It can be used to generate any kind of text-based documents. Lina has been used since several years in a large C/C++ project to generate code.\n\nUntil late August 2014, this library was known as *Miranda*.\n\nRequirements\n------------\n\nPython 3.4 or later. Previous versions of Python will not work due to the lack of enumerations.\n\nInstallation\n------------\n\nLina is available from PyPi, so you can install directly using ``pip``:\n\n pip install lina\n\nGetting started\n---------------\n\nThe most trivial template is:\n\n Hello {{name}}!\n\nIt can be evaluated using\n\n import lina\n template = lina.Template ('Hello {{name}}!')\n print (template.RenderSimple (name = \"Bob\"))\n\nThis will print:\n\n Hello Bob!\n\nThe real power comes from blocks which can be repeated and nested. For instance:\n\n {{#Users}}Hello {{name}}!{{/Users}\n\nrendered with\n\n Users = [{'name':'Alice'}, {'name':'Bob'}]\n\nwill print:\n\n Hello Alice!Hello Bob!\n\nThis can be further improved by using formatters. A formatter modifies a value just before it is written to the output stream. Lina comes with a set of predefined formatters like upper-case transformation. Formatters can be defined for values or blocks. A good example for a block-level formatter is the `list-separator` formatter. If we change the template of the previous example to:\n\n {{#Users:list-separator=NEWLINE}}Hello {{name}}!{{/Users}\n\nthe result will be:\n\n Hello Alice!\n Hello Bob!\n\nValue-level formatters are for example the upper-case formatter. `{{value:upper-case}}` with `value` set to `Test` will result in `TEST`.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://shelter13.net/projects/Lina", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "Lina", "package_url": "https://pypi.org/project/Lina/", "platform": "", "project_url": "https://pypi.org/project/Lina/", "project_urls": { "Homepage": "http://shelter13.net/projects/Lina" }, "release_url": "https://pypi.org/project/Lina/1.0.8/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Text template library", "version": "1.0.8" }, "last_serial": 3858469, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "018836937e1dfa30a1b655248b49e797", "sha256": "a62e68139c1d7431fc9850d0f937b90d777dfdbe1b66b6112b39bf02c47938f2" }, "downloads": -1, "filename": "Lina-1.0.0.tar.gz", "has_sig": false, "md5_digest": "018836937e1dfa30a1b655248b49e797", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6328, "upload_time": "2014-08-29T18:30:05", "url": "https://files.pythonhosted.org/packages/a5/a4/b6ca4f11aaa15c756466d16c9c238ea7708301cf5c37f0a22e76b4643a7d/Lina-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "659637748c3baba1ba7ee370a4126c82", "sha256": "33d7938eae65ccb5ca1aa3976e8ab708b91119d7b85712bb0b8b476ea39a38a1" }, "downloads": -1, "filename": "Lina-1.0.1.tar.gz", "has_sig": false, "md5_digest": "659637748c3baba1ba7ee370a4126c82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6951, "upload_time": "2014-08-30T14:32:13", "url": "https://files.pythonhosted.org/packages/5e/17/bc98059dac37645599de38017c36f03342483c2b58abcae3fc32cdb643a5/Lina-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "3c5dc7cfa0b454bfc8aa2ec0743e7030", "sha256": "eb12023010f57958e9abc27d3d7162b58f44af60dcd8a85069d7519ccbf3334b" }, "downloads": -1, "filename": "Lina-1.0.2.tar.gz", "has_sig": false, "md5_digest": "3c5dc7cfa0b454bfc8aa2ec0743e7030", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7309, "upload_time": "2014-09-15T15:19:41", "url": "https://files.pythonhosted.org/packages/db/6a/efed8c6137e736b9288bda82f8088afc7b614cb5dd279a76fd2f1c15e112/Lina-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "eb4ba3985bf935a01238ffd121701a1c", "sha256": "6c3c3436c362727b1abd4cd50bf382722b31627b1e6808009272764a08fb12ab" }, "downloads": -1, "filename": "Lina-1.0.3.tar.gz", "has_sig": false, "md5_digest": "eb4ba3985bf935a01238ffd121701a1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7341, "upload_time": "2014-10-17T13:41:15", "url": "https://files.pythonhosted.org/packages/73/1f/b65a5a93bec2793196aafeb6b4ca90e13be1366294f779db8593d14b786f/Lina-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "1098304533f3c1d081cb5c47a810d5c4", "sha256": "84bb492b80a896b1d5f1c3707f5cb8fc710d278acc95c818eaaceb1c7f8739c1" }, "downloads": -1, "filename": "Lina-1.0.4.tar.gz", "has_sig": false, "md5_digest": "1098304533f3c1d081cb5c47a810d5c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7393, "upload_time": "2014-11-23T20:36:44", "url": "https://files.pythonhosted.org/packages/3d/99/6d25956af57f2d393afaadb2276711cf366a39463c7f8bad1f42e4cb9ac3/Lina-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "cfcd21e24fdbaadaa50d3bf05a894f80", "sha256": "6632ba943180fed8d08654583d2870a71f5cac45557f90c4f42fc08a7ec8c857" }, "downloads": -1, "filename": "Lina-1.0.5.tar.gz", "has_sig": false, "md5_digest": "cfcd21e24fdbaadaa50d3bf05a894f80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7468, "upload_time": "2017-05-26T19:56:12", "url": "https://files.pythonhosted.org/packages/b6/9f/0a50ff326f7c0c89e2d83ce95826d4a21567c7ddd0b0ec1a976c8a63e443/Lina-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "25df9465b46cef8258f340807c98933f", "sha256": "5a99924dcde311f5d58c7c597defe4ec092b220418d26d62921f326b6f80b766" }, "downloads": -1, "filename": "Lina-1.0.6.tar.gz", "has_sig": false, "md5_digest": "25df9465b46cef8258f340807c98933f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7330, "upload_time": "2018-05-06T08:03:16", "url": "https://files.pythonhosted.org/packages/ba/f4/7c916896e52f23b08d1e05a86108678152a70f59f0118f35275bf3db11d3/Lina-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "2a8bce8c86f2b6322a01f91caf42db05", "sha256": "fcc8401460db1df761437b764a47ed9dcc5a6526a91c2b05b739016a7e7a5bfd" }, "downloads": -1, "filename": "Lina-1.0.7.tar.gz", "has_sig": false, "md5_digest": "2a8bce8c86f2b6322a01f91caf42db05", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7413, "upload_time": "2018-05-06T12:42:00", "url": "https://files.pythonhosted.org/packages/75/70/35d72ad84267f4c31d9a4f05f754449f70b56e58ed43913e39615ba0cbb1/Lina-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "0d9117c43e0344a8c057a6af27fdb5ed", "sha256": "3bb36fbb63f55dc855201a3a63852a63d8d6a7a15de46983ebe380dbebdf7133" }, "downloads": -1, "filename": "Lina-1.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "0d9117c43e0344a8c057a6af27fdb5ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 8462, "upload_time": "2018-05-13T12:50:10", "url": "https://files.pythonhosted.org/packages/39/21/fbc469dfff7599abc52772d2301309a114a0ffe7d36d9d4ff28ee8cc1ca2/Lina-1.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5781291ea8702914bed1e92b3b6c3393", "sha256": "9d8668ca89178601ff4eeb25f07156de41c486dd1fe0b21ef48b44d0630cb7db" }, "downloads": -1, "filename": "Lina-1.0.8.tar.gz", "has_sig": false, "md5_digest": "5781291ea8702914bed1e92b3b6c3393", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 8453, "upload_time": "2018-05-13T12:50:13", "url": "https://files.pythonhosted.org/packages/f6/04/2fb8c0f6ba78851ed4fc282eca3835ed7f7307ef22727af3a6c38534cfdc/Lina-1.0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0d9117c43e0344a8c057a6af27fdb5ed", "sha256": "3bb36fbb63f55dc855201a3a63852a63d8d6a7a15de46983ebe380dbebdf7133" }, "downloads": -1, "filename": "Lina-1.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "0d9117c43e0344a8c057a6af27fdb5ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 8462, "upload_time": "2018-05-13T12:50:10", "url": "https://files.pythonhosted.org/packages/39/21/fbc469dfff7599abc52772d2301309a114a0ffe7d36d9d4ff28ee8cc1ca2/Lina-1.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5781291ea8702914bed1e92b3b6c3393", "sha256": "9d8668ca89178601ff4eeb25f07156de41c486dd1fe0b21ef48b44d0630cb7db" }, "downloads": -1, "filename": "Lina-1.0.8.tar.gz", "has_sig": false, "md5_digest": "5781291ea8702914bed1e92b3b6c3393", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 8453, "upload_time": "2018-05-13T12:50:13", "url": "https://files.pythonhosted.org/packages/f6/04/2fb8c0f6ba78851ed4fc282eca3835ed7f7307ef22727af3a6c38534cfdc/Lina-1.0.8.tar.gz" } ] }