{"adoption": {"forks": 79, "observed_at": "2026-08-28T04:05:49.172490+00:00", "stars": 1887}, "canonical_url": "https://ross.abutalabs.com/products/vim-eunuch", "card": {"archived": false, "artifact_type": "plugin", "description": "eunuch.vim: Helpers for UNIX", "domain": ["text-editors", "developer-tools"], "enriched": true, "function": ["developer-tools", "file-system", "cli"], "health_score": 78, "homepage": "https://www.vim.org/scripts/script.php?script_id=4300", "language": "Vim Script", "license": null, "license_family": "other", "maturity": "stable", "member_repos": ["tpope/vim-eunuch"], "name": "tpope/vim-eunuch", "platform": ["editor-plugin"], "pushed_at": "2026-08-12T19:52:28+00:00", "repo": "tpope/vim-eunuch", "stars": 1887, "tags": ["vim", "vim-plugin", "unix-commands", "sudo", "file-management", "command-line", "linux", "macos"], "topics": [], "urls": [], "use_cases": ["delete a file and its buffer from vim", "rename a file and buffer together in vim", "edit a root-owned file with sudo in vim", "write a privileged file with sudo from vim", "run find or locate and load results into vim quickfix", "make a script executable automatically after writing a shebang", "create a directory next to the current file in vim"], "what_it_is": "eunuch.vim is a Vim plugin by Tim Pope that provides convenient Vim commands wrapping common UNIX shell operations like deleting, renaming, and chmod-ing files, plus sudo write/edit and find/locate integration into the quickfix list. It keeps buffer state and filesystem state in sync when manipulating files from within Vim.", "when_to_avoid": ["you use Neovim/VS Code and prefer modern Lua or extension-based tooling", "you only need file management outside the editor", "you need a cross-platform solution for Windows without a UNIX shell"], "when_to_choose": ["you live in Vim and frequently rename, delete, or chmod files from the editor", "you need to edit or write root-owned files without leaving Vim", "you want find/locate results piped into Vim's quickfix or location lists"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/vim-eunuch", "repo": "tpope/vim-eunuch", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:49.172490+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:13:33.580115+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6a984302a94940b80ed52d51e52275e11893f7ec3fca6c5cd506ad7dc2a03246", "fetched_at": "2026-08-28T04:05:49.172490+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tpope/vim-eunuch"}, {"content_hash": "bf3b16dca212b6f3cfb8a86aee0698ec4ea271ee89e3d4f0a3fa105164e78fdf", "fetched_at": "2026-08-29T10:52:31.220019+00:00", "kind": "homepage", "missing": false, "url": "https://www.vim.org/scripts/script.php?script_id=4300"}, {"content_hash": "1bd2c1907ce583bdb014401e1229b10ee420cbbca27e266114027411e3628b0e", "fetched_at": "2026-08-29T10:52:31.229293+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/about.php"}, {"content_hash": "438015e9e2e224b3299fb86f6741fd41c512883b83117a11364c1e135ae35eb5", "fetched_at": "2026-08-29T10:52:31.231216+00:00", "kind": "site_page", "missing": false, "url": "https://www.vim.org/docs.php"}, {"content_hash": "fbe78bde9535f679e3f6559ca956dc0daf3a90066936bf0c667fc2a5b2f0f9d4", "fetched_at": "2026-08-29T10:52:31.232865+00:00", "kind": "site_page", "missing": false, "url": "http://www.vim.org/about.php"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5364, "days_push": 21, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}