Initial VimKit extraction

This commit is contained in:
2026-07-11 16:12:25 -04:00
commit 12c4e5cae0
22 changed files with 3267 additions and 0 deletions

52
README.md Normal file
View File

@@ -0,0 +1,52 @@
# VimKit
Reusable Textual vim-style editor components extracted from Fleet.
## What is here
- `VimEditor`: the core modal editor widget
- `VimWorkbench`: editor plus VimKit-owned top bar, command bar, and status bar
- `VimExtension`: extension hook for `:` commands and editor integrations
- `VimHost`: host interface for project-specific behaviors like named directories
## Status
The package is source-isolated and can be developed independently from Fleet.
## Local development
```bash
uv sync
uv run python -m compileall src
```
## Install
```bash
pip install vimkit
```
## Using from another project
During development, add it as a local path dependency:
```bash
uv add --editable ../VimKit
```
Later, switch to a Git dependency or the published PyPI package.
## First release flow
1. Bump the version in `pyproject.toml`.
2. Sync dev tools with `uv sync --dev`.
3. Build distributions with `uv build`.
4. Validate artifacts with `uv run twine check dist/*`.
5. Upload with `uv run twine upload dist/*`.
PyPI will prompt for your username and password unless you use an API token.
## Notes
- VimKit is released under the MIT license.
- If you later mirror this to GitHub, PyPI Trusted Publishing is preferable to long-lived credentials.