adds Config option to disable bell; DisableBell

This commit is contained in:
henderjon 2023-09-21 09:01:28 -05:00
parent 7f93d88cd5
commit d25ac56026
No known key found for this signature in database
GPG Key ID: B64029804B7D23DB
2 changed files with 21 additions and 16 deletions

View File

@ -1,20 +1,20 @@
// Readline is a pure go implementation for GNU-Readline kind library. // Readline is a pure go implementation for GNU-Readline kind library.
// //
// example: // example:
// rl, err := readline.New("> ")
// if err != nil {
// panic(err)
// }
// defer rl.Close()
// //
// for { // rl, err := readline.New("> ")
// line, err := rl.Readline() // if err != nil {
// if err != nil { // io.EOF // panic(err)
// break // }
// } // defer rl.Close()
// println(line)
// }
// //
// for {
// line, err := rl.Readline()
// if err != nil { // io.EOF
// break
// }
// println(line)
// }
package readline package readline
import ( import (
@ -68,6 +68,8 @@ type Config struct {
// it use in IM usually. // it use in IM usually.
UniqueEditLine bool UniqueEditLine bool
DisableBell bool
// filter input runes (may be used to disable CtrlZ or for translating some keys to different actions) // filter input runes (may be used to disable CtrlZ or for translating some keys to different actions)
// -> output = new (translated) rune and true/false if continue with processing this one // -> output = new (translated) rune and true/false if continue with processing this one
FuncFilterInputRune func(rune) (rune, bool) FuncFilterInputRune func(rune) (rune, bool)
@ -301,9 +303,10 @@ func (i *Instance) Write(b []byte) (int, error) {
// WriteStdin prefill the next Stdin fetch // WriteStdin prefill the next Stdin fetch
// Next time you call ReadLine() this value will be writen before the user input // Next time you call ReadLine() this value will be writen before the user input
// ie : // ie :
// i := readline.New() //
// i.WriteStdin([]byte("test")) // i := readline.New()
// _, _= i.Readline() // i.WriteStdin([]byte("test"))
// _, _= i.Readline()
// //
// gives // gives
// //

View File

@ -214,7 +214,9 @@ func (t *Terminal) ioloop() {
} }
func (t *Terminal) Bell() { func (t *Terminal) Bell() {
fmt.Fprintf(t, "%c", CharBell) if !t.cfg.DisableBell {
fmt.Fprintf(t, "%c", CharBell)
}
} }
func (t *Terminal) Close() error { func (t *Terminal) Close() error {