{ "info": { "author": "Rome Reginelli", "author_email": "mduo13@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: POSIX", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Topic :: Games/Entertainment :: Board Games", "Topic :: Utilities" ], "description": "Proxy Printer\n=============\n\nGenerates reasonably good-looking HTML proxies for a card game from an\nODS spreadsheet. Useful for making card game prototypes. Comes with some\nbasic CSS; you can add your own style rules to make the proxies prettier\nor better suited to your game. Does some heuristic text resizing so that\ntext of different lengths is more likely to fit without being too small.\n\nInstalling with pip\n-------------------\n\n(Python 3 required)\n\n::\n\n pip3 install proxyprinter\n\n(You might need to use ``sudo`` or a VirtualEnv depending on your system\nsetup.)\n\nUsage\n-----\n\n::\n\n proxyprinter example-cards.ods > output_file.html\n\nDo ``proxyprinter --help`` for usage statement with all commandline\noptions.\n\nInput Format\n------------\n\nOpenDocument Spreadsheet (ODF) file. Example:\n`example-cards.ods `__. Each \"Sheet\" in the document\nis one type of card in your game. The name of the sheet is the card\ntype. The first row in the sheet lists the titles for each field. Each\nsubsequent row is a card.\n\nThe following field names are special in some way:\n\n- **Name**: The name of your card (goes in the title area of the card).\n- **Traits**: A comma-separated list of tags/labels for the card. Each\n gets its own span with a class so you can style it. Procedurally\n generates style rules to color-code these.\n- **Text**: Gets put in a single text\\_area alongside Flavor Text.\n- **Flavor Text**: Gets put in a single text\\_area alongside Text.\n- **Version**: Listed in the footer. Use this with the ``-v`` switch to\n only print recently-updated cards.\n- **Copies:** If present and a non-negative integer, prints that many\n copies of the card as part of the overall print sheet. (Otherwise,\n the print sheet contains 1 copy of this card.)\n\nIn-Stylesheet Settings\n----------------------\n\nYou can customize various settings for your project by adding a\n``ProxyPrinter Settings`` tab to your spreadsheet. (The sheet must match\nthat name exactly.) In that spreadsheet page, put a setting name in the\n**first row** of the sheet to define a custom value for that setting:\n\n+---------------------------+--------------------------------------------------------------------------+------------------------------------------------------------+\n| Setting | Description | How to Set |\n+===========================+==========================================================================+============================================================+\n| ``CSSFile`` | The filename of an external CSS file to reference. | Put the value in the **2nd row**, same column |\n+---------------------------+--------------------------------------------------------------------------+------------------------------------------------------------+\n| ``Copyright`` | The copyright owner to print at the bottom of the cards. | Put the value in the **2nd row**, same column |\n+---------------------------+--------------------------------------------------------------------------+------------------------------------------------------------+\n| Text Size Thresholds | Downsize text when it exceeds length thresholds. | `Text Size Thresholds <#text-size-thresholds>`__ |\n+---------------------------+--------------------------------------------------------------------------+------------------------------------------------------------+\n| Rich Field Substitution | Substitution patterns to embed special styles or symbols in field text | `Rich Field Substitutions <#rich-field-substitutions>`__ |\n+---------------------------+--------------------------------------------------------------------------+------------------------------------------------------------+\n\nFor any setting defined in the spreadsheet that can also be set by\ncommandline parameter, the commandline parameter overrides it if\nspecified.\n\nText Size Thresholds\n~~~~~~~~~~~~~~~~~~~~\n\nThe Proxy Printer sizes down text for most fields based on the number of\ncharacters in it. Depending on how much space you have available for\neach field, you may need to adjust these thresholds, so that it goes\ndown to medium or small text sizes with less (or more) text.\n\nTo customize the text sizing thresholds, put the following 3 setting\nnames in the first row of your settings sheet tab:\n\n- ``TextSizeField``\n- ``TextSizeMediumIfOver``\n- ``TextSizeSmallIfOver``\n\nIn each row after it, you can define a threshold to use. In each row,\nput the values in the columns as follows:\n\n+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------+\n| TextSizeField column | TextSizeMediumIfOver | TextSizeSmallIfOver |\n+=============================================================================================================================================================================================================================================+============================================================================================================================================================+=========================================================================================================================================================+\n| Name of the field these thresholds apply to. (Each \"Field\" is a column from one of the card pages in your spreadsheet, e.g. ``Text``, ``Flavor Text``, ``Cost``, etc.) The default for all fields is represented by the field name ``*``. | Decrease from big to medium size text if the number of characters is over this number. (Defaults: 30 for most fields, 140 for ``Text``, 18 for ``Name``) | Decrease from medium to small size if the number of characters is over this limit. (Defaults: 50 for most fields, 220 for ``Text``, 24 for ``Name``.) |\n+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------+\n\nAny default values you don't redefine remain. Any fields that don't have\nthresholds defined use the thresholds for ``*`` (whether you defined it\nor left it default).\n\nRich Field Substitutions\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTo include special styles and images inline in your text, you can define\npatterns from the spreadsheet values that will map to specific styles in\nthe HTML. For example, you can make it so that ``<5 G>`` gets replaced\nwith a \"5 Gold\" icon in the text. (Custom CSS may be necessary, of\ncourse.)\n\nPut the value ``RichFields`` in the first row of your settings sheet tab\nto define which fields should get processed this way. In each other row,\nput the name of a field in the same column. The field name ``*`` means\n\"all fields\". By default, only the ``Text`` field is processed.\n\nTo do define which substitutions to make, put the following 2 setting\nnames in the first row of your settings sheet tab:\n\n- ``ProcessPatterns``\n- ``ProcessReplacements``\n\nIn each later row, put the following values:\n\n+-----------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------+\n| ProcessPatterns column | ProcessReplacements column |\n+=============================================================================================================================+==========================================================================================================================+\n| `Regular Expression `__ to search for in the text. Example: ``\\<([0-9]+) G\\>`` | Text to replace it with. Regular-expression backreferences are allowed. Example: ``\\1`` |\n+-----------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------+\n\nThese substitutions apply after escaping any HTML that appears in the\ntext, so if your pattern needs to match ``<`` or ``>``, you must use the\nescaped versions ``<`` and ``>`` instead. Also, this means your\nsubstitutions can include raw HTML.\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/mduo13/proxyprinter", "keywords": "games mockups proxying design", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "proxyprinter", "package_url": "https://pypi.org/project/proxyprinter/", "platform": "", "project_url": "https://pypi.org/project/proxyprinter/", "project_urls": { "Homepage": "https://github.com/mduo13/proxyprinter" }, "release_url": "https://pypi.org/project/proxyprinter/0.3.0/", "requires_dist": null, "requires_python": "", "summary": "Generate card game mockups from .ods spreadsheets", "version": "0.3.0" }, "last_serial": 3085952, "releases": { "0.3.0": [ { "comment_text": "", "digests": { "md5": "dca5eb7f18d993ced48d67e5eaaa7f67", "sha256": "d3f6fdbb49d4128dcf445755047834c0ae9f5896ce490879403d2a1f8975ba85" }, "downloads": -1, "filename": "proxyprinter-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "dca5eb7f18d993ced48d67e5eaaa7f67", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13532, "upload_time": "2017-08-10T04:47:21", "url": "https://files.pythonhosted.org/packages/e5/11/e4534c246575d64b16e5a37fec845dd112337d3b21b1f9547c82fcfc15bf/proxyprinter-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "762bd822d45ec4fad0f66a3bf21afe6f", "sha256": "280d5954a3582e33ee116692ababc9b1929dcfc7266e7cfad530f999421c8708" }, "downloads": -1, "filename": "proxyprinter-0.3.0.tar.gz", "has_sig": false, "md5_digest": "762bd822d45ec4fad0f66a3bf21afe6f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11737, "upload_time": "2017-08-10T04:47:19", "url": "https://files.pythonhosted.org/packages/0d/67/8b12cef2049f4a3719c1f79d6e5c1d6e28edebef376ffc48a5375b7d712f/proxyprinter-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "dca5eb7f18d993ced48d67e5eaaa7f67", "sha256": "d3f6fdbb49d4128dcf445755047834c0ae9f5896ce490879403d2a1f8975ba85" }, "downloads": -1, "filename": "proxyprinter-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "dca5eb7f18d993ced48d67e5eaaa7f67", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13532, "upload_time": "2017-08-10T04:47:21", "url": "https://files.pythonhosted.org/packages/e5/11/e4534c246575d64b16e5a37fec845dd112337d3b21b1f9547c82fcfc15bf/proxyprinter-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "762bd822d45ec4fad0f66a3bf21afe6f", "sha256": "280d5954a3582e33ee116692ababc9b1929dcfc7266e7cfad530f999421c8708" }, "downloads": -1, "filename": "proxyprinter-0.3.0.tar.gz", "has_sig": false, "md5_digest": "762bd822d45ec4fad0f66a3bf21afe6f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11737, "upload_time": "2017-08-10T04:47:19", "url": "https://files.pythonhosted.org/packages/0d/67/8b12cef2049f4a3719c1f79d6e5c1d6e28edebef376ffc48a5375b7d712f/proxyprinter-0.3.0.tar.gz" } ] }