5
2
I use bash in Windows, both in Cygwin and in Git Bash (part of Git for Windows). In bash unlike in the Windows cmd.exe
Esc does not clear the line, only Ctrl + U. How can I make clear the line also?
Thanks!
5
2
I use bash in Windows, both in Cygwin and in Git Bash (part of Git for Windows). In bash unlike in the Windows cmd.exe
Esc does not clear the line, only Ctrl + U. How can I make clear the line also?
Thanks!
7
I don't have a Cygwin or Git for Windows install handy to test this, but here's the Unix answer:
Create a file in your (cygwin) home directory named ".inputrc", and add this line to it:
Escape: unix-line-discard
On my favorite Unix variant, Control-u is mapped to unix-line-discard, which deletes everything before the cursor. If you want it to delete the whole input line, including anything that may be to the right of the cursor, use "kill-whole-line" instead of "unix-line-discard".
Note that your bash line editing mode might eat the Escape. Bash on my system defaults to vi-style line editing mode (set -o vi
), and as you may know, vi is all about the Escape key, so when I try this I have to hit Escape twice because the first one gets eaten by the vi-style editing mode. I'm not an emacs guy so I don't know what the emacs-style line editing mode will do with an Escape keypress.
Note also that the .inputrc file is read when the shell starts, so after editing your ~/.inputrc, close your shell and open a new one to see if the changes worked.
Awesome! Been trying to do this for a while on Mac OS X too. The point about the line editing mode helped tremendously because in the various attempts to get this to work I probably skipped right over a working solution because I was only hitting escape once. – Josh – 2012-08-12T22:11:11.800
You may find that the console will interfere with any attempt to resolve this. – Ignacio Vazquez-Abrams – 2011-06-16T16:38:11.923
Try this. If it works, I'll post it as an answer.
– evan.bovie – 2011-06-16T16:58:47.943