Preenchimento de linha de comando

7.3 · 7.2 · 7.1 · 7.0 · 6.5

Você pode ativar o preenchimento por linha de comando (também conhecido como preenchimento com tabulação) no Bash e Zsh. Isso permite que você use a tabulação para preencher nomes de comandos, sinalizações e valores de sinalizações, e nomes de destino.

Bash

O Bazel vem com um script de conclusão de Bash.

Se você instalou o Bazel:

  • No repositório APT, o script de conclusão do Bash já está instalado em /etc/bash_completion.d.

  • No Homebrew, está tudo pronto. O script de conclusão do Bash já está instalado em $(brew --prefix)/etc/bash_completion.d.

  • No instalador baixado do GitHub:

    1. Localize o caminho absoluto do arquivo de conclusão. O instalador o copiou para o diretório bin.

      Exemplo: se você executou o instalador com --user, ele será $HOME/.bazel/bin. Se você executou o instalador como raiz, ele será /usr/local/lib/bazel/bin.

    2. Escolha uma destas opções:

      • Copie esse arquivo para o diretório de conclusão (se você tiver um).

        Exemplo: no Ubuntu, esse é o diretório /etc/bash_completion.d.

      • Ou extraia o arquivo de conclusão do arquivo RC do Bash.

        Adicione uma linha semelhante à mostrada abaixo ao ~/.bashrc (no Ubuntu) ou ~/.bash_profile (no macOS), usando o caminho para o caminho absoluto do arquivo de conclusão:

        source /path/to/bazel-complete.bash
        
  • Com o bootstrap, faça o seguinte:

    1. Crie o script de conclusão:

      bazel build //scripts:bazel-complete.bash
      
    2. O arquivo de conclusão é criado em bazel-bin/scripts/bazel-complete.bash.

      Escolha uma destas opções:

      • Copie esse arquivo para o diretório de conclusão, se você tiver um.

        Exemplo: no Ubuntu, esse é o diretório /etc/bash_completion.d

      • Copie-o em algum lugar do disco local, como $HOME, e use o arquivo de preenchimento do Bash.

        Adicione uma linha semelhante à mostrada abaixo ao ~/.bashrc (no Ubuntu) ou ~/.bash_profile (no macOS), usando o caminho para o caminho absoluto do arquivo de conclusão:

        source /path/to/bazel-complete.bash
        

Zsh

O Bazel vem com um script de preenchimento de Zsh.

Se você instalou o Bazel:

  • No repositório APT, você já terminou. O script de conclusão do Zsh já está instalado em /usr/share/zsh/vendor-completions.

    Se você tiver um .zshrc altamente personalizado e o preenchimento automático não funcionar, tente uma das seguintes soluções:

    Adicione o seguinte ao seu .zshrc:

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

    ou

    Siga as instruções aqui.

    Se você estiver usando oh-my-zsh, instale e ative o plug-in zsh-autocomplete. Se preferir, use uma das soluções descritas acima.

  • No Homebrew, você já terminou. O script de conclusão do Zsh já está instalado em $(brew --prefix)/share/zsh/site-functions.

  • No instalador baixado do GitHub:

    1. Localize o caminho absoluto do arquivo de conclusão. O instalador o copiou para o diretório bin.

      Exemplo: se você executou o instalador com --user, ele será $HOME/.bazel/bin. Se você executou o instalador como root, ele será /usr/local/lib/bazel/bin.

    2. Adicione este script a um diretório no $fpath:

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

      Talvez seja necessário chamar rm -f ~/.zcompdump; compinit na primeira vez para que ele funcione.

    3. Se quiser, adicione o código abaixo ao arquivo .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