|
|
@ -213,19 +213,20 @@ impl Key {
|
|
|
|
use Key::*;
|
|
|
|
use Key::*;
|
|
|
|
|
|
|
|
|
|
|
|
match self {
|
|
|
|
match self {
|
|
|
|
Backspace => Some(DeletePreviousCharacter),
|
|
|
|
Backspace | CtrlH => Some(DeletePreviousCharacter),
|
|
|
|
Delete => Some(DeleteNextCharacter),
|
|
|
|
Delete => Some(DeleteNextCharacter),
|
|
|
|
Tab => Some(InsertCharacter('\t')),
|
|
|
|
Tab => Some(InsertCharacter('\t')),
|
|
|
|
Space => Some(InsertCharacter(' ')),
|
|
|
|
Space => Some(InsertCharacter(' ')),
|
|
|
|
Left => Some(GoToPreviousCharacter),
|
|
|
|
Left | CtrlB => Some(GoToPreviousCharacter),
|
|
|
|
CtrlLeft => Some(GoToPreviousWord),
|
|
|
|
CtrlLeft => Some(GoToPreviousWord),
|
|
|
|
Right => Some(GoToNextCharacter),
|
|
|
|
Right | CtrlF => Some(GoToNextCharacter),
|
|
|
|
CtrlRight => Some(GoToNextWord),
|
|
|
|
CtrlRight => Some(GoToNextWord),
|
|
|
|
CtrlU => Some(DeleteLine),
|
|
|
|
CtrlU => Some(DeleteLine),
|
|
|
|
CtrlW => Some(DeletePreviousWord),
|
|
|
|
CtrlW => Some(DeletePreviousWord),
|
|
|
|
CtrlDelete => Some(DeleteNextWord),
|
|
|
|
CtrlDelete => Some(DeleteNextWord),
|
|
|
|
CtrlA => Some(GoToStart),
|
|
|
|
CtrlA | Home => Some(GoToStart),
|
|
|
|
CtrlE => Some(GoToEnd),
|
|
|
|
CtrlE | End => Some(GoToEnd),
|
|
|
|
|
|
|
|
CtrlK => Some(DeleteTillEnd),
|
|
|
|
key => key.to_char().map(InsertCharacter),
|
|
|
|
key => key.to_char().map(InsertCharacter),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|