Vim vs Neovim: source lines of code compared

This page compares the source lines of code (SLOC) of vim/vim and neovim/neovim using cached OctoCounts reports. Code size is not code quality: a larger count only means more source material, not a better or worse project.

As of 2026-09-09, vim/vim contains 1,571,479 total lines (1,224,926 code) across 3,221 files, while neovim/neovim contains 1,038,940 total lines (726,010 code) across 2,661 files as of 2026-09-07. vim/vim is about 1.7x the size of neovim/neovim by code lines. Code size is not code quality: a larger count only means more source material, not a better or worse project.

Metricvim/vimneovim/neovim
Files3,2212,661
Total lines1,571,4791,038,940
Code lines1,224,926726,010
Comment lines164,512193,396
Blank lines182,041119,534
Languages counted1212

Top languages in vim/vim: Vim Script (42.2% of code), C (34.0% of code), PO File (18.0% of code). Top languages in neovim/neovim: C (37.7% of code), Vim Script (32.6% of code), PO File (15.5% of code). Vim Script, C, PO File, C Header appear in both top language lists; Makefile appears only in vim/vim's top languages; Lua appears only in neovim/neovim's top languages.

Methodology: both counts come from cached OctoCounts reports generated with tokei. vim/vim was counted at ref 1ed2ff77d8e936d67c7e984f32f4ebff590cbfd7 (commit 1ed2ff77d8e9) on 2026-09-09; neovim/neovim was counted at ref 9f425311c38fada4dc25f758c31933fe7b0b4dfe (commit 9f425311c38f) on 2026-09-07. See the counting methodology for ignored directories and analysis options.

Evidence and next steps:

Note: code size is not code quality. OctoCounts only reports reproducible line counts and makes no claim that either project is better.

Compare FAQ

Which has more lines of code, vim/vim or neovim/neovim?

vim/vim has more code: 1,224,926 code lines versus 726,010 for neovim/neovim, about 1.7x as much, based on cached OctoCounts reports as of 2026-09-09.

Does more source lines of code mean more complexity?

Not necessarily. SLOC measures size, not complexity, quality, or maintainability. A larger codebase can mean more features, more generated or vendored code, more verbose language idioms, or more tests — none of which imply the code is harder to work with. Use SLOC to gauge the scale of what you'd be reading or maintaining, not as a quality signal for vim/vim, neovim/neovim, or any repository.

How is this comparison calculated?

Methodology: both counts come from cached OctoCounts reports generated with tokei. vim/vim was counted at ref 1ed2ff77d8e936d67c7e984f32f4ebff590cbfd7 (commit 1ed2ff77d8e9) on 2026-09-09; neovim/neovim was counted at ref 9f425311c38fada4dc25f758c31933fe7b0b4dfe (commit 9f425311c38f) on 2026-09-07. See the counting methodology for ignored directories and analysis options.

Can I compare a different branch, tag, or commit?

Yes. This page shows the default branch for each repository. Use the interactive comparison tool to pick any public GitHub repository, branch, tag, or commit SHA for both sides and get a fresh side-by-side report.