Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

justinmk/vim-dirvish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

460 Commits

Repository files navigation

dirvish.vim ⚡

Path navigator designed to work with Vim's built-in mechanisms and complementary plugins.

dirvish

Features

  • Simple: Each line is just a filepath
  • Flexible: Mash up the buffer with :g, automate it with g:dirvish_mode
  • Safe: Never modifies the filesystem
  • Non-intrusive: Impeccable defaults. Preserves original/alternate buffers
  • Fast: 2x faster than netrw
  • Intuitive: Visual selection opens multiple files
  • Powerful: :Shdo[!] generates shell script
  • Reliable: Less code, fewer bugs (96% smaller than netrw). Supports Vim 7.2+

Concepts

Lines are filepaths

Each Dirvish buffer contains only filepaths, hidden by conceal.

  • Use plain old y to yank a path, then feed it to :r or :e or whatever.
  • Sort with :sort, filter with :global. Hit R to reload.
  • Append to quickfix (:'<,'>caddb), iterate with :cdo.
  • Script with :Shdo[!].
  • :set ft=dirvish on any buffer to enable Dirvish features:
    git ls-files | vim +'setf dirvish' -
    

Buffer name is the directory name

So commands and plugins that work with @% and @# do the Right Thing.

  • Create directories:
    :!mkdir %foo
    
  • Create files:
    :e %foo.txt
    
  • Use @# to get the Dirvish buffer from a :Shdo buffer:
    :Shdo
    mkdir <C-R>#.bk
    Z!
    

Edit Dirvish buffers

For any purpose. It's safe and reversible.

  • Use :sort or :global to re-arrange the view, delete lines with d, etc. Then :%Shdo the result.
  • Pipe to :! to see inline results:
    :'<,'>!xargs du -hs
    
  • Type u to undo, or R to reload.

Work with the :args list

The arglist is an ad-hoc list of filepaths.

  • Type x to add files to the (window-local) arglist.
  • Iterate with standard commands like :argdo, or plugin features like ]a.
  • Run :Shdo! (mapping: [count].) to generate a shell script from the arglist.

Extensions

Some people have created plugins that extend Dirvish:

Credits

Dirvish was originally forked (and completely rewritten) from filebeagle by Jeet Sukumaran.

Copyright 2015 Justin M. Keyes.

About

Directory viewer for Vim ⚡ netrW => netrL

Topics

Resources

License

Stars

Watchers

Forks

Contributors 39

AltStyle によって変換されたページ (->オリジナル) /