Skip to content

About

給所有 vi 派的高速捷徑。什麼 vim 啊?你懂的。 High-velocity shortcuts for every vi loyalist. Vim, you say? …You know exactly what this is. すべての vi 派に贈る、高速ショートカット。vim のこと……ですか? ——わかりますよね。

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Vi-SakiWin64

Vi — 就是那個 Vi,不是什麼 Vim。

Author: 咲ちゃん(Saki)/ Saki Studio — saki-studio.com.tw Co-author: Claude Opus 4.6 License: GPL-2.0-only

Bill Joy 的 vi,在 Windows 上重新編譯。178KB,打完收工。

Bill Joyのvi、Windowsで再コンパイル。178KB、それだけ。

Bill Joy's vi, recompiled for Windows. 178KB. That's it.


淵源 / 由来 / Origin

繁體中文

vobject 做過 Vi-win32,但帳號和原始碼一起消失了。Traditional Vi 是能找到的最後遺跡,感謝袁志豪 / lichray 維護到最後。Nvi 依賴太重,不適合單檔移植。最終取源自 busybox-w32——Ron Yorston 持續維護的 BusyBox Windows 分支。

基於 commit 686a0803f9(ash: fix execution of applets via Unix-style path),以 MSYS2 UCRT64 編譯為原生 Win64。依照 GPLv2 條款釋出。

日本語

vobject氏がVi-win32を作りましたが、アカウントごとソースコードも消えました。Traditional Vi が見つかる最後の痕跡で、袁志豪 / lichray氏が最後まで保守してくれました。Nviは依存が重く、単一ファイルへの移植には不向き。最終的に busybox-w32(Ron Yorston氏が継続メンテ中のBusyBox Windowsフォーク)をソースとしました。

コミット 686a0803f9(ash: fix execution of applets via Unix-style path)をベースに、MSYS2 UCRT64でネイティブWin64としてビルド。GPLv2条項に従い公開。

English

vobject built Vi-win32, but the account and source code vanished together. Traditional Vi is the last surviving trace; credit to 袁志豪 / lichray for maintaining it. Nvi's dependency chain made it impractical for single-binary porting. The source was ultimately taken from busybox-w32 — Ron Yorston's actively maintained BusyBox fork for Windows.

Based on commit 686a0803f9 (ash: fix execution of applets via Unix-style path), compiled as native Win64 with MSYS2 UCRT64. Released under GPLv2.


功能 / 機能 / Features

繁中 日本語 English
🌏 三語介面 三言語インターフェース Trilingual UI
📦 單檔免安裝 単一実行ファイル Single portable binary
🪟 原生 Win64 + Unicode ネイティブ Win64 + Unicode Native Win64 + Unicode
⚡ 基於 BusyBox vi BusyBox vi ベース BusyBox vi based
📖 :help 三語快速參考 :help 三言語リファレンス :help trilingual reference
🔧 WriteConsoleW 自適應 コードページ自動対応 Codepage-aware output

安裝 / インストール / Install

Winget

Winget — Official Installation(推薦 / 推奨 / Recommended)

winget install SakiStudio.SakiVI
vi file.txt

Approved by Microsoft Winget on first submission. Rejected by Scoop maintainers because "Vi is not famous enough."

Scoop maintainer's exact words / 原文

I suggest maintaining this in your personal bucket instead. Please feel free to reopen this PR once it fully meets the criteria.

— z-Fng, ScoopInstaller/Main #7643

All automated checks passed: Lint ✅ Description ✅ License ✅ Hashes ✅ Checkver ✅ Autoupdate ✅

Scoop — Personal Bucket

Since Scoop Main/Extras refuses to host this, you can add our personal bucket:

scoop bucket add sakivi https://github.com/Saki-tw/scoop-sakivi
scoop install saki-vi
vi file.txt   # 直接可用 / すぐ使える / ready to go

手動 / 手動 / Manual

下載 vi.exe → 放入 PATH → 完事

PowerShell One-liner

irm https://saki-studio.com.tw/downloads/install.ps1 | iex

使用 / 使い方 / Usage

vi file.txt       # 編輯 / 編集 / edit
vi -H             # 功能一覽 / 機能一覧 / features
vi --version      # 版本資訊 / バージョン / version
:help             # 快速參考 / リファレンス / quick ref
:features         # 編譯功能 / ビルド機能 / compiled features

建置 / ビルド / Build

繁中 — 使用 MSYS2 UCRT64 工具鏈。UCRT64 環境基於 Universal C Runtime, 是 Windows 10+ 的原生 C 執行時期。產生的二進位不依賴 msys-2.0.dll, 單檔可攜——就像一首可以離線朗讀的詩。

日本語 — MSYS2 UCRT64 ツールチェーンでビルドします。UCRT64 環境は Universal C Runtime に基づいており、Windows 10+ のネイティブ C ランタイムです。 生成されるバイナリは msys-2.0.dll に依存しません。単一ファイルで持ち運べます。

English — Built with the MSYS2 UCRT64 toolchain. UCRT64 targets the Universal C Runtime, native to Windows 10+. The resulting binary carries no msys-2.0.dll dependency — a single portable executable, self-contained.

前置需求 / 前提条件 / Prerequisites

# MSYS2 をインストール後、UCRT64 shell で / After installing MSYS2, in UCRT64 shell:
pacman -S mingw-w64-ucrt-x86_64-gcc make git

編譯 / コンパイル / Compile

git clone --recursive https://github.com/Saki-tw/VI-SakiWin64.git
cd Vi-SakiWin64
bash scripts/build.sh
# → vi.exe(原生 Win64 / ネイティブ Win64 / native Win64, no msys-2.0.dll)

工具鏈 / ツールチェーン / Toolchain

Compiler mingw-w64-ucrt-x86_64-gcc
C Runtime UCRT(非 MSVCRT / not Cygwin)
Linking 靜態 / 静的 / static, single binary
Source busybox-w32 @ 686a0803f9 (pinned)

授權 / ライセンス / License

GPL-2.0-only

本專案是 BusyBox 及 busybox-w32 的衍生作品。 完整授權條款見 LICENSE,上游歸屬見 NOTICE,第三方授權見 THIRD_PARTY_LICENSES。


Acknowledgments

About

給所有 vi 派的高速捷徑。什麼 vim 啊?你懂的。 High-velocity shortcuts for every vi loyalist. Vim, you say? …You know exactly what this is. すべての vi 派に贈る、高速ショートカット。vim のこと……ですか? ——わかりますよね。

Resources

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages