This is an utility useful to automate some boring stuff if you develop in C++ projects such creating new classes, remove them etc...
Currently project is a workaround because Zed IDE does not support tasks which includes user input yet, and extension API are still limited
This project is "Highly Experimental", use it at your own risk!. It will be subject to multiple rework. Keep in mind it could break between releases.
- python (3.x) being installed and in PATH
- copy the
bin/folder and paste it inside your .config/zed/ folder (or %APPDATA%\Roaming\Zed if you are from Windows) - append/add this task i you global or project task
this is an example of a tasks.json task to create a new class:
[
{
"label": "Create C++ Class",
"command": "python3 /home/user/.config/zed/bin/cpp_cli.py --function 'create-class' --zed --rootpath $ZED_WORKTREE_ROOT"
}
]
- invoke it in Zed using
ctrl+shift+p
- in you
devcontainer.jsonadd the following entry:
"mounts": ["source=${localEnv:HOME}/.config/zed/bin/,target=/host-tools/,type=bind,consistency=cached"]
- adjust or add a new your task in
tasks.jsonfor the devcontainer:
[
{
"label": "Create C++ Class (devcontainer)",
"command": "python3 /host-tools/cpp_cli.py --function 'create-class' --zed --rootpath $ZED_WORKTREE_ROOT"
}
]- Add class delete functionality
- Add UI (TBD)
- Rewrite it in a compile language (C++ or Rust) and packing it as static binary as release package to avoid dependencies hell between multiple hosts.
- Add more features as needed