
Big Pile of Vim-Like - se7entime
https://vim.reversed.top/
======
susam
In the graphical browser category, I have tried Qutebrowser and it is neat.
However, Firefox remains as my primary web browser. I use the Vimium plugin
with Firefox. It provides Vim-like key bindings for many commonly used
browsing tasks.

My most favourite commands in Vimum are 'f' and 'F'. The 'f' or 'F' command
creates key combinations for all the links found in the page. It highlights
the key combinations in little yellow boxes above every link. We can then type
the lowercase key combination for a link to open that link. While 'f' opens
the link in the current tab, 'F' opens it in a new tab. Alternatively, we can
type uppercase key combinations to reverse the behaviour of 'f' and 'F', i.e.,
'f' with upper case key combination opens the link in a new tab and 'F' with
upper case key combination opens it in the current tab.

My other favourite commands, in no particular order, are: 'J' (go one tab
left), 'K' (go one tab right), 'H' (go back in history), 'L' (go forward in
history), 't' (create new tab), 'T' (search through open tabs), 'x' (close
tab), and 'r' (reload page).

Also, there are the 'h', 'j', 'k', and 'l' commands to scroll left, down, up,
and right, respectively.

Vimium for Firefox: [https://addons.mozilla.org/en-US/firefox/addon/vimium-
ff/](https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/)

Vimium for Chrome:
[https://chrome.google.com/webstore/detail/vimium/dbepggeogba...](https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb)

~~~
alpaca128
Same here - I used qutebrowser exclusively for a couple months, but in the end
I couldn't handle all the annoying popups and autoplaying videos in modern
websites - all things that you can block with a single plugin in Firefox,
together with ads. Too bad, because Vim plugins never allow full UI control in
Firefox(e.g. closing an empty "new tab" is impossible with Vim plugins).

Recently I switched from Vimium to Surfingkeys, which is comparable but also
offers an actual Vim emulator for text field input. Can definitely recommend
it.

~~~
konart
>closing an empty "new tab" is impossible with Vim plugins

Well, strictly speaking Tridactyl can do this. They overwrite your empty tab
with their own so Tridactyl works there too and you can 'd' the tab.

------
OskarS
The one of these that I've come to adore the most is the ranger file manager.
I almost never use any GUI file managers (or command line tools, for that
matter) for file management after starting to use ranger seriously. It's so
fast and works exactly the way I want it to. I've also hooked my terminal up
such that I'm cd'ed into whatever folder I last navigated to in ranger (I use
the alias `rd` for this), so I virtually never type `cd` in the terminal
anymore. Super slick!

~~~
vifon
Protip: If you use bash or zsh, you can source the ranger executable for this
behavior (so the full command would be ". ranger"). If you're on fish, there
is a patch pending for review, that soon will be available on master.

~~~
j88439h84
I don't observe a difference between `ranger` and `. ranger` in zsh. What am I
supposed to notice?

~~~
grandpa
With `. ranger`, if you change directory and then exit, the shell's working
directory changes to where you left off in Ranger.

    
    
      $ pwd
      /home/grandpa
      $ ranger
      [ ... change directory ... ]
      $ pwd
      /home/grandpa
    

vs

    
    
      $ . ranger
      [ ... change directory ... ]
      $ pwd
      /home/grandpa/src

~~~
j88439h84
Got it. Thanks.

------
stdcall83
My app is missing... :)

[https://github.com/mellowcandle/bitwise](https://github.com/mellowcandle/bitwise)

~~~
cerberusss
Awesome app, and it looks like you put in a lot of effort into packaging too.

------
danmg
"Vim modes" only offer like 40%-60% coverage of features in IDEs. I haven't
found one yet that lets you set marks with :k[letter]. Jetbrains (and maybe
viper) are the only ones I've found that support block modes.

"Vim mode" means a lot more than just using 'hjklioaD^['. It would be fairer
to call them "nvi modes".

~~~
tcoff91
Evil mode in emacs is pretty damned close. Biggest painful diff is that emacs
regex isn’t as powerful as vim.

~~~
bjoli
There is a package that uses python for regular expressions, which gives you
the full pcre power: [https://github.com/benma/visual-regexp-
steroids.el/](https://github.com/benma/visual-regexp-steroids.el/)

------
ctw
One of my side projects is a canvas-based graph editor with vim-like controls:
[https://troywolters.com/modal-graph-editor/](https://troywolters.com/modal-
graph-editor/)

It’s very basic, missing a lot of features, and likely buggy, but I’ve had fun
making it and using it.

It saves to and loads from localStorage, so you can use it without an account
and save and load graphs on the same machine.

------
gwenzek
It's great to see this list, but it's a bit sad that all those app have to
emulate Vim behavior. Do they all handle .vimrc? I think it's ridiculous that
some app insists on me using their keybinding instead of mine. I'd love to
have an OS level way of exposing commands and settings key bindings across
apps.

~~~
bisby
some apps actually use neovim or vim in client server mode and dont just
emulate vim behavior, but flat out run vim.

But even those cases I've had mixed results on "obeys vimrc keybindings" and
"captures all keypresses and uses vim purely as a modal"

firenvim for example, puts nvim into textarea boxes in firefox, and it loads
up all my vimrc theme and status bar and stuff (but only dumps the text into
the textarea on :w). whereas VSCode vim plugin merely uses vim under the hood
for the actual text editing, but doesnt pass every keybind back (nor does it
do color formatting). Which puts it into uncanny valley for me, and unless
someone is VSCode live sharing at me, I don't use it.

------
b0rsuk
It's interesting how Vim and Emacs take opposite approach to solving this!

Emacs: put all applications into emacs! Vim: make other applications
controlled like vim!

I'm a vim user and I prefer #2.

~~~
iLemming
Because Vim is not an editor. It's an idea. Probably one of the best ideas
that ever happened in the computer science. Another great idea (often
mistakenly called a programming language) is idea of Lisp. When you combine
these ideas together you can get something insanely powerful. If you never
tried Spacemacs or DoomEmacs, I encourage you to check them out.

------
mtts
One of the editors it lists is "vy" : a Vim-like in python:
[https://github.com/vyapp/vy](https://github.com/vyapp/vy)

Does anyone have any experience with this? I'd love to have a vim that is more
pleasant to program.

edit: added link

~~~
lytedev
Check out Neovim! It features Lua as a first-class scripting language. I'm
planning on giving it a whirl by migrating my VimL configuration to Lua.

~~~
mtts
Ah, good call. Did not know that. Will look into it. Thanks!

------
celeritascelery
When I see things like this, it reminds me that what makes vim special is not
the software but it’s keybindings. That is why there are so many clones like
spacemacs or VScodeVim. You can take the vim keys and you basically have the
whole package but using your own software.

~~~
rgrau
I never thought of it that way, but that's a very good point indeed.

As an emacs user, I think what makes emacs special is not the keybindings, but
the software itself, or, better phrased, the architecture and approach to
extensibility that the software uses. Opinions on that?

~~~
jaster
Totally agree, that's the reason why I use spacemacs with vim-bindings (having
previously used vim, then vanilla emacs, then emacs with evil-mode).

I prefer "vim-shortcuts" and "emacs-software". Best of both worlds in my view
!

~~~
least
I like emacs because it has so many neat applications built into it and in
many ways works so much better than vim. Magit is really impressive,
projectile is great, and helm is something I wish I could use in vim. I like
that each major mode bundles in a lot of unique functionality that is specific
to that mode. I like that the GUI emacs allows for inline images, pdf viewing,
and variable pitched fonts so if I'm editing an org or markdown file,
different kinds of text can be properly represented with weight, style, and
size. This makes it so much more enjoyable for writing prose than vim.

Still, when it comes down to doing specific coding work, my experience in vim
is generally better. LSP plugins like Coc.nvim are much simpler than emacs and
work better than lsp-mode, in my experience. Emacs 26 still has poor base
support for JSX (improved in 27) and there are several popular modes for
dealing with the web and javascript development, which all have their own
annoyances. In vim I've not had these issues.

Setting up environments for developing in vim for various languages have
generally been easier and work mostly without having to do anything other than
perhaps installing a plugin for syntax highlighting. In Emacs I find myself
wrestling with several different modes, several of which don't cooperate with
each other. I have to add hooks for every language for every mode I want to
integrate into it. Also, sometimes they heavily conflict with evil-mode, which
is also remarkably annoying.

I hope that at some point Emacs with evil-mode will truly become the best of
both worlds, but right now vim still feels faster, easier to use, and more
consistent (obviously) with vim editing paradigms.

------
iLemming
Hey fellow Vimmers. If you (just like me) have to use Mac to do your work, you
may find this little project of mine interesting
[https://github.com/agzam/spacehammer](https://github.com/agzam/spacehammer).
It's a Hammerspoon config inspired by Spacemacs, written in Fennel. Readme
doesn't really describe every cool feature, I need to record a screencast, but
I've been swamped with work lately.

------
windsurfer
Wings3D can be operated in a very vim-like way, more than Blender in my
opinion.

------
ahnick
I don't see Oni on here.

[https://v2.onivim.io/](https://v2.onivim.io/)

~~~
techntoke
Looks bloated and isn't open source

~~~
lorenzfx
They announced to open source with an 18 month time delay (MIT license)
[https://github.com/onivim/oni2-mit](https://github.com/onivim/oni2-mit)

~~~
techntoke
But I don't have to wait 18 months for new releases of Vim or NeoVim.

------
pgutfreund
Mupdf on linux is both lightweight and vim-like

~~~
AdrienLemaire
Mupdf is listed in the Configurations part.

I used mupdf for years. Then I discovered llpp (a wrapper on top of mupdf). I
never went back since, this is my favorite pdf reader by far :)

[https://wiki.archlinux.org/index.php/Llpp](https://wiki.archlinux.org/index.php/Llpp)

------
macawfish
I think that vimium will prolong my lifespan.

------
alangpierce
Why is "IDEs, Word Processors, Editors with Vi-modes" missing
IntelliJ/JetBrains, VSCode, Atom, and Sublime? All of those have vim modes (of
varying quality, I'm sure).

~~~
fredifrum
I was also wondering this. I use Ideavim for IntelliJ as my primary editor. It
is awesome, it will read your vimrc and allows you to set up mappings for any
editor action.

~~~
iLemming
I used IntelliJ for about 7 years. I loved it. When I learned Vim I used it
with IdeaVim. There were minor things that bugged me, but I learned to live
with that. But one day I decided to try Emacs with Evil mode. It took me long
time to get my config right, but at some point I realized there are way too
many small things in IntelliJ that annoyed me and beyond submitting feature
requests on YouTrack there was little I could do. When I discovered Spacemacs
I switch to that. I realized that Emacs can vim better than IdeaVim, in fact
it probably vims better than Vim itself.

------
donaq
[https://github.com/donaq/topovica](https://github.com/donaq/topovica) <\--
Code is ugly, there's no consistent style and there are no tests. Some bugs
also exist, but I was just trying to get from zero to "meh, good enough for
me" as fast as I could. Feel free to use it however you see fit.

------
robobro
They're missing my favorite of the bunch... [http://se-editor.org/](http://se-
editor.org/)

------
Bananaman28
I can recommend Wasavi, which is a browser extension that allows you to use
Vim commands in most text windows you can edit.
[https://github.com/akahuku/wasavi](https://github.com/akahuku/wasavi) I use
it on a daily basis and although it's not Vim it's still pretty good.

~~~
bovine3dom
There's also
[https://github.com/glacambre/firenvim](https://github.com/glacambre/firenvim)
which, while it isn't real vim, it's neovim which is pretty close ;)

------
tomxor
Something that has made me really appreciate Vim commands is "less"... yeah
i'm talking about the seemingly simple pager that's already installed on your
system - I could never get into vim for coding, but I always felt like it
shined in places like less where you are consuming text rather than creating
it.

------
zzo38computer
I can also mention some ZZT editors: KevEdit has (disabled by default) support
for using hjkl to move, but it otherwise doesn't have much vi-like stuff.
ZZTQED is more vi-like; it also can use hjkl for cursor movement, and also
supports numeric prefixes, and some other stuff (although regular expressions
are not implemented).

------
njacobs5074
Wait! How could they leave out basically all of the rogue-like games? They all
have key bindings that draw heavily from vi.

~~~
iLemming
Big shoutout to [https://vim-adventures.com](https://vim-adventures.com).
Without that little game I would never learn how to live without arrow keys.

~~~
anthk
Not that game, just run nethack.

------
AdrienLemaire
Thanks, I didn't know about imv. Have been using feh forever, and always found
it annoying that it wouldn't load svg files. Problem fixed with imv.

EDIT: actually realised that feh has a --conversion-timeout param to help with
svg files. But well, imv also supports gif!

------
dajonker
A lot of web apps also use vim-inspired keyboard shortcuts, for example Gmail,
Twitter, Reddit.

~~~
apersom
Jupyter notebooks

------
mtrycz2
Vim is a nice operating system. If it only had an easy way to shutdown...

~~~
linsomniac
Interesting, that was more the experience I had the first time I tried using
Emacs as a vi user. The documentation I could find (limited, this was back in
the <gasp> '80s, couldn't google it), said "You are never intended to leave
Emacs, you should be able to do everything inside it." I was done with my
lunch break and needed to get back to work, so I went to another X window and
killed Emacs.

~~~
nobleach
Oddly I have an installation of Emacs on my current ArchLinux box that doesn't
shut down with `C-xC-c`.... I've had to resort to `C-z, ps ax | grep emacs` to
kill the process. I haven't cared enough to fix it.

~~~
sophacles
I'd like to tangent a bit and introduce you to pgrep and pkill (available in
arch via `procps-ng` pkg). They are very nice for reducing the amount of
grep/sed/awk magic on the output of ps.

------
Gonzih
Surprised that there is no fish shell in shell section. Also I miss
pentadactly in my Firefox so much nowadays.

------
a3n
Why isn't the vi editor in there? It's at least as "vim-like" as bash or tmux.

~~~
ddevault
Vi isn't Vim-like. Vim is Vi-like.

~~~
a3n
All of the listed apps have a subset of vim's functions. So does vi.

You use the listed apps because you wish you were in vim, sort of.

When you log in to a strange or bare system and need to edit, you wish you had
vim. But _at least_ you'll have vi, almost as good.

------
xbryanx
Missing from this list:

Vimium - Vim for Chrome Ideavim - Vim for IntelliJ/PyCharm/WebStorm

~~~
keithnz
look at the top of the page and click the "Plugins" button

------
keithnz
this needs a category of plugins to other editors/ide that provide vim like
experiences.

UPDATE: It does have a category of plugins.... it's a separate tab at the top
disguised as a button

------
zelly
Add r2 (radare2), a command line reverse engineering suite

------
Ensorceled
Elvis hasn’t been maintained since 2012 :-(

------
throw_away
Needs nethack :)

~~~
anthk
And hack(6) :D

------
mikorym
Lynx also has the -vikeys flag.

------
Tyr42
Qt had an ide with an impressive vim mode, or at least it did 5 years ago.

------
classified
An impressive collection. Are these all-Linux or all-Windoze? A note on
supporting platforms would have been helpful.

