chore: update CONTRIBUTING for commands & key files
Some checks are pending
CI / Linux (python=3.13 cc=clang sanitize=1) (push) Waiting to run
CI / Linux (python=3.11 cc=gcc sanitize=0) (push) Waiting to run
CI / Linux (python=3.12 cc=gcc sanitize=1) (push) Waiting to run
CI / Linux package (push) Waiting to run
CI / Bundle test (macos-latest) (push) Waiting to run
CI / Bundle test (ubuntu-latest) (push) Waiting to run
CI / macOS Brew (push) Waiting to run
CI / Test ./dev.sh and benchmark (push) Waiting to run

This commit is contained in:
ayo 2026-06-20 12:00:28 +02:00
parent aed4f629f0
commit c63a52b794

View file

@ -28,3 +28,18 @@ tests as well (see the `kitty_tests/` sub-directory for existing tests, which
can be run with `./test.py`).
That's it.
### Commands
- **Build:** `./dev.sh build` or `python3 setup.py build --debug`
- **Tests:** `./test.py` (or `--module <name>` for specific)
- **Type check:** `./test.py type-check` (mypy)
- **Linting:** `ruff check .` for Python, `gofmt/gofmt` for Go
- **Regenerate config types:** `./gen-config.py` after editing `definition.py`
- **CI runs:** GCC + Clang on Python 3.11/3.12/3.13 (ASAN enabled), ruff linting, mypy, go vet
### Key files to know first when working on the project
- `boss.py` — central runtime controller
- `screen.c` — VT terminal emulation core
- `kitty/options/definition.py` — all config options in one place (~3700 lines)
- `child-monitor.c` — child process/PTY management