Init commit
This commit is contained in:
57
term/term.go
Normal file
57
term/term.go
Normal file
@ -0,0 +1,57 @@
|
||||
package term
|
||||
|
||||
import "fmt"
|
||||
|
||||
type CursorFlag bool
|
||||
|
||||
const (
|
||||
CursorOn CursorFlag = true
|
||||
CursorOff CursorFlag = false
|
||||
)
|
||||
|
||||
func TurnCursor(onOff CursorFlag) {
|
||||
if onOff == CursorOn {
|
||||
fmt.Printf("\033[?25h")
|
||||
} else {
|
||||
fmt.Printf("\033[?25l")
|
||||
}
|
||||
}
|
||||
|
||||
func ClearScreen() {
|
||||
fmt.Printf("\033[2J")
|
||||
}
|
||||
|
||||
func ResetTerminal() {
|
||||
fmt.Printf("\033c")
|
||||
}
|
||||
|
||||
func GoHome() {
|
||||
fmt.Printf("\033[H")
|
||||
}
|
||||
|
||||
func SaveCursor() {
|
||||
fmt.Printf("\033[s")
|
||||
}
|
||||
|
||||
func RestoreCursor() {
|
||||
fmt.Printf("\033[u")
|
||||
}
|
||||
|
||||
func EnableAlternateScreen() {
|
||||
fmt.Printf("\033[?1049h")
|
||||
}
|
||||
|
||||
func DisableAlternateScreen() {
|
||||
fmt.Printf("\033[?1049l")
|
||||
}
|
||||
|
||||
func StartFullscreen() {
|
||||
SaveCursor()
|
||||
EnableAlternateScreen()
|
||||
ClearScreen()
|
||||
}
|
||||
|
||||
func FinishFullscreen() {
|
||||
DisableAlternateScreen()
|
||||
RestoreCursor()
|
||||
}
|
Reference in New Issue
Block a user