2010-08-14 11 views
45

In Bash, quando sto digitando un comando, premo Ctrl + U, tutti i caratteri dall'inizio della riga fino al cursore verranno rimossi. Tuttavia, in zsh, se ho premuto Ctrl + U, l'intera riga è scomparsa.Quale scorciatoia in Zsh equivale a Ctrl-U in Bash?

Come fare lo stesso in Zsh come in Bash?

+1

In realtà, questo è un tasto di scelta rapida Emacs, non bash. Bash riutilizza molte associazioni di tasti di Emacs. Alcune altre combinazioni di tasti di Emacs per zsh: https://code.google.com/p/vinipsmaker/source/browse/config/.zshrc?spec=svn846ef53b90527aaab08418755be911b81d4c8552&r=846ef53b90527aaab08418755be911b81d4c8552#78 – vinipsmaker

risposta

64

Suona come vuoi per Ctrl +U per essere associato a backward-kill-line piuttosto che kill-whole-line, quindi aggiungere questo ai vostri .zshrc:

bindkey \^U backward-kill-line 

I bindkey comandi di modifica incorporati e disponibili ("Widget") sono documentati nella pagina man zshzle.

+0

Zsh non usa readline, invece usa il suo proprio zle. Quindi personalizzerò la combinazione di tasti. Grazie! – Kent

+0

Non funziona per me :( – yPhil

+0

metti questo in $ HOME/.zshrc e dovresti essere impostato dopo aver eseguito "source $ HOME/.zshrc" o hai aperto una nuova sessione/finestra di terminale – DevOops