Penyelesaian Command Line

Anda dapat mengaktifkan penyelesaian command line (juga dikenal sebagai penyelesaian tab) di Bash dan Zsh. Dengan begitu, Anda dapat menyelesaikan nama perintah, nama flag, nilai flag, dan nama target dengan tab.

Bash

Bazel dilengkapi dengan skrip penyelesaian Bash.

Jika Anda menginstal Bazel:

  • Dari repositori APT, Anda sudah selesai -- skrip penyelesaian Bash sudah diinstal di /etc/bash_completion.d.

  • Dari Homebrew, Anda sudah selesai -- skrip penyelesaian Bash sudah diinstal di $(brew --prefix)/etc/bash_completion.d.

  • Dari penginstal yang didownload dari GitHub, lalu:

    1. Temukan jalur absolut file penyelesaian. Penginstal menyalinnya ke direktori bin.

      Contoh: jika Anda menjalankan penginstal dengan --user, jalur absolutnya adalah $HOME/.bazel/bin. Jika Anda menjalankan penginstal sebagai root, jalur absolutnya adalah /usr/local/lib/bazel/bin.

    2. Lakukan salah satu hal berikut:

      • Salin file ini ke direktori penyelesaian Anda (jika ada).

        Contoh: di Ubuntu, direktori ini adalah /etc/bash_completion.d.

      • Atau, sumberkan file penyelesaian dari file RC Bash.

        Tambahkan baris yang mirip dengan baris di bawah ke ~/.bashrc (di Ubuntu) atau ~/.bash_profile (di macOS), menggunakan jalur ke jalur absolut file penyelesaian Anda:

        source /path/to/bazel-complete.bash
        
  • Melalui bootstrapping, lalu:

    1. Kirim skrip penyelesaian ke dalam file:

      bazel help completion bash > bazel-complete.bash
      
    2. Lakukan salah satu hal berikut:

      • Salin file ini ke direktori penyelesaian Anda, jika ada.

        Contoh: di Ubuntu, direktori ini adalah /etc/bash_completion.d

      • Salin file tersebut ke suatu tempat di disk lokal Anda, seperti ke $HOME, dan sumberkan file penyelesaian dari file RC Bash.

        Tambahkan baris yang mirip dengan baris di bawah ke ~/.bashrc (di Ubuntu) atau ~/.bash_profile (di macOS), menggunakan jalur ke jalur absolut file penyelesaian Anda:

        source /path/to/bazel-complete.bash
        

Zsh

Bazel dilengkapi dengan skrip penyelesaian Zsh.

Jika Anda menginstal Bazel:

  • Dari repositori APT, Anda sudah selesai -- skrip penyelesaian Zsh sudah diinstal di /usr/share/zsh/vendor-completions.

    Jika Anda memiliki .zshrc yang sangat disesuaikan dan fitur pelengkapan otomatis tidak berfungsi, coba salah satu solusi berikut:

    Tambahkan kode berikut ke .zshrc Anda:

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

    atau

    Ikuti petunjuk di sini

    Jika Anda menggunakan oh-my-zsh, sebaiknya instal dan aktifkan plugin zsh-autocomplete. Jika tidak ingin melakukannya, gunakan salah satu solusi yang dijelaskan di atas.

  • Dari Homebrew, Anda sudah selesai -- skrip penyelesaian Zsh sudah diinstal di $(brew --prefix)/share/zsh/site-functions.

  • Dari penginstal yang didownload dari GitHub, lalu:

    1. Temukan jalur absolut file penyelesaian. Penginstal menyalinnya ke direktori bin.

      Contoh: jika Anda menjalankan penginstal dengan --user, jalur absolutnya adalah $HOME/.bazel/bin. Jika Anda menjalankan penginstal sebagai root, jalur absolutnya adalah /usr/local/lib/bazel/bin.

    2. Tambahkan skrip ini ke direktori di $fpath Anda:

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

      Anda mungkin harus memanggil rm -f ~/.zcompdump; compinit untuk pertama kalinya agar berfungsi.

    3. Secara opsional, tambahkan kode berikut ke .zshrc Anda.

      # 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