Digging into /usr/share/bash-completion/completions/tar I found some answers. Basically the completer doesn't understand the intent argument "-c" when the intent is not the first argument. That confused the program and it's trying to extract the index of a (nonexistant) tar file by running:
tar t foo.tar
Lacking the "f" argument TAR is reading from STDIN and that will hang us up forever. I tried CTRL-D but that didn't work.
Attached is a patch that works around the problem by blinding the completer when the first argument is --something. A better solution would be to fix the parser to understand arguments in any position but in the mean time it's better for my mental health not to crash.
Digging into /usr/share/ bash-completion /completions/ tar I found some answers. Basically the completer doesn't understand the intent argument "-c" when the intent is not the first argument. That confused the program and it's trying to extract the index of a (nonexistant) tar file by running:
tar t foo.tar
Lacking the "f" argument TAR is reading from STDIN and that will hang us up forever. I tried CTRL-D but that didn't work.
Attached is a patch that works around the problem by blinding the completer when the first argument is --something. A better solution would be to fix the parser to understand arguments in any position but in the mean time it's better for my mental health not to crash.