Como posso formatar a saída de um comando bash em colunas limpas

Tenho uma função que gera muitas linhas de informações que quero formatar em colunas. O problema é que a largura de qualquer "célula" específica (se é que posso usar esse termo) de dados é variável, portanto, canalizá-lo para algo como awk não me dá o que eu quer

A função é "chaves" (não que isso importe) e estou tentando algo como isto:

$ keys | awk '{ print $1"\t\t" $2 }'

mas a saída (ou seja, um trecho) é assim:

"option-y"      yank-pop
"option-z"      execute-last-named-cmd
"option-|"      vi-goto-column
"option-~"      _bash_complete-word
"option-control-?"      backward-kill-word
"control-_"     undo
"control-?"     backward-delete-char

Como posso forçar as coisas a permanecerem em colunas organizadas? Isso é possível com o awk ou preciso usar outra coisa?

questionAnswers(6)

yourAnswerToTheQuestion