forked from mirror/readline
2.8 KiB
2.8 KiB
readline
A pure go implementation for gnu readline.
Demo
Usage
import "github.com/chzyer/readline"
rl, err := readline.New("> ")
if err != nil {
panic(err)
}
defer rl.Close()
for {
line, err := rl.Readline()
if err != nil { // io.EOF
break
}
println(line)
}
Shortcut
Meta
+B
means press Esc
and n
separately.
Users can change that in terminal simulator(i.e. iTerm2) to Alt
+B
Shortcut | Comment | Support |
---|---|---|
Ctrl +A |
Beginning of line | Yes |
Ctrl +B / ← |
Backward one character | Yes |
Meta +B |
Backward one word | Yes |
Ctrl +C |
Send io.EOF | Yes |
Ctrl +D |
Delete one character | Yes |
Meta +D |
Delete one word | Yes |
Ctrl +E |
End of line | Yes |
Ctrl +F / → |
Forward one character | Yes |
Meta +F |
Forward one word | Yes |
Ctrl +G |
Cancel | Yes |
Ctrl +H |
Delete previous character | Yes |
Ctrl +I / Tab |
Command line completion | No |
Ctrl +J |
Line feed | Yes |
Ctrl +K |
Cut text to the end of line | Yes |
Ctrl +L |
Clean screen | No |
Ctrl +M |
Same as Enter key | Yes |
Ctrl +N / ↓ |
Next line (in history) | Yes |
Ctrl +P / ↑ |
Prev line (in history) | Yes |
Ctrl +R |
Search backwards in history | Yes |
Ctrl +S |
Search forwards in history | Yes |
Ctrl +T |
Transpose characters | Yes |
Meta +T |
Transpose words | No |
Ctrl +U |
Cut text to the beginning of line | No |
Ctrl +W |
Cut previous word | Yes |
Backspace |
Delete previous character | Yes |
Meta +Backspace |
Cut previous word | Yes |
Enter |
Line feed | Yes |