Vim like navigation keys for Finder

Solution 1:

Vim can get addictive once we get the hang of it. To vim-ify the Finder is a lovely idea.

However, what features are you thinking about? For example, browsing files using the navigation keys h, j, k, l, then pressing i to enter edit mode and rename files or folders?

Vim’s power lies in text mode, whereas macOS interface is designed to be used with a mouse/trackpad. It may be better to stick with vim to process textual information, and to use mouse/trackpad in a graphical environment.

By the way, I cannot see a simple and effective way to hack the Finder (as you said Karabiner is fantastic, but it just won't do it). It would probably require to program a specific macOS Finder utility using Swift.

Alternatively:

  1. Some code editors can be controlled the vim way, like Sublime Text with enabling the Vintage Mode.

  2. Web browsers can be controlled the vim way: Chrome with Vimium or cVim, Firefox with Vimium-FF or Vim Vixen (thanks to @Ruslan and @wchargin for mentioning it)

  3. The bash shell running in Terminal.app can be used in vi mode using set -o vi or set editing-mode vi.

  4. There are great textual file managers ready to install via Homebrew that worth a try, like:

    • nnn. To install run brew install nnn.

    • lf. To install run brew install lf.

    • vifm. To install run brew lf.

    • ranger. To install run brew install ranger.

    • midnight-commander. To install run brew install midnight-commander. Run by typing mc.

    • fdclone. To install run brew install fdclone. Run by typing fd.

Solution 2:

Vim Motion

Vim Motion is an open source app which fairly does what you ask, it does more than just with Finder including stuff like Launchpad and other UI elements.

We are bringing vim-easymotion to macOS , where most UI elements can be accessed with your fingers stay on the keyboard. Hope vim users enjoy it as much as we do ♥️

Along with the favorite Vimari ext on Safari or Vimium on Chrome, vim users will gain a new power.

Basic Movement:

Hint mode

  • + ; To show tags on UI.
  • Type Tag title to filter and trigger action, Delete if you want to refilter tags. esc, + w or + ; To dismiss tags.
  • Spacebar to temporary hide tags for 0.75s. This helping you see contents under tags without dismiss and reopen Hint mode.
  • Tab to show Switch window mode, Tab again to hide it.(This feature required Screen Recording permission to capture windows image for using as thumbnails)
  • Easy to switch windows of Active workspace with Tab in Hint mode.

Scroll Mode

  • + ' To show scroll mode on UI.
  • esc, + w or + ; To dismiss scroll mode.
  • Tab or Shift + Tab to navigate between Scroll area
  • hjkl to scroll, you can go to Preferences window to revert J <-> K.
Surprising it has multi-monitor support, check the github for more documentation of usage