I added the following to my ~/.inputrc:

set show-all-if-ambiguous on   # single tab to start completion help
set completion-ignore-case on  # completion is case-insensitive

$include /etc/inputrc

If I run strace bash I can see that it is loaded:

stat("/home/john/.inputrc", {st_mode=S_IFREG|0644, st_size=156, ...}) = 0
open("/home/john/.inputrc", O_RDONLY)   = 3
read(3, "set show-all-if-ambiguous on   #"..., 156) = 156
close(3)                                = 0
stat("/etc/inputrc", {st_mode=S_IFREG|0644, st_size=714, ...}) = 0
open("/etc/inputrc", O_RDONLY)          = 3
read(3, "# do not bell on tab-completion\n"..., 714) = 714

                 = 0


$ ls ~
Projects    Pictures

In a new bash window cd p<TAB> produces no results.

However, If I type: bind 'set completion-ignore-case on', it lists both folders and changes the case as expected.

What am I missing here?


/etc/inputrc is unmodified and contains:

# do not bell on tab-completion
#set bell-style none

set meta-flag on
set input-meta on
set convert-meta off
set output-meta on

$if mode=emacs

# for linux console and RH/Debian xterm
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[7~": beginning-of-line
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word

# for rxvt
"\e[8~": end-of-line

# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
"\eOH": beginning-of-line
"\eOF": end-of-line

# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
  • The settings in your ~/.inputrc are overridden by /etc/inputrc. Why that happens however, I wouldn't even try to guess. – lcd047 Jun 16 '15 at 6:46

It seems inputrc supports # comments, but only on their own line and not trailing. Having # comment after each statement caused it to fail to apply.

set show-all-if-ambiguous on
set completion-ignore-case on

Seems to work as expected.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.