การกรอกข้อมูลในบรรทัดคำสั่ง

คุณสามารถเปิดใช้การเติมคำสั่งอัตโนมัติ (หรือที่เรียกว่าการเติมแท็บ) ใน Bash และ Zsh ซึ่งจะช่วยให้คุณเติมชื่อคำสั่ง ชื่อแฟล็ก และค่าแฟล็ก รวมถึงชื่อเป้าหมายโดยใช้แท็บได้

Bash

Bazel มาพร้อมกับสคริปต์การเติม Bash

หากคุณติดตั้ง Bazel โดยใช้ตัวเลือกต่อไปนี้

  • จากที่เก็บ APT คุณก็เรียบร้อยแล้ว เนื่องจากสคริปต์การเติม Bash ได้รับการติดตั้งไว้ใน /etc/bash_completion.d แล้ว

  • จาก Homebrew คุณก็เรียบร้อยแล้ว เนื่องจากสคริปต์การเติม Bash ได้รับการติดตั้งไว้ใน $(brew --prefix)/etc/bash_completion.d แล้ว

  • จากโปรแกรมติดตั้งที่ดาวน์โหลดจาก GitHub ให้ทำดังนี้

    1. ค้นหาเส้นทางสัมบูรณ์ของไฟล์การเติม โดยโปรแกรมติดตั้งจะคัดลอกไฟล์นี้ไปยังไดเรกทอรี bin

      ตัวอย่างเช่น หากคุณเรียกใช้โปรแกรมติดตั้งด้วย --user เส้นทางจะเป็น $HOME/.bazel/bin หากคุณเรียกใช้โปรแกรมติดตั้งในฐานะผู้ใช้ระดับราก เส้นทางจะเป็น /usr/local/lib/bazel/bin

    2. ทำสิ่งใดสิ่งหนึ่งต่อไปนี้

      • คัดลอกไฟล์นี้ไปยังไดเรกทอรีการเติม (หากมี)

        ตัวอย่างเช่น ใน Ubuntu ไดเรกทอรีนี้คือ /etc/bash_completion.d

      • หรือเรียกใช้ไฟล์การเติมจากไฟล์ RC ของ Bash

        เพิ่มบรรทัดที่คล้ายกับบรรทัดด้านล่างลงใน ~/.bashrc (ใน Ubuntu) หรือ ~/.bash_profile (ใน macOS) โดยใช้เส้นทางสัมบูรณ์ของไฟล์การเติม

        source /path/to/bazel-complete.bash
        
  • ผ่านการบูตสแตรป ให้ทำดังนี้

    1. ส่งออกสคริปต์การเติมไปยังไฟล์

      bazel help completion bash > bazel-complete.bash
      
    2. ทำสิ่งใดสิ่งหนึ่งต่อไปนี้

      • คัดลอกไฟล์นี้ไปยังไดเรกทอรีการเติม หากมี

        ตัวอย่างเช่น ใน 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 ไว้มากและฟังก์ชันการเติมคำอัตโนมัติไม่ทำงาน ให้ลองทำตามวิธีแก้ปัญหาต่อไปนี้

    เพิ่มบรรทัดต่อไปนี้ลงใน .zshrc

        zstyle :compinstall filename '/home/tradical/.zshrc'
    
        autoload -Uz compinit
        compinit
    

    หรือ

    ทำตามวิธีการ ที่นี่

    หากคุณใช้ oh-my-zsh คุณอาจต้องการติดตั้งและเปิดใช้ปลั๊กอิน zsh-autocomplete หากไม่ต้องการ ให้ใช้วิธีแก้ปัญหาที่อธิบายไว้ข้างต้น

  • จาก Homebrew คุณก็เรียบร้อยแล้ว เนื่องจากสคริปต์การเติม Zsh ได้รับการติดตั้งไว้ใน $(brew --prefix)/share/zsh/site-functions แล้ว

  • จากโปรแกรมติดตั้งที่ดาวน์โหลดจาก GitHub ให้ทำดังนี้

    1. ค้นหาเส้นทางสัมบูรณ์ของไฟล์การเติม โดยโปรแกรมติดตั้งจะคัดลอกไฟล์นี้ไปยังไดเรกทอรี bin

      ตัวอย่างเช่น หากคุณเรียกใช้โปรแกรมติดตั้งด้วย --user เส้นทางจะเป็น $HOME/.bazel/bin หากคุณเรียกใช้โปรแกรมติดตั้งในฐานะผู้ใช้ระดับราก เส้นทางจะเป็น /usr/local/lib/bazel/bin

    2. เพิ่มสคริปต์นี้ลงในไดเรกทอรีใน $fpath

      fpath[1,0]=~/.zsh/completion/
      mkdir -p ~/.zsh/completion/
      cp /path/from/above/step/_bazel ~/.zsh/completion
      

      คุณอาจต้องเรียกใช้ rm -f ~/.zcompdump; compinit ในครั้งแรกเพื่อให้สคริปต์ทำงาน

    3. หรือจะเพิ่มบรรทัดต่อไปนี้ลงใน .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