When you put "set -o vi" in a .bash_profile in Red Hat 6.0, vi mode doesn't work at all. When you type it in manually, it works fine. This seems like a bug in readline, not a choice of features as Cristian Grafton has suggested. When one adds "set -o vi" to a .bashrc, then vi edit mode never works correctly afterwards. When you type it in manually, you get great results. Once bash processes the "set -o vi" in a .bashrc, no amount changing edit modes manually will make vi edit mode work correctly [emacs edit mode seems unaffected]. It makes the system MUCH more unfriendly to vi users than the old version was to emacs users. Yeah, home and end work, but now nothing else does - at least not for vi users. The workaround is given by David A. DeGraaf on the hedwig-list: I found that the new line in /etc/profile is culpable: INPUTRC=/etc/inputrc When I commented this out bash worked again as it should. I have no idea why this line is there or what function is lost by removing it. It's just one of those little mysteries...
*** This bug has been marked as a duplicate of 2738 ***