The PC/OpenSystems LLC Open Source team is pleased to announce our new release of Vi for Windows Server 2022/2025 Core and Desktop. Vi 5.0.0-2026 is our take on the classic Vi editor for the Windows Server platform.
You can download it from here
https://github.com/rjdohnert/Vi-For-Windows
You can view the user's guide here
https://github.com/rjdohnert/Vi-For-Windows/blob/main/vi-user-guide.md
Key Highlights
- Zero-Dependency Native Binary: Single self-contained executable (
vi.exe&view.exe) powered by Windows Console Virtual Terminal Sequences with no external runtime dependencies beyond standard system libraries (user32.dll). - Full Mouse & Scroll Wheel Support: SGR mouse reporting (
:set mouse=a/:set nomouse) with click-to-position cursor in any mode, smooth split-window wheel scrolling, right-click Windows clipboard paste ("+p), and clickable top tabline switching. - Extended Regular Expression Engine: Vim-compatible regex engine featuring precision match anchors (
\zs,\ze), character classes (\d,\D,\w,\W,\s,\S), quantifiers (\+,\?,*), word boundaries (\<,\>), and character sets ([...],[^...]). - Non-Blocking Async Background Grep: Multithreaded
:grep <pattern>on background worker threads with an animated status bar spinner and auto-populated Quickfix list (:copen,:cnext,:cprev,:clist). - Side-by-Side Diff Mode: Real-time LCS line comparison (
vi -d file1 file2,:diffsplit <file>,:diffthis,:diffoff,:diffupdate) with gutter markers (+,-,!) and synchronized dual-window scrolling.
Window, Tab & Workspace Management
- Multi-Window Viewport Splits: Horizontal and vertical splits (
:split,:vsplit,:close,:only), directional navigation (Ctrl-W h/j/k/l), cycling (Ctrl-W w/p), and equal balancing (Ctrl-W =). - Tab Pages: Multi-tab management (
:tabnew,:tabclose,:tabnext/gt,:tabprev/gT,:tabonly) with an interactive top tabline. - In-Memory Multi-Buffer Manager: Edit multiple files simultaneously (
:ls,:b,:bn,:bp,:bd,:badd) with geometric buffer scaling () for instant large server log loading. - Workspace Session Persistence: Save and restore complete window layouts, buffers, tabs, and cursor positions (
:mksession [path],:source <path>,vi -S [path]). - Integrated Directory Explorer & Fuzzy Finder: Netrw-style directory browser (
:Explore,:Sex,vi <dir>) and fast recursive in-memory file finder (:find <query>). - CTags Symbol Navigation: Cross-file symbol jump (
Ctrl-],:tag <sym>), tag stack pop (Ctrl-T,:pop), and stack inspection (:tags).
Editing, Reliability & Shell Integration
- Complete Vi Grammar & Text Objects: Full
[count][operator][count][motion]composition, inner/around text objects (iw,aw, quotes, and brackets/parentheses/braces), and Visual Block Mode (Ctrl-V/Ctrl-Q) with column insert/append (I,A). - Indent-Based Code Folding: Collapse and expand code blocks (
zc,zo,za,zR,zM,:set fdm=indent). - Buffer-Word Autocompletion: Zero-dependency
Ctrl-N/Ctrl-Pkeyword completion across all active buffers. - Crash Recovery & Persistent Undo: Real-time swap journaling (
.{filename}.swp,:recover) plus optional disk-persisted multi-session undo trees (.{filename}.un~,:set undofile). - External Modification & Read-Only Protection: Automatic detection of external disk changes (
:set autoread,:checktime) and WindowsFILE_ATTRIBUTE_READONLYenforcement ([RO]indicator,vi -R,view.exe). - Windows Clipboard & Line Endings: Native clipboard bridge (
"+y,"+p,"*y,"*p) and transparentCRLF/LFpreservation. - Interactive Subshell & Filter Pipes: Suspend or spawn a nested shell (
:terminal,:sh) and pipe buffer ranges through external commands (:%!sort,:'<,'>!findstr ...).
Appearance & Syntax Highlighting
- 5 Built-In Color Schemes:
:colorscheme <dark|light|monokai|gruvbox|classic>(alias:colo). - 23 Languages & Formats Supported:
- Systems & Compiled: C/C++, Rust, Go, Zig, Swift, Objective-C, Java, COBOL, Fortran, Pascal, Basic
- Web & Scripting: JavaScript/TypeScript, Python, PowerShell, Batch/CMD, Shell (
sh/bash/zsh) - Data, Config & Markup: TOML, SQL (ANSI & T-SQL), XML/HTML/SVG, YAML, INI/Registry/INF, JSON, Markdown
Installation & CLI Quick Start
- Per-User Install:
.\install.ps1(installsvi.exeandview.exeto%LOCALAPPDATA%\Programs\vi) - System-Wide / Server Core Install:
.\install.ps1 -AllUsers(installs to%ProgramFiles%\vifor all users, SSH, and WinRM sessions) - Explorer Context Menu:
.\install.ps1 -ContextMenu(adds "Open with Vi" to Windows File Explorer)

