概要
Ferriteは、Rustとeguiで構築された 高速・軽量なテキストエディタ。 Markdown、JSON、YAML、TOMLファイルの 多機能編集 に対応。 Windows向けに主に開発・テストされており、Linux/macOSも利用可能。 AIによる自動生成コードを活用し、 最新技術を体験可能。 GitHubでインストール・貢献ができ、 多彩な機能と拡張性 を提供。
Ferrite 概要
- Rustとegui によるネイティブ・レスポンシブなテキストエディタ
- Markdown、JSON、YAML、TOMLの マルチフォーマット対応
- Windows優先開発、Linux・macOSもサポート(未検証部分あり)
- すべてのコード・ドキュメントは AI(Claude/Anthropic)生成
- プロダクト指向、AI開発の学習・実験プロジェクト
主な機能
- WYSIWYG Markdown編集 :ライブプレビュー、クリック編集、シンタックスハイライト
- 多形式サポート :Markdown、JSON、YAML、TOMLのネイティブ編集
- ツリービューア :JSON/YAML/TOMLを階層表示、インライン編集、パスコピー
- 検索・置換 :正規表現対応、ハイライト付き
- Undo/Redo :タブごとに完全サポート
- 分割ビュー :生テキスト+プレビューを同時表示、リサイズ可能
- Zenモード :集中執筆用、中央寄せ表示
- 同期スクロール :生テキストとプレビュー間で双方向同期
エディタ機能
- シンタックスハイライト :40以上の言語に対応
- コードフォールディング :見出し・コードブロック・リストの折りたたみ指標
- ミニマップ :VS Code風ナビゲーションパネル、クリックジャンプ・検索ハイライト
- 括弧マッチング :()[]{}<>や強調記号の対応強調表示
- 自動保存 :一時ファイル安全機能付き、設定可能
- 行番号表示 :オプションで切り替え
- MermaidJSダイアグラム :11種類の図をプレビュー内でネイティブ描画
最新リリース情報
- v0.2.2 :安定性・CLI強化、CJKフォント対応、Undo/Redo改善、コマンドラインファイルオープン、ログレベル・初期表示設定追加
ワークスペース機能
- ワークスペースモード :フォルダ/ファイルツリー、クイックスイッチャー、全文検索
- Git連携 :変更・追加・未追跡・無視ファイルの状態表示
- セッション保持 :タブ・カーソル・スクロール位置を再起動時に復元
追加機能
- ライト/ダークテーマ :実行時切替対応
- ドキュメントアウトライン :大規模文書のアウトラインパネル
- エクスポート :HTML書き出し、HTMLコピー
- フォーマットツールバー :太字・斜体・見出し・リスト・リンク等のショートカット
- ライブパイプライン :JSON/YAMLをシェルコマンドにパイプ可能
- カスタムウィンドウ :枠なしウィンドウ・独自タイトルバー・リサイズ対応
インストール方法
-
GitHub Releases から各OS向けバイナリをダウンロード
- Windows: ferrite-windows-x64.zip
- Linux: ferrite-editor_amd64.deb(推奨)、ferrite-linux-x64.tar.gz
- macOS: ferrite-macos-x64.tar.gz
-
Linux .debパッケージ
sudo apt install ./ferrite-editor_amd64.debでインストール/usr/bin/ferriteに配置、デスクトップエントリ・関連付け・アイコン自動登録
-
Arch Linux
- AURパッケージ ferrite / ferrite-bin
- 例:
yay -Sy ferriteまたはyay -Sy ferrite-bin
-
tar.gz利用
tar -xzf ferrite-linux-x64.tar.gz展開後、./ferrite実行
-
ソースビルド
- Rust 1.70+ 必須(rustup.rsからインストール)
- Windows: Visual Studio Build Tools 2019+
- Linux: build-essential, pkg-config, libgtk-3-dev, libxcb-shape0-dev, libxcb-xfixes0-dev など
- macOS: xcode-select --install
- ビルド手順
git clone https://github.com/OlaProeis/Ferrite.gitcd Ferritecargo build --release- バイナリは
target/release/配下
使い方
- 起動 :
cargo run --releaseまたはビルド済みバイナリ実行 - ファイル指定起動 :
./ferrite path/to/file.md - 複数ファイルタブ :
./ferrite file1.md file2.md - ワークスペース(フォルダ)起動 :
./ferrite path/to/folder/ - バージョン表示 :
./ferrite --version - ヘルプ表示 :
./ferrite --help - CLI詳細 :docs/cli.md参照
ビューモード
- Raw :プレーンテキスト編集+ハイライト
- Rendered :WYSIWYGプレビュー編集
- Split :生テキストとプレビューの同時表示
- 切り替え :ツールバーまたはショートカット使用
主なキーボードショートカット
-
ファイル操作
- Ctrl+N:新規作成
- Ctrl+O:開く
- Ctrl+S:保存
- Ctrl+Shift+S:名前を付けて保存
- Ctrl+W:タブを閉じる
-
ナビゲーション
- Ctrl+Tab:次のタブ
- Ctrl+Shift+Tab:前のタブ
- Ctrl+P:クイックファイル切替
- Ctrl+Shift+F:全文検索
-
編集
- Ctrl+Z:Undo
- Ctrl+Y / Ctrl+Shift+Z:Redo
- Ctrl+F:検索
- Ctrl+H:検索と置換
- Ctrl+B:太字
- Ctrl+I:斜体
- Ctrl+K:リンク挿入
-
表示
- F11:全画面切替
- Ctrl+,:設定
- Ctrl+Shift+[:すべて折りたたみ
- Ctrl+Shift+]:すべて展開
設定
-
保存場所
- Windows:
%APPDATA%\ferrite\ - Linux:
~/.config/ferrite/ - macOS:
~/Library/Application Support/ferrite/ - ワークスペース設定は
.ferrite/フォルダ内
- Windows:
-
設定パネル
- Ctrl+, またはギアアイコンからアクセス
- 外観:テーマ、フォントファミリ、サイズ
- エディタ:ワードラップ、行番号、ミニマップ、括弧マッチング、コードフォールディング、シンタックスハイライト
- ファイル:自動保存、履歴
今後のロードマップ・貢献
- ROADMAP.md で開発予定・既知課題を公開
- 貢献歓迎 :CONTRIBUTING.md参照
- クイックスタート
- Fork/Clone
- ブランチ作成・変更・ビルド・テスト
- コミット・プッシュ
技術スタック
- Rust 1.70+
- GUI :egui 0.28 + eframe 0.28
- Markdown :comrak 0.22
- シンタックスハイライト :syntect 5.1
- Git連携 :git2 0.19
- CLIパース :clap 4
- ファイルダイアログ :rfd 0.14
- クリップボード :arboard 3
- ファイル監視 :notify 6
- ファジーマッチ :fuzzy-matcher 0.3
ライセンス・謝辞
- MITライセンス
- 主要ライブラリ:egui, comrak, syntect, git2, Inter, JetBrains Mono
- 開発支援ツール:Claude (Anthropic), Cursor, Task Master
Ferriteの特徴まとめ
- 高速・軽量 な起動、約15MBバイナリ
- 即時起動、大規模ファイルにも最適化
- Windows/Linux/macOS 対応
- ネイティブMermaidダイアグラム 描画
- GitHub で最新版・詳細情報・貢献募集
- https://github.com/OlaProeis/Ferrite
フィードバック・今後の展望
- v0.2.2 以降、大規模ファイル対応のパフォーマンス改善予定
- ユーザーからの フィードバック歓迎