Plain
A Kotlin Development environment
Pragma
Plain and Simple, fast and no headache
Details
Editor
- A file is the most important abstraction
- The project of a file is always where the git root is
- Opening a file opens the project of that file
- Fast to edit files (sub two mili second file open and ready cold start)
- One instance open, interact via IPC possible, for example commands open via IPC the file in the already running process.
- File traversal/search/opening should be possible via UI, CLI (IPC)
- Max FPS, egui implementation for the UI
- One binary (mise and pitch fork bundled into it), config at the root where .git
Environment
- Environment is reproduceable and depends on the open file -> .kt, config at the git root -> JVM target with version 21 -> install 21 if not installed and use for this project (use mise: https://mise.jdx.dev/)
- Doing something with CLI versus UI should not change the behaviour
- Use pitch fork for running dependencies (https://pitchfork.en.dev/)
Compiler
- For now we depend on Kotlinc
Debugger
- Not yet defined
Interactions
- Refactor via right click menu choose file -> function/class etc.
- Debug via right click menu or via cli which will let the user choose file -> line -> set break points
- Select functions via select or cli via name to extract into play ground, that has the same environment and libraries loaded but has a different main file.