Expansão de caminho incompleto para Bash com bash-complete-partial-path

1 de julho de 2019

bash-complete-partial-path aprimora a conclusão do caminho no Bash (no Linux, macOS com gnu-sed e Windows com MSYS) adicionando expansão de caminho incompleta, semelhante ao Zsh. Isso é útil se você quiser esse recurso de economia de tempo no Bash, sem ter que mudar para Zsh.

É assim que funciona. Quando a tecla Tab é pressionada, o bash-complete-partial-path assume que cada componente está incompleto e tenta expandi-lo. Digamos que você queira navegar para /usr/share/applications. Você pode digitar cd /u/s/app, pressionar Tab e bash-complete-partial-path deve expandi-lo para cd /usr/share/applications. Se houver conflitos, apenas o caminho sem conflitos é concluído ao pressionar Tab. Por exemplo, Ubuntu os usuários devem ter algumas pastas em /usr/share que começam com "app", portanto, neste caso, digitar cd /u/s/app expandirá apenas a parte /usr/share/.

Aqui está outro exemplo de expansão de caminho de arquivo incompleto mais profundo. Em um tipo de sistema Ubuntu cd /u/s/f/t/u, pressione Tab e deve ser automaticamente expandido para cd /usr/share/fonts/truetype/ubuntu.

Características incluem:

  • Escapa caracteres especiais
  • Se o usuário iniciar o caminho com aspas, o caractere de escape não será aplicado e, em vez disso, a citação será fechada com um caractere correspondente após expandir o caminho
  • Expande adequadamente expressões ~
  • Se o pacote bash-completion já estiver em uso, este código irá sobrescrever com segurança sua função_filedir. Nenhuma configuração extra é necessária, apenas certifique-se de fornecer este projeto após a conclusão do bash principal.

Verifique a página do projeto para obter mais informações e um screencast de demonstração.

Atualização: bash-complete-partial-path agora suporta alguma personalização, como opcionalmente completar apenas caminhos de diretório, tornar o preenchimento insensível a maiúsculas e minúsculas, habilitar cores e muito mais. Verifique a seção Seleção de recursos personalizados aqui.

Instalar bash-complete-parcial-path

As instruções de instalação do bash-complete-partial-path especificam o download do script bash_completion diretamente. Eu prefiro pegar o repositório Git, então posso atualizá-lo com um simples git pull, portanto, as instruções abaixo usarão este método de instalação do bash-complete-partial-path. Você pode usar as instruções oficiais se preferir.

  1. Instale o Git (necessário para clonar o repositório Git bash-complete-partial-path).

No Debian, Ubuntu, Linux Mint e assim por diante, use este comando para instalar o Git:

Comandos para usar no terminal

sudo apt install git

  1. Clone o repositório Git bash-complete-partial-path em ~/.config/:

Comandos para usar no terminal

cd ~/.config && git clone https://github.com/sio/bash-complete-partial-path

  1. Aplique ~/.config/bash-complete-partial-path/bash_completion em seu arquivo ~/.bashrc,

Abra ~/.bashrc com um editor de texto. Você pode usar o Gedit, por exemplo:

Comandos para usar no terminal

gedit ~/.bashrc

No final do arquivo ~/.bashrc, adicione o seguinte:

if [ -s "$HOME/.config/bash-complete-partial-path/bash_completion" ]
then
    . "$HOME/.config/bash-complete-partial-path/bash_completion"
    _bcpp --defaults
fi

Mencionei adicioná-lo no final do arquivo porque isso precisa ser incluído abaixo (após) a conclusão do bash principal de seu arquivo ~/.bashrc. Portanto, certifique-se de não adicioná-lo acima da conclusão original do bash, pois isso causará problemas.

  1. Fonte ~/.bashrc:

Comandos para usar no terminal

. ~/.bashrc

E pronto, o bash-complete-partial-path agora deve estar instalado e pronto para ser usado.

  • O logotipo do Bash na parte superior é da Wikipedia. *

Esse post foi traduzido do site LinuxUprising.com pela rtland.team.

Linux Uprising Blog

Confira a versão original desse post em inglês:

Incomplete Path Expansion (Completion) For Bash
Propaganda
Propaganda