@@ -11,7 +11,7 @@ import (
1111 "github.com/ergochat/readline"
1212)
1313
14- const VERSION string = "v3.3.1 "
14+ const VERSION string = "v3.4.0 "
1515
1616const (
1717 C_RED string = "\x1b [31m"
@@ -69,56 +69,58 @@ func main() {
6969 // get search query
7070 if p {
7171 rl = GetReadline ()
72- goto prompt
72+ } else {
73+ query = strings .Join (flag .Args (), " " )
7374 }
74- query = strings .Join (flag .Args (), " " )
7575
76- entrypoint:
77- if query == "" {
76+ for {
7877 if p {
79- fmt .Println ("No search query provided." )
80- goto prompt
78+ query , err = rl .ReadLine ()
79+ if err != nil {
80+ return // exit on EOF/SIGINT
81+ }
8182 }
82- flag .Usage ()
83- fmt .Println ()
84- log .Fatalln ("no query provided" )
85- }
8683
87- // play media from YT or display URL
88- if u {
89- v , err = GetVideoFromURL (query )
90- } else if i {
91- vs , err := GetSearchResults (query )
92- if err == nil {
93- v , err = GetVideoFromMenu (vs )
94- if v == BACK_FLAG {
95- goto prompt
84+ if query == "" {
85+ if p {
86+ fmt .Println ("No search query provided." )
87+ continue
9688 }
89+ flag .Usage ()
90+ fmt .Println ()
91+ log .Fatalln ("no query provided" )
9792 }
98- } else {
99- v , err = GetVideoFromSearch (query , n )
100- }
101- if err != nil {
102- log .Fatalln (err )
103- } else if v == nil {
104- return
105- } else if d {
106- fmt .Println (v .Id .URL ())
107- } else {
108- fmt .Println ("Playing:" , v )
109- err = v .Play (m )
110- }
111- if err != nil {
112- log .Fatalln (err )
113- }
11493
115- prompt:
116- if p {
117- query , err = rl .ReadLine ()
94+ // play media from YT or display URL
95+ if u {
96+ v , err = GetVideoFromURL (query )
97+ } else if i {
98+ vs , err := GetSearchResults (query )
99+ if err == nil {
100+ v , err = GetVideoFromMenu (vs )
101+ if v == BACK_FLAG {
102+ continue
103+ }
104+ }
105+ } else {
106+ v , err = GetVideoFromSearch (query , n )
107+ }
118108 if err != nil {
119- return // exit on EOF/SIGINT
109+ log .Fatalln (err )
110+ } else if v == nil {
111+ return
112+ } else if d {
113+ fmt .Println (v .Id .URL ())
114+ } else {
115+ fmt .Println ("Playing:" , v )
116+ err = v .Play (m )
117+ }
118+ if err != nil {
119+ log .Fatalln (err )
120+ }
121+ if ! p {
122+ break
120123 }
121- goto entrypoint
122124 }
123125}
124126
0 commit comments