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

รายงานปัญหา ดูซอร์สโค้ด รุ่น Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

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

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 build //scripts:bazel-complete.bash
      
    2. ไฟล์เสร็จสมบูรณ์จะสร้างขึ้นในส่วน bazel-bin/scripts/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 อย่างมากและฟีเจอร์เติมข้อความอัตโนมัติไม่ทำงาน ให้ลองทำตามวิธีแก้ปัญหาอย่างใดอย่างหนึ่งต่อไปนี้

    เพิ่มโค้ดต่อไปนี้ใน .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