Tauri + SvelteKit + CodeMirror 6 で作った軽量テキストエディタ。
- タブによる複数ファイルの編集(新規 / 開く / 保存 / 名前を付けて保存)
- セッション復元 — 未保存の内容も含めて全タブを自動的に保持し、次回起動時にそのまま復元する
- ウィンドウの位置・サイズ・最大化状態を自動的に保存し、次回起動時に復元
- ライト / ダーク配色を「システムに従う / ライト / ダーク」から選択可能(既定はシステムに追従)
- 未保存の変更があるタブを閉じる時は、メモ帳のように「保存 / 保存しない / キャンセル」を確認(警告音は鳴らさない)
- 検索・置換、undo/redo、矩形選択
- 行の折り返し切り替え、文字サイズを%単位でズーム(ステータスバーのボタンで比率変更)
- ステータスバー(行:列、選択文字数、行数/文字数、改行コード、文字コード)
- ウィンドウへのドラッグ&ドロップでファイルを開く
- CRLF / LF、UTF-8 / Shift_JIS / EUC-JP / UTF-16 を自動判別して開き、同じ形式で保存(ステータスバーから手動変更も可能)
- 保存は一時ファイル経由のアトミック書き込み(クラッシュ時に元ファイルを壊さない)
- 分割ビュー(右 / 下)で同じファイルの別の場所を同時に編集
- URL には常に下線を表示し、Ctrl(macOS は Cmd)+クリックで既定のブラウザで開く
シンタックスハイライトの言語パックは持たず、プレーンテキスト編集に特化している。
| キー | 動作 |
|---|---|
Ctrl+N |
新規タブ |
Ctrl+O |
ファイルを開く |
Ctrl+S |
保存 |
Ctrl+Shift+S |
名前を付けて保存 |
Ctrl+W |
タブを閉じる |
Ctrl+Tab / Ctrl+Shift+Tab |
次 / 前のタブ |
Ctrl+Z / Ctrl+Y |
元に戻す / やり直し |
Ctrl+X / Ctrl+C / Ctrl+V |
切り取り / コピー / 貼り付け |
Ctrl+A |
すべて選択 |
Ctrl+F / Ctrl+H |
検索 / 置換 |
Alt+Z |
行の折り返しを切り替え |
Ctrl+= / Ctrl+- / Ctrl+0 |
ズーム 拡大(+10%) / 縮小(-10%) / 100%に戻す |
Ctrl+マウスホイール |
ズーム 拡大 / 縮小 |
macOS では Ctrl の代わりに Cmd(Alt+Z は Option+Z)を使う。
npm run tauri dev # 開発用に起動
npm run tauri build # 配布用にビルド| パス | 役割 |
|---|---|
src/lib/editor.ts |
CodeMirror の拡張構成 |
src/lib/workspace.svelte.ts |
タブ管理とファイル入出力 |
src/lib/components/ |
タブバー・ステータスバー |
src/routes/+page.svelte |
画面全体とショートカット・ウィンドウ連携 |
src-tauri/ |
Tauri (Rust) 側 |