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

รายงานปัญหา ดูแหล่งที่มา Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

คุณเปิดใช้การเติมข้อความอัตโนมัติในบรรทัดคำสั่ง (หรือที่เรียกว่าการเติมข้อความอัตโนมัติด้วยแท็บ) ใน 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 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