概要
VIM Master は、ブラウザ上で Vim操作 を学べる軽量ゲーム。 インストール不要で、 index.html を開くだけで即プレイ可能。 主要な Vimコマンドやモーション を短いレベルで習得。 チャレンジモード でスピードと正確性も鍛錬可能。 ローカル実行やコントリビュートも簡単。
VIM Masterの特徴
-
Vim操作習得用ブラウザゲーム
- index.htmlを開くだけで利用開始
- デスクトップ推奨(フルキーボード対応)
-
主要なVimモード・コマンド対応
- ノーマル/インサートモード切替
- ステータスバー・コマンドログ表示
- レベルごとに目標達成で進行
- サポートコマンド:
- 移動: h j k l, w b e, gg G, 0 $
- 削除・コピー・貼り付け: x, dd, dw, yy, p
- 挿入・追加: i, a, o, O
- 変更・置換: cw, D, r
- exコマンド: :q, :wq
- 数値指定: 3w, 2dd, 5x, 5G など
- アンドゥ・リドゥ: u, Ctrl+r
-
レベル設計・バリデーション
- 各レベルでカーソル位置やテキスト内容の目標設定
- 余分な空白や行末は柔軟に判定
- キーストロークそのものは厳密に問わない
基本操作一覧
-
移動系コマンド
- h:左、j:下、k:上、l:右
- w:次の単語、b:前の単語、e:単語の末尾
- 0:行頭、$:行末、gg:最初の行、G:最後の行、nG:n行目へ
-
挿入・追加・新規行
- i:カーソル位置に挿入、a:後ろに追加
- o:下に新規行、O:上に新規行
-
削除・コピー・貼り付け
- x:文字削除、dd:行削除、dw:単語削除
- yy:行コピー、p:貼り付け
-
変更・置換
- cw:単語変更(削除→インサート)
- D:行末まで削除
- r+任意文字:1文字置換
-
数値指定
- 例:3w(3単語進む)、2dd(2行削除)、5x(5文字削除)、5G(5行目へ)
-
アンドゥ/リドゥ
- u:アンドゥ(元に戻す)、Ctrl+r:リドゥ(やり直し)
-
挿入モード終了
- Escキー
チャレンジモード
- スピード&正確性重視のゲームモード
- 指定されたコマンド課題を連続で実行
- 正解ごとにスコア加算、速さと正確さで最終スコア決定
- リアルタイムフィードバックで学習効率UP
- ハイスコア更新を目指す楽しみ
ローカルでの実行方法
- ビルド不要・即実行
-
リポジトリをクローン後、index.htmlを直接開く
git clone https://github.com/<your-username>/vimmaster.git cd vimmaster # Windows start index.html # macOS open index.html # Linux xdg-open index.html -
ローカルファイルアクセス制限時は静的サーバー利用例
npx serve .で起動、表示されたURLにアクセス
-
技術スタック
- HTML/CSS/JavaScriptのみ
- スタイリングはTailwind CDN
- 依存パッケージやフレームワークなし
- すべてのロジックとレベル定義はindex.html内
コントリビュートガイド
- イシュー・PR歓迎
- コードは可読性重視、軽量な実装を推奨
- 1レベル1コンセプトの小規模設計を推奨
ライセンス・謝辞
- MITライセンス
- Vimのモーダル編集・モーション/オペレーター設計にインスパイア
- ページ内にASCIIロゴ表示
- BMAB(Beer and cigs)利用宣言