{ "info": { "author": "Rebecca Nelson", "author_email": "dekarrin.irl@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Compilers" ], "description": "FairyScript\n-----------\n\nWrite manuscripts in screenplay style and export them to various\nformats.\n\n.. figure:: https://travis-ci.org/dekarrin/fairyscript.svg?branch=master\n :alt: build-status\n\nDescription\n~~~~~~~~~~~\n\nFairyScript provides a human-readable yet still regular format for\nwriting manuscripts in plaintext. These manuscripts can then be compiled\nwith fairyscript to various other formats, either for consumption by\nother programs or for ease-of-use by humans.\n\nThere are three main values that FairyScript provides:\n\n* Storing manuscripts as plaintext rather than as binary or XML-based files (such\n as those used by Microsoft Word) consumes less space.\n* Using the .FEY format allows the manuscript to be compiled to other formats when\n necessary.\n* The .FEY format provided by FairyScript is easier to read than formats that are\n directly used by manuscript execution systems, such as Ren\u2019py.\n\nSupported Formats\n~~~~~~~~~~~~~~~~~\n\nFairyScript provides the .FEY format for files. It is capable of\ninterpreting manuscripts written in this format, and compiling them to\nthe following formats:\n\n* .FEY -> .RPY (Ren\u2019py Script)\n* .FEY -> .DOCX (Word Office)\n\nInstallation\n~~~~~~~~~~~~\n\nTo install FairyScript to the system, do ``pip install fairyscript``.\nThis will make the ``fairyc`` command available on the system.\n\nRequirements:\n\n* Python (2.7, or 3.3 or later)\n* lxml, which can be installed from pip.\n* ply, which can be installed from pip.\n\nTo execute the FairyScript compiler from a local download without\ninstalling it, run the local ``fairyc.py`` (and substitute executing\nthis file for the ``fairyc`` command found in the documentation). Note\nthat the above dependencies must first be resolved.\n\nFairyScript also requires python-docx (for writing to Word documents).\nHowever, the original codebase has been modified to support additional\nfeatures that FairyScript requires, and so it is included in the\nFairyScript codebase. For license information on this package, please\nsee the appropriate LICENSE file.\n\nCompiler Usage\n~~~~~~~~~~~~~~\n\nThe FairyScript compiler (``fairyc``) is used to compile .FEY format\nmanuscript files into other file types. It is invoked by execution from\nthe command line.\n\nThe typical usage of ``fairyc`` is to either compile .FEY files to\nprettier, more human-readable formats or to compile .FEY files to\nexecutable scripts.\n\nTo compile a FEY manuscript to Ren\u2019Py:\n\n.. code:: shell\n\n $ fairyc renpy input_file.fey -o renpy_script.rpy\n\nTo compile a FEY manuscript to Microsoft Office:\n\n.. code:: shell\n\n $ fairyc renpy input_file.fey -o my_script.docx --word\n\nWhen invoked with no arguments, ``fairyc`` will read manuscript\nstatements from stdin, compile them to Ren\u2019Py script format, and then\noutput them to stdout:\n\n.. code:: shell\n\n $ generate_fey | fairyc renpy | process_output\n\nInput files are specified by passing each as an argument; to specify\nmultiple input files, pass in multiple arguments. All input files are\nread in the order that they are given. If no input files are given,\n``fairyc`` will read from stdin.\n\nIn this example, three files are compiled to a single Ren\u2019Py script:\n\n.. code:: shell\n\n $ fairyc renpy main_path.fey branch1.fey branch2.fey -o my_script.rpy\n\nThe output file is specified with the ``-o`` option. Only one output\nfile may be specified. If the ``-o`` is not given, ``fairyc`` will write\nthe output to stdout. Note that due to the inherent limitations of the\nDOCX format, writing to stdout is not permitted when compiling to\nMicrosoft Word format.\n\nWithout any additional specification, ``fairyc`` will compile the input\nto Ren\u2019Py script format. This can be changed by changing the subcommand\ngiven. ``renpy`` is used to specify Ren\u2019Py, ``docx`` specifies DOCX\nformat output, ``lex`` specifies lexer symbols only, ``ast`` specifies\noutputting the abstract syntax tree without compiling, and ``analyze``\nperforms static analysis on the code and outputs the results as plain\ntext.\n\nBy default, ``fairyc`` expects input to be in FEY manuscript format, but\nit can also parse files that have already been lexed as well as compile\nabstract syntax trees. Use the ``-f`` (long version ``--format``) option\nto set the type of file being processed. The argument to ``-f`` option\nmust be ``fey`` for processing FEY manuscript format, ``lex`` for\nprocessing lexed symbols directly, or ``ast`` for processing abstract\nsyntax trees.\n\nThe following example parses a file containing pre-lexed symbols and\nthen compiles the result to a Ren\u2019Py format script:\n\n.. code:: shell\n\n $ fairyc renpy -f lex script_symbols.lex -o my_script.rpy\n\nIn addition to the options listed above, there are many options that are\nspecific to the compiler for a particular format. For a full list of\noptions, invoke ``fairyc`` with the ``-h`` option:\n\n.. code:: shell\n\n $ fairyc -h\n\nFEY: The FairyScript Language\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nThe FairyScript Language is documented in full in the file\n`fairyscript.md\n`__\nin the docs directory of fairyscript.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dekarrin/fairyscript", "keywords": "renpy visual novel screenplay script word office", "license": "", "maintainer": "", "maintainer_email": "", "name": "fairyscript", "package_url": "https://pypi.org/project/fairyscript/", "platform": "", "project_url": "https://pypi.org/project/fairyscript/", "project_urls": { "Homepage": "https://github.com/dekarrin/fairyscript" }, "release_url": "https://pypi.org/project/fairyscript/2.0.3/", "requires_dist": null, "requires_python": "", "summary": "FairyScript is a language for compiling manuscripts.", "version": "2.0.3" }, "last_serial": 3860584, "releases": { "2.0.0": [ { "comment_text": "", "digests": { "md5": "f8b9e02b5be75b5ca05762a790e61a89", "sha256": "ef25782afebdd160ada5e3f4a24575538766d4523bb67cfe170cb68727fcda17" }, "downloads": -1, "filename": "fairyscript-2.0.0.tar.gz", "has_sig": false, "md5_digest": "f8b9e02b5be75b5ca05762a790e61a89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131044, "upload_time": "2018-05-13T18:58:30", "url": "https://files.pythonhosted.org/packages/c6/6d/faccca7ec5765a82e36afedc48670de2b56b7ac8856112f7f9ad3b64c287/fairyscript-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "104957a7ebc553c703de8608e7634d5d", "sha256": "94bdc6f40a36333a6ea4f902becf01ad164ad9a6792a46620418dec211364d96" }, "downloads": -1, "filename": "fairyscript-2.0.1.tar.gz", "has_sig": false, "md5_digest": "104957a7ebc553c703de8608e7634d5d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131488, "upload_time": "2018-05-13T20:48:04", "url": "https://files.pythonhosted.org/packages/12/c2/fd2152fbdbe2c2fe04431f614aad0c4b0bdabad9c109218be5b7003ee04b/fairyscript-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "066e109c8f3e5dcb89beb159ef933e1f", "sha256": "1929663fdf9220ec99ed226abf2df73cd332bd3f5394ac799e0ea0e2454b461a" }, "downloads": -1, "filename": "fairyscript-2.0.2.tar.gz", "has_sig": false, "md5_digest": "066e109c8f3e5dcb89beb159ef933e1f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 154896, "upload_time": "2018-05-14T10:58:36", "url": "https://files.pythonhosted.org/packages/ab/0d/1c936fc93a67975f3405ae0325088d06d58580b00678b8900f17b28dfb18/fairyscript-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "dc025e22c37466d295854de565fc6ede", "sha256": "aff9f8f0426f08d1ed0cc84599f0acbc2a7e3f96cedfb271052cdb5a0bb6151a" }, "downloads": -1, "filename": "fairyscript-2.0.3.tar.gz", "has_sig": false, "md5_digest": "dc025e22c37466d295854de565fc6ede", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259097, "upload_time": "2018-05-14T11:25:17", "url": "https://files.pythonhosted.org/packages/d9/32/ccf12bf828d27ee9a9c8a40b149ceb9407887e23eabe73848a3c30581cf7/fairyscript-2.0.3.tar.gz" } ], "2.0.3rc1": [ { "comment_text": "", "digests": { "md5": "9879027c8933b573e032ca1cb997b093", "sha256": "7f95ab40cadcfac5dfd3b755c210401413c375fd814e26fdc2e2ca6ca3490378" }, "downloads": -1, "filename": "fairyscript-2.0.3rc1.tar.gz", "has_sig": false, "md5_digest": "9879027c8933b573e032ca1cb997b093", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259082, "upload_time": "2018-05-14T11:14:34", "url": "https://files.pythonhosted.org/packages/8b/87/f4ecd8c89cd950b72529f8129553659f439457f1b7d0a1b5fc6715e8997c/fairyscript-2.0.3rc1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "dc025e22c37466d295854de565fc6ede", "sha256": "aff9f8f0426f08d1ed0cc84599f0acbc2a7e3f96cedfb271052cdb5a0bb6151a" }, "downloads": -1, "filename": "fairyscript-2.0.3.tar.gz", "has_sig": false, "md5_digest": "dc025e22c37466d295854de565fc6ede", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259097, "upload_time": "2018-05-14T11:25:17", "url": "https://files.pythonhosted.org/packages/d9/32/ccf12bf828d27ee9a9c8a40b149ceb9407887e23eabe73848a3c30581cf7/fairyscript-2.0.3.tar.gz" } ] }