(WSL with Ubuntu 18.04)
I have some configuration settings that I have used before and that can be seen recommended in various places across the internet (not to mention on SO). I hav placed them in a .inputrc
file in my home location.
$include /etc/inputrc
# better tab completion
bind "set show-all-if-ambiguous on"
bind "set completion-ignore-case on"
# disable bell
bind "set bell-style none"
# make tab completion treat links as directories
# i.e. adds trailing slash when <tab>-ing
set mark-symlinked-directories on
I'm not clear on why bind
is used or not used for these. Internet says bind
is used for the readline
library. Internet also says .inputrc
is for the readline
. So they should work together, right?
But when I use these crazy things start to happen in buy terminal (WSL).
In one case (disabling the bell) anytime I type more than N letters at the prompt, bash starts spitting out set
over and over without end.
In another case (the tab completion) it spits out "set completion-ignore-case on" after every character I type.
The odd behaviour stops if I remove the bind
and quotes, so I do not need to know how to stop this behaviour. I would like to understand why this happens. Anyone know what's going on here?
bind
there at all? It looks like a series ofset
commands just like the very last line. – Kusalananda Feb 04 '20 at 14:14bind
is a readline command andinputrc
is a readline config file, so why would it not be used there? – Toby Feb 04 '20 at 14:23bind
is a bash builtin for readline" (emphasis mine). I see the problem now, d'oh! – Toby Feb 04 '20 at 14:25