Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vim.pro check

CI for your editor. Your code gets a test suite; your editor config gets pushed and prayed over. This action boots your nvim config on the runner — a genuinely clean machine — with your declared plugins provisioned, and fails the build if the editor fails. The error that stops your init is quoted, not summarized.

# .github/workflows/vim.yml
name: vim.pro check
on: [push, pull_request]
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: vim-pro/check@v1

What it does, in order:

  1. Finds your config, whatever the layout — a bare config repo, .config/nvim, chezmoi's dot_config/nvim, stow-style aspects/nvim/.config/nvim, or a legacy vimrc.
  2. Provisions your plugins the way your manager expects them — lazy.nvim, vim.pack, native packages via your submodules — so the boot measures your config, not your network.
  3. Boots it, headless, and reads what actually happened: startup time from nvim's own clock, real init errors with their traces folded in, which plugins actually loaded.
  4. Fails the build when the editor fails. A config that dies on a clean machine is exactly the thing you want to learn from a pull request rather than from a new laptop.

Options:

- uses: vim-pro/check@v1
  with:
    nvim-version: nightly   # default: stable — run both jobs to get early warning
    editor: both            # default: nvim — 'vim' boots your vimrc in real Vim,
                            # 'both' reports both editors' verdicts
    fail-on: abort          # default: error — 'abort' only fails a dead init

A vimrc full of options nvim removed is still legal Vim — editor: vim answers the question its author actually lives with, and editor: both surfaces a fact nothing else does: the same config, clean in Vim, erroring in Neovim (or the reverse). A repo with no vimrc skips the Vim row honestly.

The engine is the same one vim.pro uses to boot every connected config. Run it locally too: nvim --clean -l check.lua from your dotfiles root, with nvim (0.10+) and git on your PATH. Written in Lua and run by nvim itself — the check's only dependency is the thing it tests, and the editor under test is exactly the editor doing the testing.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages