finds.dev← search

// the find

junegunn/goyo.vim

★ 4,682 · Vim Script · MIT · updated Dec 2025

:tulip: Distraction-free writing in Vim

Goyo turns Vim into a focused writing environment by centering a buffer with configurable margins and hiding distracting UI chrome. It's for Vim users who write prose or markdown and want something closer to iA Writer without leaving the terminal. The plugin is from junegunn, who maintains fzf and several other high-quality Vim plugins.

Handles splits gracefully — it doesn't nuke your layout, it just parks the other windows out of sight and restores them on exit. The callback system (GoyoEnter/GoyoLeave autocmds) is the right design: instead of trying to enumerate every possible plugin interaction, it gives you hooks to handle your own setup. Dimension expressions are genuinely flexible — percentage widths, offsets, per-session resizing — more thought went into this than 'just set textwidth'. Plays well with statusline plugins by auto-suppressing the common ones rather than just visually breaking.

It's Vim Script, not Lua, so Neovim users are second-class citizens — there's no maintained Lua port and the interop works but feels bolted on. 4,682 stars and only 119 forks suggests it's a use-it-or-leave-it plugin; the extension surface is narrow enough that nobody bothers forking. Color scheme restoration gotcha (documented in the FAQ) is a real footgun: if you don't know to wrap customizations in a ColorScheme autocmd, you'll lose colors on Goyo exit and spend an afternoon debugging. The decoration density feature feels half-finished — it's there, but the default of 0.00 means most users never discover it exists.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →