Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Well I use vi-mode in bash via the set -o vi command. What's annoying is when I'm typing words in capital then try to complete using tab but don't release the shift-key fast enough, it brings me out of insert mode and into command mode. I thought after a few months that I would naturally adjust and stop doing this but it seems I can't..

Now, if there is a way to remap shift-tab (which I doubt means anything useful in any context) to just a regular tab, then my command line troubles will be over.

My setup is Windows -> Putty -> bash -> gnu screen

share|improve this question

I was having the same problem on a Solaris machine.

I fixed it by adding the following line to my .inputrc file.

"\e[Z": complete

In fact, here's my entire .inputrc (note: you'll want to change mode from emacs to vi) file which I copied from somewhere on the web:

# This file controls the behaviour of line input editing for
     # programs that use the GNU Readline library.  Existing
     # programs include FTP, Bash, and GDB.
     # You can re-read the inputrc file with C-x C-r.
     # Lines beginning with '#' are comments.
     # First, include any systemwide bindings and variable
     # assignments from /etc/Inputrc
     $include /etc/Inputrc
     # Set various bindings for emacs mode.
     set editing-mode emacs
     $if mode=emacs
     Meta-Control-h:    backward-kill-word      Text after the function name is ignored
     # Arrow keys in keypad mode
     #"\M-OD":        backward-char
     #"\M-OC":        forward-char
     #"\M-OA":        previous-history
     #"\M-OB":        next-history
     # Arrow keys in ANSI mode
     "\M-[D":        backward-char
     "\M-[C":        forward-char
     "\M-[A":        previous-history
     "\M-[B":        next-history
     # Arrow keys in 8 bit keypad mode
     #"\M-\C-OD":       backward-char
     #"\M-\C-OC":       forward-char
     #"\M-\C-OA":       previous-history
     #"\M-\C-OB":       next-history
     # Arrow keys in 8 bit ANSI mode
     #"\M-\C-[D":       backward-char
     #"\M-\C-[C":       forward-char
     #"\M-\C-[A":       previous-history
     #"\M-\C-[B":       next-history
     C-q: quoted-insert
     # An old-style binding.  This happens to be the default.
     TAB: complete
     # Macros that are convenient for shell interaction
     $if Bash
     # edit the path
     "\C-xp": "PATH=${PATH}\e\C-e\C-a\ef\C-f"
     # prepare to type a quoted word --
     # insert open and close double quotes
     # and move to just after the open quote
     "\C-x\"": "\"\"\C-b"
     # insert a backslash (testing backslash escapes
     # in sequences and macros)
     "\C-x\\": "\\"
     # Quote the current or previous word
     "\C-xq": "\eb\"\ef\""
     # Add a binding to refresh the line, which is unbound
     "\C-xr": redraw-current-line
     # Edit variable on current line.
     "\M-\C-v": "\C-a\C-k$\C-y\M-\C-e\C-a\C-y="
     # use a visible bell if one is available
     set bell-style visible
     # don't strip characters to 7 bits when reading
     set input-meta on
     # allow iso-latin1 characters to be inserted rather
     # than converted to prefix-meta sequences
     set convert-meta off
     # display characters with the eighth bit set directly
     # rather than as meta-prefixed characters
     set output-meta on
     # if there are more than 150 possible completions for
     # a word, ask the user if he wants to see all of them
     set completion-query-items 150
     # For FTP
     $if Ftp
     "\C-xg": "get \M-?"
     "\C-xt": "put \M-?"
     "\M-.": yank-last-arg

     # Make Shift-tab act like regular tab - ms4719 - 20120308
     "\e[Z": complete
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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