Eu quero uma caixa de combinação do shell. Ou seja, uma lista suspensa de itens padrão com alguma pesquisa difusa e, mais importante,a capacidade de inserir um valor que não está na lista.
Em ambientes GUI, isso é suportado por ferramentas como rofi
:
cat options | rofi -dmenu
faz exatamente o que eu preciso, C-ENTER
forçando uma opção que não está na lista.
Existe um equivalente disso que é pura linha de comando?fzfparece ser o análogo mais próximo no espaço puro da linha de comando, mas uma breve revisão de sua página de manual sugere que não há uma ligação adequada para "aceitar o texto conforme inserido".
Soluções alternativas
É claro que existem soluções alternativas
- Use um sistema de menu com indexação numérica, incluindo uma entrada para "criar novo"
- O mesmo, mas dentro
fzf
Mas nenhuma dessas coisas é tão fácil quanto poderia ser.