{ "info": { "author": "David Cavazos", "author_email": "dcavazosw@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Software Development :: Build Tools", "Topic :: Software Development :: Code Generators", "Topic :: Software Development :: Compilers" ], "description": "# md2ipynb\n\nMarkdown to Jupyter Notebook converter.\n\n## Setup\n\n### [optional] Virtual environment\n\nMake sure you have `virtualenv` installed.\n\n```sh\npip install -U virtualenv\n```\n\nCreate and activate a new `virtualenv`.\n\n```sh\npython -m virtualenv env\nsource env/bin/activate\n```\n\n> **Note**: Once you are all done, you can deactivate it by running `deactivate`.\n\n### Installation\n\nThe easiest way to install is through `pip`.\n\n```sh\npip install -U md2ipynb\n```\n\n### Example data\n\nNow, to get some example data, we'll clone the repository.\n\n```sh\n# Clone the repository just to have access to the examples.\ngit clone git@github.com:davidcavazos/md2ipynb.git\ncd md2ipynb\n```\n\n> *Note:* If you make modifications to the source code and want to use that,\n> you can install it in \"editable\" (development) mode.\n>\n> ```sh\n> pip install -e .\n> ```\n>\n> For more information, see the [Contribution guide](CONTRIBUTING.md).\n\nInstalling the `md2ipynb` module will also install the `md2ipynb` command line tool.\nFor custom preprocessing steps or integration with Python scripts,\nit is also available by importing the `md2ipynb` module from any Python script.\n\n## Minimal example\n\n* source: [hello.md](examples/pages/hello.md)\n* code: [hello-world.py](examples/code/hello-world.py)\n\nHere is a minimal example on how to convert a Markdown file.\nBy default, the output is printed into `stdout`.\n\n```sh\nmd2ipynb examples/pages/hello.md\n```\n\nYou can also specify an output path with the `-o` or `--output` option.\n\n```sh\nmd2ipynb examples/pages/hello.md -o examples/notebooks/hello.ipynb\n```\n\nHere is the generated notebook on Colab and GitHub.\n\n\n \n \n
\n \n \n Run in Colab\n \n \n \n \n View on GitHub\n \n
\n\n## Example\n\n* source: [hello.md](examples/pages/hello.md)\n* code: [hello-world.py](examples/code/hello-world.py)\n* import: [license.md](examples/templates/license.md)\n* import: [setup-py.md](examples/templates/setup-py.md)\n* import: [cleanup.md](examples/templates/cleanup.md)\n\nHere is a more complete example on specifying an output path, import sections,\nvariables, as well as more metadata for a Colab visualization.\n\n```sh\nmd2ipynb examples/pages/hello.md \\\n -o examples/notebooks/hello.ipynb \\\n --imports examples/templates/license.md:0 \\\n examples/templates/setup-py.md:1 \\\n examples/templates/cleanup.md:-2 \\\n --var package=md2ipynb \\\n end_message=\"You're all done \ud83c\udf89\ud83c\udf89\" \\\n --notebook-title 'Hello md2ipynb!' \\\n --docs-url https://github.com/davidcavazos/md2ipynb \\\n --docs-logo-url https://www.tensorflow.org/images/GitHub-Mark-32px.png \\\n --github-ipynb-url https://github.com/davidcavazos/md2ipynb/blob/master/examples/notebooks/hello.ipynb\n```\n\n> *Note:* For more information on the available options, run `md2ipynb --help`.\n\nHere is the generated notebook on Colab and GitHub.\nNote that since we specified the `--github-ipynb-url`,\nthere is now an \"Open in Colab\" button in the GitHub ipynb file.\n\n\n \n \n
\n \n \n Run in Colab\n \n \n \n \n View on GitHub\n \n
\n\n## Python example\n\n* source: [hello.md](examples/pages/hello.md)\n* code: [hello-world.py](examples/code/hello-world.py)\n* import: [license.md](examples/templates/license.md)\n* import: [setup-py.md](examples/templates/setup-py.md)\n* import: [cleanup.md](examples/templates/cleanup.md)\n\nThe following example shows how to use `md2ipynb` as a Python module.\nThis example shows how to specify custom preprocessing steps, import sections,\nuse variables, as well as more metadata for a Colab visualization.\n\n```py\nimport md2ipynb\n\ndef add_separators(paragraphs):\n for p in paragraphs:\n yield '---'\n yield p\n yield '---'\n\ndef replace(paragraphs, old, new):\n for p in paragraphs:\n yield p.replace(old, new)\n\n# Create a new IPython notebook.\nnotebook = md2ipynb.new_notebook(\n input_file='examples/pages/hello.md',\n imports={\n 0: ['examples/templates/license.md'],\n 1: ['examples/templates/setup-py.md'],\n -1: ['examples/templates/cleanup.md'],\n },\n variables={\n 'package': 'md2ipynb',\n 'end_message': \"You're all done \ud83c\udf89\ud83c\udf89\",\n },\n notebook_title='Hello md2ipynb!',\n docs_url='https://github.com/davidcavazos/md2ipynb',\n docs_logo_url='https://www.tensorflow.org/images/GitHub-Mark-32px.png',\n github_ipynb_url='https://github.com/davidcavazos/md2ipynb/blob/master/examples/notebooks/hello.ipynb',\n\n # Additional steps can be run in the order specified.\n # If the generator receives multiple arguments, they can be passed as a tuple.\n steps=[\n add_separators,\n (replace, 'Hello', 'Hi'),\n ],\n)\n\n# Write the notebook to a file.\nimport nbformat\n\nwith open('examples/notebooks/hello-custom.ipynb', 'w') as f:\n nbformat.write(notebook, f)\n```\n\nHere is the generated notebook on Colab and GitHub.\n\n\n \n \n
\n \n \n Run in Colab\n \n \n \n \n View on GitHub\n \n
\n\n## Contributing\n\nContributions are welcome! For instructions on how to contribute,\nplease check the [Contribution guide](CONTRIBUTING.md).\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": "https://github.com/davidcavazos/md2ipynb", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "md2ipynb", "package_url": "https://pypi.org/project/md2ipynb/", "platform": "", "project_url": "https://pypi.org/project/md2ipynb/", "project_urls": { "Homepage": "https://github.com/davidcavazos/md2ipynb" }, "release_url": "https://pypi.org/project/md2ipynb/0.2.1/", "requires_dist": [ "Jinja2", "html2md", "nbformat", "requests" ], "requires_python": "", "summary": "Markdown to Jupyter Notebook converter.", "version": "0.2.1" }, "last_serial": 5892109, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "26c36e0fc108d4bb36dbb5c0bb8d4189", "sha256": "a90d251696f1534253682eb10f2595cd314cc91f0a1bbe0d7981f220ba9cf56c" }, "downloads": -1, "filename": "md2ipynb-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "26c36e0fc108d4bb36dbb5c0bb8d4189", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 38509, "upload_time": "2019-09-10T21:47:42", "url": "https://files.pythonhosted.org/packages/dd/7b/7f60beecf3320eec3619418df213063ec94571d81a70d314a902286876e5/md2ipynb-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6ec00515fe244f3d3c28be503907bb7b", "sha256": "2cbc2beb9b5f9a94eeaf28ddc8c0e3640ddabdc0206d2cf0ca636869abb090bd" }, "downloads": -1, "filename": "md2ipynb-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6ec00515fe244f3d3c28be503907bb7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13745, "upload_time": "2019-09-10T21:47:45", "url": "https://files.pythonhosted.org/packages/21/90/d60b34273c0b6520b47aabd3289cb4cea9d2503db2e1c70c1e6ce482070f/md2ipynb-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "b33cbb45b75744e902e10625b17a96e7", "sha256": "229d205d82fdfebf2880c4338ed5a25c5491831d33adfbfb44dc00b9464363d2" }, "downloads": -1, "filename": "md2ipynb-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b33cbb45b75744e902e10625b17a96e7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39491, "upload_time": "2019-09-11T21:37:43", "url": "https://files.pythonhosted.org/packages/d7/f4/607af3b2956367d7ded7228b4ff3d66d742b9878a71b4934b0f09eacbf8d/md2ipynb-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f528f7190995f97a676fcba96b2dbf78", "sha256": "8930df42c871e18902be6ac86f9628cf5c99725cd4e67561536e0b7efd8f08de" }, "downloads": -1, "filename": "md2ipynb-0.1.1.tar.gz", "has_sig": false, "md5_digest": "f528f7190995f97a676fcba96b2dbf78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15769, "upload_time": "2019-09-11T21:37:45", "url": "https://files.pythonhosted.org/packages/0b/ea/7ed47ba3078ae928453b88c21d3b7483b3da8903bcd52f1b31f54bb136e9/md2ipynb-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c56edc6d2121bfec110ea2db3e13a469", "sha256": "c457928ba951e159dffd0eba94a72f36f1d03e9c173dadacd6fdd7bef17017bc" }, "downloads": -1, "filename": "md2ipynb-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c56edc6d2121bfec110ea2db3e13a469", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 39492, "upload_time": "2019-09-17T17:28:22", "url": "https://files.pythonhosted.org/packages/69/5c/c3b3f9857e0983b742827484f7805c9f2de85a9a5aaeb8dba9d11e3a5707/md2ipynb-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "786fb2d33e39c5e53fa41689c0f32f48", "sha256": "76a9d0f95ce4e994524e8fb4903f8526036e99721c4a0d1ba80108cfe5526d42" }, "downloads": -1, "filename": "md2ipynb-0.1.2.tar.gz", "has_sig": false, "md5_digest": "786fb2d33e39c5e53fa41689c0f32f48", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15777, "upload_time": "2019-09-17T17:28:24", "url": "https://files.pythonhosted.org/packages/3b/ef/9648cbb246006932619767bc32626121e51758df43a0a7167e6fb85cdb33/md2ipynb-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "16453b4a05d1716c52706734bfc344bd", "sha256": "38d07e113c5d4fe51a598f3ca3807a504d150ac5119bebd63776c817977e356a" }, "downloads": -1, "filename": "md2ipynb-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "16453b4a05d1716c52706734bfc344bd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 40337, "upload_time": "2019-09-25T03:34:14", "url": "https://files.pythonhosted.org/packages/ca/30/13e9bc0a2261e9a583bc249eac239aa36d6f812aa237ac8e58f4ec5c588c/md2ipynb-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fa560338bf2511d3720d69ae49e55cc9", "sha256": "170b89ccc3d5acc6bf7250e9622c0eebd43036d486532d1819f2e5e50c1f45e7" }, "downloads": -1, "filename": "md2ipynb-0.1.3.tar.gz", "has_sig": false, "md5_digest": "fa560338bf2511d3720d69ae49e55cc9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16521, "upload_time": "2019-09-25T03:34:16", "url": "https://files.pythonhosted.org/packages/df/b1/7f06915e37e178c36578d72df0fc92cde133fd1bea023d16377a4fefc26c/md2ipynb-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "a0919c44d597b3387d7fffdbac0a6a75", "sha256": "421688f59552621c0796bea984bcb9f7124918d3acca68f747319eb4e495677b" }, "downloads": -1, "filename": "md2ipynb-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "a0919c44d597b3387d7fffdbac0a6a75", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 40342, "upload_time": "2019-09-25T03:44:39", "url": "https://files.pythonhosted.org/packages/2f/53/eb348847fcc3dd1b1d6c3f43f6831d54802aeb7a686ade4cf545e7583426/md2ipynb-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "955d5ae594781179cb6faf45c85bba70", "sha256": "8df3280bfcd34e661814662c14eae9fa6178a0bebaa0e50be3ee6d921c1afc77" }, "downloads": -1, "filename": "md2ipynb-0.1.4.tar.gz", "has_sig": false, "md5_digest": "955d5ae594781179cb6faf45c85bba70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16491, "upload_time": "2019-09-25T03:44:41", "url": "https://files.pythonhosted.org/packages/7c/46/918bb52f0c3134650b9a268503a3970c8ac615623441681a5f26d5e8c6d3/md2ipynb-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "ee89faa86107c484ac2b742d39312d53", "sha256": "857329086ca9805138d49b54d859df6800a0112d750f959348ea485aa8b2c3f1" }, "downloads": -1, "filename": "md2ipynb-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ee89faa86107c484ac2b742d39312d53", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 41721, "upload_time": "2019-09-26T00:41:57", "url": "https://files.pythonhosted.org/packages/9e/d0/3c0bb4cc2f36b80a814a024b9ab4b58c95e49b014bc18b23f19b8a4db550/md2ipynb-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a3e09de791c00cdfccb4970c326fcffc", "sha256": "30bda8f141beccada5c2b848c3f4c4e5291533920f09f6d510e00ed579a84fa7" }, "downloads": -1, "filename": "md2ipynb-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a3e09de791c00cdfccb4970c326fcffc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17255, "upload_time": "2019-09-26T00:41:58", "url": "https://files.pythonhosted.org/packages/cf/7b/814261186db2af929e31fa44a9116ca5d78fbf8c1ed6b3de1144146c92f2/md2ipynb-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "ec02106a5f9847889e10b49d2d08f7ea", "sha256": "172ab5afaabef884d0640d582a8883d4e9936aae482dd164e1fbb1aaa40f9b72" }, "downloads": -1, "filename": "md2ipynb-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ec02106a5f9847889e10b49d2d08f7ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42179, "upload_time": "2019-09-26T18:40:51", "url": "https://files.pythonhosted.org/packages/eb/f1/dad4e8a88f652d991a4b9a124f1a157224eaf48dc5938eb4015f36d9d3d7/md2ipynb-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "629189599fe02e83a07a5a9e5e79084e", "sha256": "36325aa9656039f8a4f9b1a1d1483caab0523ced58d8184d0fa06798fc2ec485" }, "downloads": -1, "filename": "md2ipynb-0.2.1.tar.gz", "has_sig": false, "md5_digest": "629189599fe02e83a07a5a9e5e79084e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17635, "upload_time": "2019-09-26T18:40:53", "url": "https://files.pythonhosted.org/packages/53/b5/9bcd850d93125b832f1b0a7ee01c174ed924349a9acb855138d115673d82/md2ipynb-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ec02106a5f9847889e10b49d2d08f7ea", "sha256": "172ab5afaabef884d0640d582a8883d4e9936aae482dd164e1fbb1aaa40f9b72" }, "downloads": -1, "filename": "md2ipynb-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ec02106a5f9847889e10b49d2d08f7ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42179, "upload_time": "2019-09-26T18:40:51", "url": "https://files.pythonhosted.org/packages/eb/f1/dad4e8a88f652d991a4b9a124f1a157224eaf48dc5938eb4015f36d9d3d7/md2ipynb-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "629189599fe02e83a07a5a9e5e79084e", "sha256": "36325aa9656039f8a4f9b1a1d1483caab0523ced58d8184d0fa06798fc2ec485" }, "downloads": -1, "filename": "md2ipynb-0.2.1.tar.gz", "has_sig": false, "md5_digest": "629189599fe02e83a07a5a9e5e79084e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17635, "upload_time": "2019-09-26T18:40:53", "url": "https://files.pythonhosted.org/packages/53/b5/9bcd850d93125b832f1b0a7ee01c174ed924349a9acb855138d115673d82/md2ipynb-0.2.1.tar.gz" } ] }