{ "info": { "author": "Laurent Peuch", "author_email": "cortex@worlddomination.be", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", "Topic :: Software Development", "Topic :: Software Development :: Code Generators" ], "description": "Quick & dirty doc\n=================\n\nThere isn't that much here yet, I'm mostly playing arround.\n\nIn \\*sh shell:\n\n.. code:: bash\n\n python redflyingbaron.py [list of python files]\n\nIn (I)Python shell:\n\n.. code:: python\n\n # assuming that you have run: python redflyingbaron.py redflyingbaron.py ./test_redflyingbaron.py\n\n # for now, red is an overloaded OrderedDict that contains file paths as keys\n # and the corresponding RedBaron instances as values.\n\n red # display the current files\n red[0] # access by index\n red[\"./test_redflyingbaron.py\"] # access by path (look at how this file is given in the cli; yes, it's a lame example)\n red[\"test_redflyingbaron.py\"] # access by filename\n red[\"test_redflyingbaron\"] # access by filename without extension\n red[1:] # accept slices\n\n red[\"f:./test_redflyingbaron.py\"] # custom slicing query, returns files that match this request\n red[\"f:redflyingbaron.py\"] # think of using it on a django project and asking\n red[\"f:redflyingbaron\"] # all \"models\" files\n\n red[re.compile(r'[^_]+')] # can use a regex (^ and $ are put arround the regex)\n red[\"re:[^_]+\"] # regex for the lazy\n\n red[lambda key, value: \"red\" in key] # can use a callable\n\n red.find(\"stuff\") # return the first matched stuff\n red.find_all(\"stuff\") # return all the matched stuff of all the files\n red(\"stuff\") # same\n\n red.display() # display the content of the files, useful with a slice\n\n red[0].save() # save modifications to disk\n red.save() # same but for all files of red (can be combined with slices)\n\n red[0].reload() # reread the content of the file\n red.reload() # same but for all files of red (can be combined with slices)\n\n red.add(\"/path/to/file\", \"/path/to/another/file\", \"again.py\") # add more files\n\nTodo\n====\n\nNext\n----\n\n- .undo() .redo() (needs modifications of RedBaron to display hooks)\n- .set\\_automatic\\_save() (or some better/other api) -> save at every\n modification (needs modifications of RedBaron to display hooks)\n- overload **del** so it behaves like **getitem**\n- allow to use globs in red[query]\n\nFutur\n-----\n\n- .edit(editor=None) (find editor in $EDITOR of env) launch a text\n editor on a tmp file containing the currently selected stuff, when\n editing is done, parse the result and replace the node on which\n .edit() was done with the result (should be in RedBaron instead?)\n- session management: automatically save redflyingbaron instance +\n undo/redo + files content (not sure on this one) somewhere in .json,\n allow to list those and go back into a session\n- RedBaron wrapper to abstract the filesystem (use this to allow python\n files to be anywhere http://docs.pyfilesystem.org/en/latest/)\n- Add more filesystem abstraction, allow some kind of syntaxe like\n \"sftp://\" \"fuse://\" on the Cli api\n- history should be a tree like in vim/emacs\n\n\n\nChangelog\n=========\n\n0.1.1 (2015-02-14)\n----------------\n\n- Convert README to rst for pypi\n- add some classifiers\n\n0.1 (2015-02-14)\n----------------\n\n- First release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Psycojoker/redflyingbaron", "keywords": "baron redbaron refactoring editor ast fst", "license": "lGPLv3+", "maintainer": null, "maintainer_email": null, "name": "redflyingbaron", "package_url": "https://pypi.org/project/redflyingbaron/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/redflyingbaron/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/Psycojoker/redflyingbaron" }, "release_url": "https://pypi.org/project/redflyingbaron/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "Project wrapper arround RedBaron", "version": "0.1.1" }, "last_serial": 1423124, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "9a5acdc802e5becb1c10288ac627f6fe", "sha256": "784b9146224d2f34e571ed161c5852efe15ab2ea55a847319af744d220b3c534" }, "downloads": -1, "filename": "redflyingbaron-0.1-py2.7.egg", "has_sig": false, "md5_digest": "9a5acdc802e5becb1c10288ac627f6fe", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 2639, "upload_time": "2015-02-14T14:12:45", "url": "https://files.pythonhosted.org/packages/5b/42/2176d1ffb7b09179c3c5c649dcdd23a95519d90e6b94a0601b3611a3d4b6/redflyingbaron-0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "8225aa8fdc2d0ed2aa6b8438118715fb", "sha256": "9e44e4b417b72aab96fcba59b3bc2228c86bb36a177995e89da7e7dc74e8475c" }, "downloads": -1, "filename": "redflyingbaron-0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8225aa8fdc2d0ed2aa6b8438118715fb", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 3706, "upload_time": "2015-02-14T14:12:43", "url": "https://files.pythonhosted.org/packages/af/b0/90258ac9d47cf254b2aba3217b9ecda238769a9913e905dd26f569a153df/redflyingbaron-0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee1766f5918a9f5f860e563d236dab82", "sha256": "17a0a4eac07be10cfb2cec551e90a551d9a276a0ffd601a1bf1e0de05b1f22ad" }, "downloads": -1, "filename": "redflyingbaron-0.1.tar.gz", "has_sig": false, "md5_digest": "ee1766f5918a9f5f860e563d236dab82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2265, "upload_time": "2015-02-14T14:12:41", "url": "https://files.pythonhosted.org/packages/1d/0b/3a9bde8c24ae8686b128fe67d85b5a5637a636b4972b69f6050488efb501/redflyingbaron-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "b001cbbbdb1322be0fbc0d33360d7635", "sha256": "4a07fefd9d1bdc5b09422b01efd73314159743fd7a8f2e47803d16be81d78c5e" }, "downloads": -1, "filename": "redflyingbaron-0.1.1-py2.7.egg", "has_sig": false, "md5_digest": "b001cbbbdb1322be0fbc0d33360d7635", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 4122, "upload_time": "2015-02-14T14:22:18", "url": "https://files.pythonhosted.org/packages/43/49/4eb2fbad43e19195db34d4e9aef37a6f870eb22cc2d658378f1599d2bb35/redflyingbaron-0.1.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "52e937694cd5ff7a7e8b50d3711aa614", "sha256": "32204277d9f6a6d2b240bcd76d9ee1fc58774f48c3931e5878b89a07dd90d6b2" }, "downloads": -1, "filename": "redflyingbaron-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "52e937694cd5ff7a7e8b50d3711aa614", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6641, "upload_time": "2015-02-14T14:22:16", "url": "https://files.pythonhosted.org/packages/aa/82/e85ac28a1426bf94fce8f5d8d9afb73f3d3b6a446bf30adc32fdbbd6b138/redflyingbaron-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cae21169c28e6432b4d9d5c93e9460df", "sha256": "4816156ebeeffe0b427d58c1a3af8c3dbccfeb76de9c7868f31c8080a1d004e0" }, "downloads": -1, "filename": "redflyingbaron-0.1.1.tar.gz", "has_sig": false, "md5_digest": "cae21169c28e6432b4d9d5c93e9460df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3953, "upload_time": "2015-02-14T14:22:13", "url": "https://files.pythonhosted.org/packages/0f/7d/3a9386613e6d26d2f4ab93dd931f896ddc3f090a6e16fe60bac62f386519/redflyingbaron-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b001cbbbdb1322be0fbc0d33360d7635", "sha256": "4a07fefd9d1bdc5b09422b01efd73314159743fd7a8f2e47803d16be81d78c5e" }, "downloads": -1, "filename": "redflyingbaron-0.1.1-py2.7.egg", "has_sig": false, "md5_digest": "b001cbbbdb1322be0fbc0d33360d7635", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 4122, "upload_time": "2015-02-14T14:22:18", "url": "https://files.pythonhosted.org/packages/43/49/4eb2fbad43e19195db34d4e9aef37a6f870eb22cc2d658378f1599d2bb35/redflyingbaron-0.1.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "52e937694cd5ff7a7e8b50d3711aa614", "sha256": "32204277d9f6a6d2b240bcd76d9ee1fc58774f48c3931e5878b89a07dd90d6b2" }, "downloads": -1, "filename": "redflyingbaron-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "52e937694cd5ff7a7e8b50d3711aa614", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6641, "upload_time": "2015-02-14T14:22:16", "url": "https://files.pythonhosted.org/packages/aa/82/e85ac28a1426bf94fce8f5d8d9afb73f3d3b6a446bf30adc32fdbbd6b138/redflyingbaron-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cae21169c28e6432b4d9d5c93e9460df", "sha256": "4816156ebeeffe0b427d58c1a3af8c3dbccfeb76de9c7868f31c8080a1d004e0" }, "downloads": -1, "filename": "redflyingbaron-0.1.1.tar.gz", "has_sig": false, "md5_digest": "cae21169c28e6432b4d9d5c93e9460df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3953, "upload_time": "2015-02-14T14:22:13", "url": "https://files.pythonhosted.org/packages/0f/7d/3a9386613e6d26d2f4ab93dd931f896ddc3f090a6e16fe60bac62f386519/redflyingbaron-0.1.1.tar.gz" } ] }