Skip to main content
added 955 characters in body
Source Link

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
close(3)           

                 = 0

Given:

$ 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?

Edit:

/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
$endif

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
close(3)           

                 = 0

Given:

$ 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?

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
close(3)           

                 = 0

Given:

$ 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?

Edit:

/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
$endif
Source Link

inputrc not loading correctly

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
close(3)           

                 = 0

Given:

$ 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?