about summary refs log tree commit diff
path: root/src/bootstrap
diff options
context:
space:
mode:
authoronur-ozkan <work@onurozkan.dev>2023-10-12 00:06:38 +0300
committeronur-ozkan <work@onurozkan.dev>2023-10-15 09:05:55 +0300
commit62d88f9775f8b0055da66b0fecb2514dca7d82a9 (patch)
tree21078f8f57a62fa44f35a9f88956c36e5b673975 /src/bootstrap
parent8c62ed581f1e61d050830ce36e7f0d5515f1111b (diff)
downloadrust-62d88f9775f8b0055da66b0fecb2514dca7d82a9.tar.gz
rust-62d88f9775f8b0055da66b0fecb2514dca7d82a9.zip
generate zsh autocompletion for x
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Diffstat (limited to 'src/bootstrap')
-rw-r--r--src/bootstrap/run.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/bootstrap/run.rs b/src/bootstrap/run.rs
index 4082f5bb9b1..96b80592191 100644
--- a/src/bootstrap/run.rs
+++ b/src/bootstrap/run.rs
@@ -273,12 +273,15 @@ impl Step for GenerateCompletions {
 
     /// Uses `clap_complete` to generate shell completions.
     fn run(self, builder: &Builder<'_>) {
-        // FIXME(clubby789): enable zsh when clap#4898 is fixed
-        let [bash, fish, powershell] = ["x.py.sh", "x.py.fish", "x.py.ps1"]
+        let [bash, zsh, fish, powershell] = ["x.py.sh", "x.py.zsh", "x.py.fish", "x.py.ps1"]
             .map(|filename| builder.src.join("src/etc/completions").join(filename));
+
         if let Some(comp) = get_completion(shells::Bash, &bash) {
             std::fs::write(&bash, comp).expect("writing bash completion");
         }
+        if let Some(comp) = get_completion(shells::Zsh, &zsh) {
+            std::fs::write(&zsh, comp).expect("writing bash completion");
+        }
         if let Some(comp) = get_completion(shells::Fish, &fish) {
             std::fs::write(&fish, comp).expect("writing fish completion");
         }