{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Operating System :: POSIX", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Terminals", "Topic :: Terminals :: Terminal Emulators/X Terminals", "Topic :: Utilities" ], "description": "# tmux-helper-filetransfer\n\nTransfer files to filesystem of host accessible via tmux.\n\n# Usage\n\nIn `tmux.conf`:\n\n```\nbind-key Q run-shell \" \\\n /path/to/.venv/bin/python \\\n -m tmux_helper_filetransfer \\\n --pane-id '#{pane_id}' \\\n --tmux-exe /proc/#{pid}/exe \\\n --tmux-socket '#{socket_path}' \\\n --quiet \\\n /path/to/dotfiles\"\n```\n\nThis transfers `/path/to/dotfiles` to the current directory in the remote\nshell. To take other actions (like `cd`ing to a specific directory before\ntransferring files), then run a shell script that executes the\nhelper inside.\n\n# Requirements\n\nThe target pane can be hosting a terminal on the local host or on a remote\nhost (accessed via e.g. ssh).\n\nThe target pane's shell must be able to successfully execute\n`uudecode | gunzip -c - | tar xf -`.\n\nThe target pane's shell must be in insert mode (not vi-command mode).\n\n# Limitations\n\nSome or all of these may be possible to overcome.\n\n1. Currently the local file processing requires that the entire file be held in\n memory at the same time, plus extra when both the tar and compressed objects\n are in scope - we would need streaming for the tar creation the compression\n and uuencoding.\n2. `uuencode` expands the compressed bytes at least 33%.\n3. Tmux itself is not responsive while executing the subprocess. - we could run\n a background process instead of blocking.\n4. No progress indication - a periodic `display-message` would be the first\n thing to try.\n5. No ability to cancel an in-progress transfer - if spawning a background\n process then giving the cli the ability to communicate via e.g. unix socket\n could be a good way to go.\n\n# Releasing\n\n```\npython setup.py sdist\n# for testing\ntwine upload --repository testpypi dist/*\ntwine upload --repository pypi dist/*\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/chrahunt/tmux-helper-filetransfer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "tmux-helper-filetransfer", "package_url": "https://pypi.org/project/tmux-helper-filetransfer/", "platform": "", "project_url": "https://pypi.org/project/tmux-helper-filetransfer/", "project_urls": { "Homepage": "https://github.com/chrahunt/tmux-helper-filetransfer" }, "release_url": "https://pypi.org/project/tmux-helper-filetransfer/0.1.0/", "requires_dist": null, "requires_python": "~=3.6", "summary": "file transfer cli utility for tmux", "version": "0.1.0" }, "last_serial": 4374460, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "c4d12a35a5602a5d4195696432e4cc3b", "sha256": "0db0edddb9c711467fc3cab01e07e7a24e40be8a6d8b1a793b41041922546554" }, "downloads": -1, "filename": "tmux-helper-filetransfer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c4d12a35a5602a5d4195696432e4cc3b", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.6", "size": 4219, "upload_time": "2018-10-14T15:30:47", "url": "https://files.pythonhosted.org/packages/16/2f/26777e59b5d6c6fafe3645c1732d2c2f66a83a9d106c5a5720f5e1e034ce/tmux-helper-filetransfer-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c4d12a35a5602a5d4195696432e4cc3b", "sha256": "0db0edddb9c711467fc3cab01e07e7a24e40be8a6d8b1a793b41041922546554" }, "downloads": -1, "filename": "tmux-helper-filetransfer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c4d12a35a5602a5d4195696432e4cc3b", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.6", "size": 4219, "upload_time": "2018-10-14T15:30:47", "url": "https://files.pythonhosted.org/packages/16/2f/26777e59b5d6c6fafe3645c1732d2c2f66a83a9d106c5a5720f5e1e034ce/tmux-helper-filetransfer-0.1.0.tar.gz" } ] }