{ "info": { "author": "Aaron G. Tumulak", "author_email": "agtumulak@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console :: Curses", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Topic :: Database :: Front-Ends" ], "description": "#######\ndabbiew\n#######\n.. image:: https://travis-ci.org/agtumulak/dabbiew.svg?branch=master\n :target: https://travis-ci.org/agtumulak/dabbiew\n\n.. image:: https://coveralls.io/repos/github/agtumulak/dabbiew/badge.svg?branch=master\n :target: https://coveralls.io/github/agtumulak/dabbiew?branch=master\n\n.. image:: https://readthedocs.org/projects/dabbiew/badge/?version=latest\n :target: http://dabbiew.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\nA curses-based DataFrame viewer inspired by TabView\n\n.. image:: doc/images/dabbiew.gif\n :scale: 50 %\n :alt: alternate text\n :align: center\n\n*****\nAbout\n*****\nThis is a side project for now. I work on it because I want more green squares \non my GitHub profile.\n\nThe main difference between TabView and DabBiew is that underlying data \nstructure is a pandas DataFrame instead of a list of lists. This has the \nadvantage of potentially being able to take advantage of Dask, which supports \n\"Big Data\" collections for distributed environments.\n\n************\nInstallation\n************\n::\n\n pip install dabbiew\n\n*****\nUsage\n*****\nOpen any csv or Excel file::\n\n dabbiew file.csv\n dabbiew file.xlsx\n\n************\nKey Bindings\n************\nA move command can be repeated by typing the number of times to repeat before\nissuing an action. For example, to move down 12 times, simply type ``12j`` (or\n``12\u2193``). To perform a search, open the search bar with ``\\``, enter a\nsubstring to match, and hit return (``\u21b5``).\n\n================================================= ==================================\nKey Action\n================================================= ==================================\n``v`` toggle selection mode\n``esc`` cancel selection\n``h`` ``j`` ``k`` ``l`` ``\u2190`` ``\u2193`` ``\u2191`` ``\u2192`` movement keys\n``ctrl+f``, ``ctrl+b`` page down, page up\n``s``, ``S`` sort ascending, descending\n``gg``, ``GG`` jump to top, bottom of DataFrame\n``^``, ``$`` jump to left, right of DataFrame\n``,``, ``.`` decrease, increase selection width\n``<``, ``>`` decrease, increase all widths\n``t``, ``y`` toggle header, index\n``[``, ``]`` decrease, increase index width\n``:`` toggle command mode\n``/`` toggle search bar\n``n``, ``p`` next, previous match\n``d`` enter ipdb debug mode\n``q`` quit\n================================================= ==================================\n\n************\nCommand Mode\n************\nEntering command mode (``:``) allows the user to call *any DataFrame method\nwhich returns a Series or DataFrame* on the current selection. For instance, the\nuser can call ``:sum()``, ``:where(df==42)``, or even ``:where(df==42).sum()``\non a selection. The resulting Series or DataFrame is rendered in a nested\ninstance. To go back to the previous DataFrame, simply quit (``q``) the current\ninstance. If the selection is just a single cell, the call is made to the entire\nDataFrame inplace. Note the name of the current DataFrame is always called\n``df``.\n\n*************\nDocumentation\n*************\nTo generate the source code documentation do::\n\n cd doc\n make html\n\nand open ``_build/html/index.html``", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/agtumulak/dabbiew", "keywords": "c,u,r,s,e,s, ,d,a,t,a,f,r,a,m,e, ,v,i,e,w,e,r", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "dabbiew", "package_url": "https://pypi.org/project/dabbiew/", "platform": "", "project_url": "https://pypi.org/project/dabbiew/", "project_urls": { "Homepage": "https://github.com/agtumulak/dabbiew" }, "release_url": "https://pypi.org/project/dabbiew/0.6/", "requires_dist": null, "requires_python": "", "summary": "A curses-based DataFrame viewer inspired by TabView.", "version": "0.6" }, "last_serial": 3344721, "releases": { "0.1": [], "0.1.dev20170616": [ { "comment_text": "", "digests": { "md5": "6a8dadc6d9fde3cf73c858d2c82ed329", "sha256": "c3f873eed656232ad04845a5f8a86041f9884579de5918a1399bbb10c0ac7580" }, "downloads": -1, "filename": "dabbiew-0.1.dev20170616.tar.gz", "has_sig": false, "md5_digest": "6a8dadc6d9fde3cf73c858d2c82ed329", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9507, "upload_time": "2017-06-16T08:22:50", "url": "https://files.pythonhosted.org/packages/90/48/e0850796848eafdc5417667420abf7724fc74a44c879adf52366c0144216/dabbiew-0.1.dev20170616.tar.gz" } ], "0.2.dev20170617": [ { "comment_text": "", "digests": { "md5": "b4aa4bdf12142b25247461d7e7d2ae9e", "sha256": "6009e5d92810d6ed359cc9c1f8008a48dbe40f0b867b14d616763b4761f9cdab" }, "downloads": -1, "filename": "dabbiew-0.2.dev20170617.tar.gz", "has_sig": false, "md5_digest": "b4aa4bdf12142b25247461d7e7d2ae9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10348, "upload_time": "2017-06-17T07:50:02", "url": "https://files.pythonhosted.org/packages/2c/32/00cd9ee02b581059527113b7d38a2fec5eb6a3b2881b6f72c214d67b0095/dabbiew-0.2.dev20170617.tar.gz" } ], "0.2.dev20171118": [ { "comment_text": "", "digests": { "md5": "b75f653f0022d31b79cf4682650da4d7", "sha256": "9e935ee41d19b516b9063308f56d10c665fd017dddf666b72acda22e39fa54cb" }, "downloads": -1, "filename": "dabbiew-0.2.dev20171118.tar.gz", "has_sig": false, "md5_digest": "b75f653f0022d31b79cf4682650da4d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12768, "upload_time": "2017-11-18T21:25:38", "url": "https://files.pythonhosted.org/packages/e6/3a/3865395ecadebe20b290d15cc788d98413d03a22c9fc8c61f79458c56034/dabbiew-0.2.dev20171118.tar.gz" } ], "0.3.dev20170617": [ { "comment_text": "", "digests": { "md5": "b09c56aa5d2526fafd44b233d2ef190b", "sha256": "4101907bd48436aa8f639e9e0602064eb04043381c2c9bd85c5263dadb6f28a4" }, "downloads": -1, "filename": "dabbiew-0.3.dev20170617.tar.gz", "has_sig": false, "md5_digest": "b09c56aa5d2526fafd44b233d2ef190b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10783, "upload_time": "2017-06-18T04:49:42", "url": "https://files.pythonhosted.org/packages/81/3e/d2aa0624f34c17e2b79221df1bf36b8d2b488d292ad437cd261bd7a984aa/dabbiew-0.3.dev20170617.tar.gz" } ], "0.4.dev20170618": [ { "comment_text": "", "digests": { "md5": "62a8887b34d3afe353063a176f6073d8", "sha256": "a9e14374b9eee317a5a8bbb08ae83efc7e697b533f19e48bab5f85e5fc230493" }, "downloads": -1, "filename": "dabbiew-0.4.dev20170618.tar.gz", "has_sig": false, "md5_digest": "62a8887b34d3afe353063a176f6073d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11168, "upload_time": "2017-06-18T22:25:42", "url": "https://files.pythonhosted.org/packages/b0/fd/f7098a294e60564c12185981ad0e98fb8c92dc57585eef72f716dfdb8869/dabbiew-0.4.dev20170618.tar.gz" } ], "0.5.dev20170618": [ { "comment_text": "", "digests": { "md5": "da4a5726f85a2979773dd4b3ea1c0073", "sha256": "8f3eb6b6abcdc963734ae7c71595ded458eac5db1b51bc30ebe91d47e1b7fdbc" }, "downloads": -1, "filename": "dabbiew-0.5.dev20170618.tar.gz", "has_sig": false, "md5_digest": "da4a5726f85a2979773dd4b3ea1c0073", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11227, "upload_time": "2017-06-19T01:03:13", "url": "https://files.pythonhosted.org/packages/f6/78/ac8109ee2b0e211ebf93b19f66ec3aa024823fab4e78d3152246d506bd80/dabbiew-0.5.dev20170618.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "5e5f8ea3d85548a086b7329dfe66aa0e", "sha256": "7f598fdc567019ac345e6828c9caf7e5952df0b82c09d715c7670ab42ad603d4" }, "downloads": -1, "filename": "dabbiew-0.6.tar.gz", "has_sig": false, "md5_digest": "5e5f8ea3d85548a086b7329dfe66aa0e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12740, "upload_time": "2017-11-18T21:46:32", "url": "https://files.pythonhosted.org/packages/17/00/4476df1e68e1007932473ed856c69d7c38907388bb639a3e1eb3eaed63b9/dabbiew-0.6.tar.gz" } ], "0.6.dev20171118": [ { "comment_text": "", "digests": { "md5": "a9cd2c882fdd9def05067a0365c88e14", "sha256": "1f5e2415b62b2235044f197726cfa8b9230dcb3ada893f012da9c77ba5057e22" }, "downloads": -1, "filename": "dabbiew-0.6.dev20171118.tar.gz", "has_sig": false, "md5_digest": "a9cd2c882fdd9def05067a0365c88e14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12759, "upload_time": "2017-11-18T21:36:06", "url": "https://files.pythonhosted.org/packages/42/cd/5fc1562ed51148dd53d1786ded27a620c35d81261a311f124fa7162ef75c/dabbiew-0.6.dev20171118.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5e5f8ea3d85548a086b7329dfe66aa0e", "sha256": "7f598fdc567019ac345e6828c9caf7e5952df0b82c09d715c7670ab42ad603d4" }, "downloads": -1, "filename": "dabbiew-0.6.tar.gz", "has_sig": false, "md5_digest": "5e5f8ea3d85548a086b7329dfe66aa0e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12740, "upload_time": "2017-11-18T21:46:32", "url": "https://files.pythonhosted.org/packages/17/00/4476df1e68e1007932473ed856c69d7c38907388bb639a3e1eb3eaed63b9/dabbiew-0.6.tar.gz" } ] }