{"id":13479689,"url":"https://github.com/justinmk/vim-dirvish","last_synced_at":"2025-04-12T01:54:35.010Z","repository":{"id":27572503,"uuid":"31054916","full_name":"justinmk/vim-dirvish","owner":"justinmk","description":"Directory viewer for Vim :zap: netrW =\u003e netrL","archived":false,"fork":false,"pushed_at":"2025-02-06T16:43:43.000Z","size":674,"stargazers_count":1224,"open_issues_count":22,"forks_count":65,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-12T01:54:30.106Z","etag":null,"topics":["directory-browser","neovim","neovim-plugin","nvim","plugin","vim","vim-plugin","viml"],"latest_commit_sha":null,"homepage":"","language":"Vim Script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/justinmk.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":"2015-02-20T07:23:17.000Z","updated_at":"2025-04-11T15:36:01.000Z","dependencies_parsed_at":"2023-01-14T07:02:13.698Z","dependency_job_id":"c95350c0-0cd7-4c22-94ae-fb802083b617","html_url":"https://github.com/justinmk/vim-dirvish","commit_stats":{"total_commits":444,"total_committers":43,"mean_commits":"10.325581395348838","dds":0.4279279279279279,"last_synced_commit":"2ddd8ee63d6066ae910b29285d9786cbd0226657"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinmk%2Fvim-dirvish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinmk%2Fvim-dirvish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinmk%2Fvim-dirvish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinmk%2Fvim-dirvish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/justinmk","download_url":"https://codeload.github.com/justinmk/vim-dirvish/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248505872,"owners_count":21115354,"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":["directory-browser","neovim","neovim-plugin","nvim","plugin","vim","vim-plugin","viml"],"created_at":"2024-07-31T16:02:21.442Z","updated_at":"2025-04-12T01:54:34.991Z","avatar_url":"https://github.com/justinmk.png","language":"Vim Script","readme":"dirvish.vim :zap:\n=================\n\nPath navigator designed to work with Vim's built-in mechanisms and\n[complementary](https://github.com/tpope/vim-eunuch)\n[plugins](https://github.com/tpope/vim-unimpaired).\n\n\u003cimg src=\"./dirvish.png\" alt=\"dirvish\" width=\"400\"/\u003e\n\nFeatures\n--------\n\n- _Simple:_ Each line is just a filepath\n- _Flexible:_ Mash up the buffer with `:g`, automate it with `g:dirvish_mode`\n- _Safe:_ Never modifies the filesystem\n- _Non-intrusive:_ Impeccable defaults. Preserves original/alternate buffers\n- _Fast:_ 2x faster than netrw\n- _Intuitive:_ Visual selection opens multiple files\n- _Powerful:_ `:Shdo[!]` generates shell script\n- _Reliable:_ Less code, fewer bugs (96% smaller than netrw). Supports Vim 7.2+\n\nConcepts\n--------\n\n### Lines are filepaths\n\nEach Dirvish buffer contains only filepaths, hidden by [conceal](https://neovim.io/doc/user/syntax.html#conceal).\n\n- Use plain old `y` to yank a path, then feed it to `:r` or `:e` or whatever.\n- Sort with `:sort`, filter with `:global`. Hit `R` to reload.\n- Append to quickfix (`:'\u003c,'\u003ecaddb`), iterate with `:cdo`.\n- Script with `:Shdo[!]`.\n- `:set ft=dirvish` on any buffer to enable Dirvish features:\n  ```\n  git ls-files | vim +'setf dirvish' -\n  ```\n\n### Buffer name is the directory name\n\nSo commands and plugins that work with `@%` and `@#` do the Right Thing.\n\n- Create directories:\n  ```\n  :!mkdir %foo\n  ```\n- Create files:\n  ```\n  :e %foo.txt\n  ```\n- Use `@#` to get the Dirvish buffer from a `:Shdo` buffer:\n  ```\n  :Shdo\n  mkdir \u003cC-R\u003e#.bk\n  Z!\n  ```\n\n### Edit Dirvish buffers\n\nFor any purpose. It's safe and reversible.\n\n- Use `:sort` or `:global` to re-arrange the view, delete lines with `d`, etc.\n  Then `:%Shdo` the result.\n- Pipe to `:!` to see inline results:\n  ```\n  :'\u003c,'\u003e!xargs du -hs\n  ```\n- Type `u` to undo, or `R` to reload.\n\n### Work with the :args list\n\nThe [arglist](https://neovim.io/doc/user/editing.html#arglist) is an ad-hoc list of filepaths.\n\n- Type `x` to add files to the (window-local) arglist.\n- Iterate with standard commands like `:argdo`, or [plugin](https://github.com/tpope/vim-unimpaired) features like `]a`.\n- Run `:Shdo!` (mapping: `[count].`) to generate a shell script from the arglist.\n\n\nExtensions\n----------\n\nSome people have created plugins that extend Dirvish:\n\n- [remote-viewer](https://github.com/bounceme/remote-viewer) - Browse `ssh://` and other remote paths\n- [dirvish-git.nvim](https://github.com/brianhuster/dirvish-git.nvim) - Show git status of each file\n- [vim-dirvish-git](https://github.com/kristijanhusak/vim-dirvish-git) - Show git status of each file \n- [vim-dirvinist](https://github.com/fsharpasharp/vim-dirvinist) - List files defined by projections\n- [dirvish-do.nvim](https://github.com/brianhuster/dirvish-do.nvim) - Add file manipulation keybindings\n- [vim-dirvish-dovish](https://github.com/roginfarrer/vim-dirvish-dovish) - Add vim-style file manipulation commands\n\n\nCredits\n-------\n\nDirvish was originally forked (and completely rewritten) from\n[filebeagle](https://github.com/jeetsukumaran/vim-filebeagle) by Jeet Sukumaran.\n\nCopyright 2015 Justin M. Keyes.\n","funding_links":[],"categories":["Vim Script","Vim","Vim script","Tools"],"sub_categories":["Plugins","File Management"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinmk%2Fvim-dirvish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustinmk%2Fvim-dirvish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinmk%2Fvim-dirvish/lists"}