mt-code — 軽量ターミナルコードエディタ(LSP対応)
概要
mt-code はターミナル上で動作する軽量コードエディタで、LSP(Language Server Protocol)対応を謳っています。インストールはリポジトリをクローンして付属の install.sh を実行するだけで、仮想環境の作成、依存パッケージのインストール、mt-code コマンドの PATH 追加、起動用のウェルカムファイル作成を自動化します。基本的な利用は mt-code コマンドで起動、ファイルやフォルダを引数に与えて開くことができ、端末中心の軽量ワークフローを提供します。(約300字)
リポジトリの統計情報
- スター数: 3
- フォーク数: 0
- ウォッチャー数: 3
- コミット数: 5
- ファイル数: 20
- メインの言語: Python
主な特徴
- ターミナルベースの軽量エディタとして動作(CLI 起動)
- LSP をサポートし、補完・診断など開発支援が可能
- install.sh による簡単インストール(仮想環境作成、依存導入、PATH 追加)
- コマンド/設定を整理したディレクトリ構成(commands, config)
技術的なポイント
mt-code は Python 製のシンプルなエディタとして、ターミナルUI と LSP クライアント機能の統合を目指しています。アプリケーションのエントリポイントは app.py で、起動時に引数の解析やワークスペース(ファイル/フォルダ)オープン処理を担当します。commands ディレクトリはコマンド駆動型の設計を示唆しており、コマンドごとに独立した処理(ファイル操作やビルド、フォーマットなど)をプラグイン風に追加できる構成になっています。config ディレクトリはユーザー設定やキーバインド、LSP の接続設定を格納する想定で、設定ファイルを読み込んで挙動をカスタマイズできます。
LSP 対応部分は、Language Server Protocol に準拠したサーバーとの JSON-RPC 通信(stdio またはソケット経由)を行うクライアント実装を持つことが期待され、補完、シンボル検索、診断(エラー/警告)、ホバー情報、コードアクションなどをエディタのバッファ表示やステータスラインに反映する設計が考えられます。Python ベースのため asyncio を用いた非同期 I/O によるイベントループ駆動、サブプロセス管理(サーバー起動/停止)、メッセージのキューイングとデバウンス処理による入力応答性の確保が実装方針として自然です。
インストールスクリプトは仮想環境の自動作成と依存関係のインストールにより、環境汚染を避けつつ簡単に導入できる点が利点です。PATH へコマンドを通す処理により、シェルから直接 mt-code を呼べるようになります。現状ファイル数やコミット数が少なく初期段階のプロジェクトと見受けられるため、拡張ポイント(テーマ、キーバインド、プラグイン API、複数 LSP の管理)を明確にドキュメント化すると外部コントリビュータが増えやすくなります。(約700字)
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- README.md: file
- app.py: file
- commands: dir
- config: dir
…他 15 ファイル
使い方(README 抜粋)
インストール:
git clone https://github.com/mystyy01/mt-code.git
cd mt-code
chmod +x install.sh
./install.sh
インストールスクリプトの処理:
- Create a virtual environment
- Install dependencies
- Add
mt-codeto your PATH - Launch the editor with a welcome file
Usage:
mt-code # Open editor
mt-code file.py # Open a specific file
mt-code /path/to/folder # Open a folder
今後の改善提案
- ドキュメントの充実(キーバインド一覧、LSP の設定例、対応済み/未対応の機能)
- テストや CI の導入で品質保証
- プラグイン API を明示して拡張を容易にする
- 端末 UI ライブラリ(prompt_toolkit / textual / urwid 等)の明示と最適化
まとめ
軽量で LSP 対応を目指すターミナルエディタの初期実装。拡張性に期待。 (約50字)
リポジトリ情報:
- 名前: mt-code
- 説明: 説明なし
- スター数: 3
- 言語: Python
- URL: https://github.com/mystyy01/mt-code
- オーナー: mystyy01
- アバター: https://avatars.githubusercontent.com/u/213707940?v=4
READMEの抜粋:
mt-code
A lightweight terminal-based code editor with LSP support.
Installation
git clone https://github.com/mystyy01/mt-code.git
cd mt-code
chmod +x install.sh
./install.sh
The install script will:
- Create a virtual environment
- Install dependencies
- Add
mt-codeto your PATH - Launch the editor with a welcome file
Usage
mt-code # Open editor
mt-code file.py # Open a specific file
mt-code /path/to/folder # Open a folder