คุณสามารถเปิดใช้การเติมคำสั่งให้สมบูรณ์ (หรือที่เรียกว่าการเติมคำด้วยแท็บ) ใน Bash และ Zsh ได้ ซึ่งจะช่วยให้คุณเติมคำชื่อคำสั่ง ชื่อแฟล็ก ค่าแฟล็ก และชื่อเป้าหมายให้สมบูรณ์ด้วยแท็บได้
Bash
Bazel มาพร้อมกับสคริปต์การเติมคำให้สมบูรณ์ของ Bash
หากคุณติดตั้ง Bazel จาก
จากที่เก็บ APT แล้ว คุณก็ทำเสร็จแล้ว -- สคริปต์การเติมคำให้สมบูรณ์ของ Bash ได้รับการติดตั้งไว้ใน
/etc/bash_completion.dแล้วจาก Homebrew แล้ว คุณก็ทำเสร็จแล้ว -- สคริปต์การเติมคำให้สมบูรณ์ของ Bash ได้รับการติดตั้งไว้ใน
$(brew --prefix)/etc/bash_completion.dแล้วจากโปรแกรมติดตั้งที่ดาวน์โหลดจาก GitHub ให้ทำดังนี้
ค้นหาเส้นทางสัมบูรณ์ของไฟล์การเติมคำให้สมบูรณ์ โปรแกรมติดตั้งได้คัดลอกไฟล์นี้ไปยังไดเรกทอรี
binแล้วตัวอย่างเช่น หากคุณเรียกใช้โปรแกรมติดตั้งด้วย
--userเส้นทางนี้จะเป็น$HOME/.bazel/binหากคุณเรียกใช้โปรแกรมติดตั้งในฐานะผู้ใช้ระดับราก เส้นทางนี้จะเป็น/usr/local/lib/bazel/binทำสิ่งใดสิ่งหนึ่งต่อไปนี้
คัดลอกไฟล์นี้ไปยังไดเรกทอรีการเติมคำให้สมบูรณ์ (หากมี)
ตัวอย่างเช่น ใน Ubuntu ไดเรกทอรีนี้คือ
/etc/bash_completion.dหรือแหล่งที่มาของไฟล์การเติมคำให้สมบูรณ์จากไฟล์ RC ของ Bash
เพิ่มบรรทัดที่คล้ายกับบรรทัดด้านล่างลงใน
~/.bashrc(ใน Ubuntu) หรือ~/.bash_profile(ใน macOS) โดยใช้เส้นทางสัมบูรณ์ของไฟล์การเติมคำให้สมบูรณ์source /path/to/bazel-complete.bash
-
ส่งออกสคริปต์การเติมคำให้สมบูรณ์ลงในไฟล์
bazel help completion bash > bazel-complete.bashทำสิ่งใดสิ่งหนึ่งต่อไปนี้
คัดลอกไฟล์นี้ไปยังไดเรกทอรีการเติมคำให้สมบูรณ์ หากมี
ตัวอย่างเช่น ใน Ubuntu ไดเรกทอรีนี้คือ
/etc/bash_completion.dคัดลอกไฟล์นี้ไปยังที่ใดที่หนึ่งในดิสก์ในเครื่อง เช่น
$HOMEแล้วแหล่งที่มาของไฟล์การเติมคำให้สมบูรณ์จากไฟล์ RC ของ Bashเพิ่มบรรทัดที่คล้ายกับบรรทัดด้านล่างลงใน
~/.bashrc(ใน Ubuntu) หรือ~/.bash_profile(ใน macOS) โดยใช้เส้นทางสัมบูรณ์ของไฟล์การเติมคำให้สมบูรณ์source /path/to/bazel-complete.bash
Zsh
Bazel มาพร้อมกับสคริปต์การเติมคำให้สมบูรณ์ของ Zsh
หากคุณติดตั้ง Bazel จาก
จากที่เก็บ APT แล้ว คุณก็ทำเสร็จแล้ว -- สคริปต์การเติมคำให้สมบูรณ์ของ Zsh ได้รับการติดตั้งไว้ใน
/usr/share/zsh/vendor-completionsแล้วหากคุณมี
.zshrcที่ปรับแต่งอย่างมากและฟังก์ชันการเติมคำอัตโนมัติไม่ทำงาน ให้ลองทำตามวิธีแก้ปัญหาต่อไปนี้เพิ่มรายการต่อไปนี้ลงใน
.zshrczstyle :compinstall filename '/home/tradical/.zshrc' autoload -Uz compinit compinitหรือ
หากคุณใช้
oh-my-zshคุณอาจต้องการติดตั้งและเปิดใช้ปลั๊กอินzsh-autocompleteหากไม่ต้องการ ให้ใช้วิธีแก้ปัญหาที่อธิบายไว้ข้างต้นจาก Homebrew แล้ว คุณก็ทำเสร็จแล้ว -- สคริปต์การเติมคำให้สมบูรณ์ของ Zsh ได้รับการติดตั้งไว้ใน
$(brew --prefix)/share/zsh/site-functionsแล้วจากโปรแกรมติดตั้งที่ดาวน์โหลดจาก GitHub ให้ทำดังนี้
ค้นหาเส้นทางสัมบูรณ์ของไฟล์การเติมคำให้สมบูรณ์ โปรแกรมติดตั้งได้คัดลอกไฟล์นี้ไปยังไดเรกทอรี
binแล้วตัวอย่างเช่น หากคุณเรียกใช้โปรแกรมติดตั้งด้วย
--userเส้นทางนี้จะเป็น$HOME/.bazel/binหากคุณเรียกใช้โปรแกรมติดตั้งในฐานะผู้ใช้ระดับราก เส้นทางนี้จะเป็น/usr/local/lib/bazel/binเพิ่มสคริปต์นี้ลงในไดเรกทอรีใน
$fpathfpath[1,0]=~/.zsh/completion/ mkdir -p ~/.zsh/completion/ cp /path/from/above/step/_bazel ~/.zsh/completionคุณอาจต้องเรียกใช้
rm -f ~/.zcompdump; compinitในครั้งแรกเพื่อให้สคริปต์ทำงานหรือเพิ่มรายการต่อไปนี้ลงใน .zshrc
# This way the completion script does not have to parse Bazel's options # repeatedly. The directory in cache-path must be created manually. zstyle ':completion:*' use-cache on zstyle ':completion:*' cache-path ~/.zsh/cache