{"id":13400395,"url":"https://github.com/sachaos/viddy","last_synced_at":"2025-05-11T11:02:58.372Z","repository":{"id":37593799,"uuid":"395917032","full_name":"sachaos/viddy","owner":"sachaos","description":"👀 A modern watch command. Time machine and pager etc.","archived":false,"fork":false,"pushed_at":"2025-04-08T02:11:59.000Z","size":21934,"stargazers_count":4969,"open_issues_count":19,"forks_count":92,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-05-07T07:57:09.909Z","etag":null,"topics":["cli","golang","terminal","tui","watch"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/sachaos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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,"zenodo":null},"funding":{"github":["sachaos"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2021-08-14T06:40:12.000Z","updated_at":"2025-05-06T02:59:40.000Z","dependencies_parsed_at":"2025-03-04T16:02:50.316Z","dependency_job_id":"f294d433-b345-4968-9fb5-dcb4ce250dad","html_url":"https://github.com/sachaos/viddy","commit_stats":{"total_commits":205,"total_committers":31,"mean_commits":6.612903225806452,"dds":0.4439024390243902,"last_synced_commit":"d596c0b12fed5b735ddc88a738f8b87a29ec5f5e"},"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sachaos%2Fviddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sachaos%2Fviddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sachaos%2Fviddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sachaos%2Fviddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sachaos","download_url":"https://codeload.github.com/sachaos/viddy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252839275,"owners_count":21812084,"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":["cli","golang","terminal","tui","watch"],"created_at":"2024-07-30T19:00:51.569Z","updated_at":"2025-05-11T11:02:58.350Z","avatar_url":"https://github.com/sachaos.png","language":"Rust","funding_links":["https://github.com/sponsors/sachaos"],"categories":["Rust","开源类库","Go","Open source library","terminal","\u003ca name=\"file-watch\"\u003e\u003c/a\u003eFile watching for changes","Other","Misc","☁️ Cloud"],"sub_categories":["终端工具","Terminal Tools","Software packages"],"readme":"# Viddy\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"images/logo.png\" width=\"200\" alt=\"viddy\" title=\"viddy\" /\u003e\n\u003c/p\u003e\n\nModern `watch` command.\n\nViddy well, gopher. Viddy well.\n\n## Demo\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"images/demo.gif\" width=\"100%\" alt=\"viddy\" title=\"viddy\" /\u003e\n\u003c/p\u003e\n\n## Features\n\n* Basic features of original watch command.\n    * Execute command periodically, and display the result.\n    * color output.\n    * diff highlight.\n* Time machine mode. 😎\n    * Rewind like video.\n    * Go to the past, and back to the future.\n* Look back history.\n    * Save and load history.\n* See output in pager.\n* Vim like keymaps.\n* Search text.\n* Suspend and restart execution.\n* Support shell alias\n    * See detail https://github.com/sachaos/viddy/issues/2#issuecomment-904002053\n* Customize keymappings.\n* Customize color.\n\n## Install\n\n### Cargo\n\n```shell\ncargo install viddy\n```\n\n### [Homebrew](https://brew.sh)\n\n```shell\nbrew install viddy\n```\n\n### Linux\n\n```shell\nwget -O viddy.tar.gz https://github.com/sachaos/viddy/releases/download/v1.3.0/viddy-v1.3.0-linux-x86_64.tar.gz \u0026\u0026 tar xvf viddy.tar.gz \u0026\u0026 mv viddy /usr/local/bin\n```\n\n### Other\n\nDownload from [release page](https://github.com/sachaos/viddy/releases).\n\n## Install with Other Package Managers (Community-Maintained)\n\n### [MacPorts](https://www.macports.org)\n\n```shell\nsudo port install viddy\n```\n\n### [Scoop](https://scoop.sh/)\n\nTo install Viddy on Windows, first install the Scoop package manager, and then run the commands below.\n\n**NOTE**: The git package is required in order to add additional Scoop \"buckets\".\n\n```\nscoop install git\nscoop bucket add extras\nscoop install extras/viddy\n```\n\n### ArchLinux ( AUR )\n\n```shell\nyay -S viddy\n```\nAlternatively you can use the [AUR Git repo](https://aur.archlinux.org/packages/viddy/) directly\n\n### Alpine Linux\n\nAfter [enabling the community repository](https://wiki.alpinelinux.org/wiki/Enable_Community_Repository):\n\n```shell\napk add viddy\n```\n\n### [asdf version manager](https://asdf-vm.com)\n\n```shell\nasdf plugin add viddy\nasdf install viddy latest\nasdf global viddy latest\n```\n\n## Keymaps\n\n| key       |                                            |\n|-----------|--------------------------------------------|\n| SPACE     | Toggle time machine mode                   |\n| s         | Toggle \u003cins\u003es\u003c/ins\u003euspend execution                   |\n| b         | Toggle ring terminal \u003cins\u003eb\u003c/ins\u003eell                  |\n| d         | Toggle \u003cins\u003ed\u003c/ins\u003eiff                                |\n| t         | Toggle header/\u003cins\u003et\u003c/ins\u003eitle display                      |\n| ?         | Toggle help view                           |\n| /         | Search text                                |\n| j         | Pager: next line                           |\n| k         | Pager: previous line                       |\n| h         | Pager: move left                           |\n| l         | Pager: move right                          |\n| Control-F | Pager: page down                           |\n| Control-B | Pager: page up                             |\n| g         | Pager: go to top of page                   |\n| Shift-G   | Pager: go to bottom of page                |\n| Shift-J   | (Time machine mode) Go to the past         |\n| Shift-K   | (Time machine mode) Back to the future     |\n| Shift-F   | (Time machine mode) Go to more past        |\n| Shift-B   | (Time machine mode) Back to more future    |\n| Shift-O   | (Time machine mode) Go to oldest position  |\n| Shift-N   | (Time machine mode) Go to current position |\n\n## Configuration\n\nViddy can be used without any configuration.\nHowever, if you want to customize the keybindings or default behavior, you can do so.\n\nInstall your config file on `$XDG_CONFIG_HOME/viddy.toml`\nOn macOS, the path is `~/Library/Application\\ Support/viddy.toml`.\n\n```toml\n[general]\nno_shell = false\nshell = \"zsh\"\nshell_options = \"\"\nskip_empty_diffs = false\ndisable_mouse = true\n\n[keymap]\ntimemachine_go_to_past = \"Down\"\ntimemachine_go_to_more_past = \"Shift-Down\"\ntimemachine_go_to_future = \"Up\"\ntimemachine_go_to_more_future = \"Shift-Up\"\ntimemachine_go_to_now = \"Ctrl-Shift-Up\"\ntimemachine_go_to_oldest = \"Ctrl-Shift-Down\"\nscroll_left = \"h\"\nscroll_right = \"l\"\nscroll_up = \"k\"\nscroll_down = \"j\"\nscroll_half_page_up = \"Ctrl-u\"\nscroll_half_page_down = \"Ctrl-d\"\nscroll_page_up = \"Ctrl-b\"\nscroll_page_down = \"Ctrl-f\"\nscroll_bottom_of_page = \"Shift-g\"\nscroll_top_of_page = \"g g\"\n\n[color]\nbackground = \"white\" # Default value is inherit from terminal color.\n```\n\n## What is \"viddy\" ?\n\n\"viddy\" is Nadsat word meaning to see.\nNadsat is fictional argot of gangs in the violent book and movie \"A Clockwork Orange\".\n\n## Credits\n\nThe gopher's logo of viddy is licensed under the Creative Commons 3.0 Attributions license.\n\nThe original Go gopher was designed by [Renee French](https://reneefrench.blogspot.com/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsachaos%2Fviddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsachaos%2Fviddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsachaos%2Fviddy/lists"}