66 "flag"
77 "log"
88 "os"
9+ "path/filepath"
910 "sync"
1011 "text/template"
1112)
@@ -14,7 +15,8 @@ const (
1415 DefaultHost = `localhost:3927`
1516 DefaultScheme = `http`
1617 DefaultUrlPrefix = `/`
17- UsageTmpl = `Usage: {{.Exec}} [OPTIONS]
18+ UsageTmpl = `{{.Logo}}
19+ Usage: {{.Exec}} [OPTIONS]
1820
1921GoShare shares file and directory by HTTP or FTP protocol
2022
@@ -27,12 +29,12 @@ Options:
2729 -v, --version Print version information and quit
2830
2931Examples:
30- {{.Exec}} -host example.io -path /opt/share0/releases/
31- {{.Exec}} -host {{.Host}} -path /opt/share0/releases/
32- {{.Exec}} --host {{.Host}} --url-prefix /releases/ --path /opt/share0/releases/
33- {{.Exec}} --host={{.Host}} --url-prefix=/releases/ --path=/opt/share0/releases/
32+ {{.Exec}} -host example.io -path {{.ExamplePath}}
33+ {{.Exec}} -host {{.Host}} -path {{.ExamplePath}}
34+ {{.Exec}} --host {{.Host}} --url-prefix /{{.ExampleUrlPrefix}} --path {{.ExamplePath}}
35+ {{.Exec}} --host={{.Host}} --url-prefix=/{{.ExampleUrlPrefix}} --path={{.ExamplePath}}
3436
35- See more about {{.App}} at {{.AppLink }}
37+ See more about {{.App}} at {{.Link }}
3638`
3739)
3840
@@ -126,21 +128,27 @@ func (a *Argument) Usage() string {
126128 a .Parse ()
127129 tmpl := template .Must (template .New ("usage tmpl" ).Parse (UsageTmpl ))
128130 data := struct {
129- App string
130- AppLink string
131- Exec string
132- Host string
133- Path string
134- Scheme string
135- UrlPrefix string
131+ Logo string
132+ Exec string
133+ Host string
134+ Path string
135+ Scheme string
136+ UrlPrefix string
137+ ExamplePath string
138+ ExampleUrlPrefix string
139+ App string
140+ Link string
136141 }{
137- App : App ,
138- AppLink : AppLink ,
139- Exec : os .Args [0 ],
140- Host : DefaultHost ,
141- Path : DefaultPath ,
142- Scheme : DefaultScheme ,
143- UrlPrefix : DefaultUrlPrefix ,
142+ Logo : Logo ,
143+ Exec : os .Args [0 ],
144+ Host : DefaultHost ,
145+ Path : DefaultPath ,
146+ Scheme : DefaultScheme ,
147+ UrlPrefix : DefaultUrlPrefix ,
148+ ExamplePath : CurrentDirMust (),
149+ ExampleUrlPrefix : filepath .Base (CurrentDirMust ()),
150+ App : App ,
151+ Link : Link ,
144152 }
145153 buf := bytes.Buffer {}
146154 if err := tmpl .Execute (& buf , data ); err != nil {
0 commit comments