{"id":13740617,"url":"https://github.com/jaclu/tmux-mouse-swipe","last_synced_at":"2025-05-08T20:31:57.616Z","repository":{"id":79665480,"uuid":"416021537","full_name":"jaclu/tmux-mouse-swipe","owner":"jaclu","description":"Tmux plugin, uses mouse horizontal swipe to switch window and vertical to switch session","archived":false,"fork":false,"pushed_at":"2024-12-21T21:56:02.000Z","size":79,"stargazers_count":12,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-21T22:29:50.352Z","etag":null,"topics":["ish-app","mouse-tracking","posix-sh","shell","tmux","tmux-plugins","tpm"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jaclu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-11T17:18:52.000Z","updated_at":"2024-12-21T21:56:05.000Z","dependencies_parsed_at":"2024-03-05T17:28:24.816Z","dependency_job_id":"fd87cb97-0812-43f8-bf3d-0a90a1a08b63","html_url":"https://github.com/jaclu/tmux-mouse-swipe","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaclu%2Ftmux-mouse-swipe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaclu%2Ftmux-mouse-swipe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaclu%2Ftmux-mouse-swipe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaclu%2Ftmux-mouse-swipe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jaclu","download_url":"https://codeload.github.com/jaclu/tmux-mouse-swipe/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253144888,"owners_count":21861142,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ish-app","mouse-tracking","posix-sh","shell","tmux","tmux-plugins","tpm"],"created_at":"2024-08-03T04:00:50.622Z","updated_at":"2025-05-08T20:31:57.040Z","avatar_url":"https://github.com/jaclu.png","language":"Shell","funding_links":[],"categories":["Plugins"],"sub_categories":[],"readme":"# Tmux-Mouse-Swipe\n\nRight click and swipe left or right in any pane to switch window in that\ndirection or swipe up or down to switch session.\n\nAs always any suggestions for improvements are welcome!\n\n## Purpose\n\nWhen you are at the keyboard obviously a key sequence is both faster and more\nnatural to switch sessions or windows.\nI use this tool mostly just getting a quick overview when having the\nterminal on a side screen, in such cases mouse swiping is handy.\n\nThe reason I wrote it as a posix script is that since it gets run multiple\ntimes in quick sequence, on my iPad running iSH, there is a noticeable\nperformance boost not having to repeatedly start bash scripts.\n\n## Installation\n\nComparability: tmux version 3.0 or higher\n\n### With [Tmux Plugin Manager](https://github.com/tmux-plugins/tpm) (recommended)\n\nAdd plugin to the list of TPM plugins in `.tmux.conf`:\n\n```tmux\nset -g @plugin 'jaclu/tmux-mouse-swipe'\n```\n\nHit `\u003cprefix\u003e + I` to fetch the plugin and source it.\n\n### Manual Installation\n\nClone the repository:\n\n```shell\ngit clone https://github.com/jaclu/tmux-mouse-swipe.git ~/clone/path\n```\n\nAdd this line to the bottom of `.tmux.conf`:\n\n```tmux\nrun-shell ~/clone/path/mouse_swipe.tmux\n```\n\nFrom the terminal, reload TMUX environment:\n\n```shell\ntmux source-file ~/.tmux.conf\n```\n\n## Usage\n\nOnce installed, try pressing down right button and swipe up, down, left\nor right on any pane.\n\nOnce you release the button, tmux should switch window after horizontal\nswipe and session after vertical.\n\nIf you only have one Window or Session, a message will be displayed\nthat the requested action can not be performed, depending on swipe direction.\n\n## Minimal movement\n\nSince drag isn't registered until you move one character cell, and at least\none more cell of movement is needed to detect direction, minimal movement\ndistance is two characters.\n\n## Not purely vertical / horizontal swipes\n\nIf both vertical and horizontal swiping is detected, the axis with the most\ndelta is assumed to be the intended direction. Risk for miss-interpertaion\nis reduced by making a slightly longer swipe.\n\n## Pane borders\n\ntmux sends mouse coordinates relative to the pane that the mouse is over,\nso if you cross a pane border during the swipe,\nthe direction of movement will most likely not be the intended.\n\n## Basic modifications\n\nIf you want to bind this to another mouse event, search for the\nMOUSE SUPPORT section in the tmux man page for details on how to bind mouse\nevents. Change the binds towards the end of mouse_swipe.tmux in the top directory\nof this repository.\n\n## Contributing\n\nContributions are welcome, and they are greatly appreciated!\nEvery little bit helps, and credit will always be given.\n\nThe best way to send feedback is to file an issue at\n[tmux-mouse-swipe/issues](https://github.com/jaclu/tmux-mouse-swipe/issues)\n\n### License\n\n[MIT](LICENSE.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaclu%2Ftmux-mouse-swipe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaclu%2Ftmux-mouse-swipe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaclu%2Ftmux-mouse-swipe/lists"}