diff --git a/extensions/slash-commands-example/README.md b/extensions/slash-commands-example/README.md index 3a9d6de71a..3b5e2a3700 100644 --- a/extensions/slash-commands-example/README.md +++ b/extensions/slash-commands-example/README.md @@ -1,3 +1,70 @@ # Slash Commands Example Extension This is an example extension showcasing how to write slash commands. + +See: [Extensions: Slash Commands](https://zed.dev/docs/extensions/slash-commands) in the Zed Docs. + +## Pre-requisites + +[Install Rust Toolchain](https://www.rust-lang.org/tools/install): + +```sh +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh +``` + +## Setup + +```sh +git clone https://github.com/zed-industries/zed.git +cp -RL zed/extensions/slash-commands-example . + +cd slash-commands-example/ + +sed -i '' '/\[lints]/,/^$/s/^workspace/#&/' Cargo.toml +curl -O https://raw.githubusercontent.com/rust-lang/rust/master/LICENSE-APACHE +echo "# Zed Slash Commands Example Extension" > README.md +echo "Cargo.lock" > .gitignore +echo "target/" >> .gitignore +echo "*.wasm" >> .gitignore + +git init +git add . +git commit -m "Initial commit" + +cd .. +mv slash-commands-example MY-SUPER-COOL-ZED-EXTENSION +zed $_ +``` + +## Installation + +1. Open the command palette (`cmd-shift-p` or `ctrl-shift-p`). +2. Launch `zed: install dev extension` +3. Select the `slash-commands-example` folder created above + +## Test + +Open the assistant and type `/echo` and `/pick-one` at the beginning of a line. + +## Customization + +Open the `extensions.toml` file and set the `id`, `name`, `description`, `authors` and `repository` fields. + +Rename `slash-commands-example.rs` you'll also have to update `Cargo.toml + +## Rebuild + +Rebuild to see these changes reflected: + +1. Open Zed Extensions (`cmd-shift-x` or `ctrl-shift-x`). +3. Click `Rebuild` next to your Dev Extension (formerly "Slash Command Example") + +## Troubleshooting / Logs + +- MacOS: `tail -f ~/Library/Logs/Zed/Zed.log` +- Linux: `tail -f ~/.local/share/zed/logs/Zed.log` + +## Documentation + +- [zed.dev docs: Extensions: Developing Extensions](https://zed.dev/docs/extensions/developing-extensions) +- [zed.dev docs: Extensions: Slash Commands](https://zed.dev/docs/extensions/slash-commands)