Moved argument parsing out of NewModel()
This commit is contained in:
parent
8fff93464a
commit
46883cc42d
10
main.go
10
main.go
@ -2,13 +2,21 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"log"
|
"log"
|
||||||
|
"os"
|
||||||
|
|
||||||
gomus "git.cesium.pw/niku/gomus/pkg"
|
gomus "git.cesium.pw/niku/gomus/pkg"
|
||||||
tea "github.com/charmbracelet/bubbletea"
|
tea "github.com/charmbracelet/bubbletea"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
p := tea.NewProgram(gomus.NewModel())
|
if len(os.Args) < 2 {
|
||||||
|
log.Fatal("Expected a path to some music")
|
||||||
|
}
|
||||||
|
|
||||||
|
p := tea.NewProgram(gomus.NewModel(gomus.ModelArgs{
|
||||||
|
MusicPath: os.Args[1],
|
||||||
|
}))
|
||||||
|
|
||||||
if err := p.Start(); err != nil {
|
if err := p.Start(); err != nil {
|
||||||
log.Fatalf("Failed to start: %v", err)
|
log.Fatalf("Failed to start: %v", err)
|
||||||
}
|
}
|
||||||
|
13
pkg/model.go
13
pkg/model.go
@ -12,6 +12,10 @@ var (
|
|||||||
termHeight = 0
|
termHeight = 0
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ModelArgs struct {
|
||||||
|
MusicPath string
|
||||||
|
}
|
||||||
|
|
||||||
type Model struct {
|
type Model struct {
|
||||||
cursor int
|
cursor int
|
||||||
currentlyPlaying int
|
currentlyPlaying int
|
||||||
@ -22,13 +26,8 @@ type Model struct {
|
|||||||
trackPlayerView trackPlayerView
|
trackPlayerView trackPlayerView
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewModel() Model {
|
func NewModel(args ModelArgs) Model {
|
||||||
if len(os.Args) < 2 {
|
ti := NewDirTrackIndex(args.MusicPath)
|
||||||
fmt.Println("Expected a path to some music")
|
|
||||||
os.Exit(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
ti := NewDirTrackIndex(os.Args[1])
|
|
||||||
tpv := newTrackPlayerView(ti.tracks)
|
tpv := newTrackPlayerView(ti.tracks)
|
||||||
|
|
||||||
return Model{
|
return Model{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user