pws tool
This commit is contained in:
5
pws/go.mod
Normal file
5
pws/go.mod
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
module pws
|
||||||
|
|
||||||
|
go 1.26.1
|
||||||
|
|
||||||
|
require github.com/rthornton128/goncurses v0.0.0-20251206192105-7e6d2302acca // indirect
|
||||||
2
pws/go.sum
Normal file
2
pws/go.sum
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
github.com/rthornton128/goncurses v0.0.0-20251206192105-7e6d2302acca h1:kFR/H0Y6K2vP5EU0lYLoRWXIiLPztK1r6DTUeSkNo08=
|
||||||
|
github.com/rthornton128/goncurses v0.0.0-20251206192105-7e6d2302acca/go.mod h1:AHlKFomPTwmO7H2vL8d7VNrQNQmhMi/DBhDnHRhjbCo=
|
||||||
53
pws/pws.go
Normal file
53
pws/pws.go
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
// with this tool you can setup a pipewire audio configuration
|
||||||
|
// you can select the bitrate and the buffersize for your audiocard
|
||||||
|
// you need ncurses to be installed on your system
|
||||||
|
|
||||||
|
import (
|
||||||
|
"log"
|
||||||
|
gc "github.com/rthornton128/goncurses"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
|
||||||
|
// setup main window
|
||||||
|
stdscr, err := gc.Init()
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
defer gc.End()
|
||||||
|
|
||||||
|
// HasColors can be used to determine whether the current terminal
|
||||||
|
// has the capability of using colours. You could then chose whether or
|
||||||
|
// not to use some other mechanism, like using A_REVERSE, instead
|
||||||
|
if !gc.HasColors() {
|
||||||
|
log.Fatal("Example requires a colour capable terminal")
|
||||||
|
}
|
||||||
|
|
||||||
|
// Must be called after Init but before using any colour related functions
|
||||||
|
if err := gc.StartColor(); err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
gc.Echo(false)
|
||||||
|
|
||||||
|
// Initialize a colour pair. Should only fail if an improper pair value
|
||||||
|
// is given
|
||||||
|
if err := gc.InitPair(1, gc.C_BLACK, gc.C_CYAN); err != nil {
|
||||||
|
log.Fatal("InitPair failed: ", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
stdscr.Keypad(true)
|
||||||
|
// ColorOn/Off is a shortcut to calling AttrOn/Off(gc.ColorPair(pair))
|
||||||
|
stdscr.ColorOn(1)
|
||||||
|
stdscr.SetBackground(gc.Char(' ') | gc.ColorPair(1))
|
||||||
|
stdscr.MovePrint(12, 30, "Hello, World!!!")
|
||||||
|
stdscr.MovePrint(13, 30, "Hello, World in Color!!!")
|
||||||
|
stdscr.Refresh()
|
||||||
|
stdscr.GetChar()
|
||||||
|
|
||||||
|
stdscr.ColorOff(1)
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user