| package docopt |
| |
| import ( |
| "fmt" |
| "sort" |
| ) |
| |
| func ExampleParse() { |
| usage := `Usage: |
| config_example tcp [<host>] [--force] [--timeout=<seconds>] |
| config_example serial <port> [--baud=<rate>] [--timeout=<seconds>] |
| config_example -h | --help | --version` |
| // parse the command line `comfig_example tcp 127.0.0.1 --force` |
| argv := []string{"tcp", "127.0.0.1", "--force"} |
| arguments, _ := Parse(usage, argv, true, "0.1.1rc", false) |
| // sort the keys of the arguments map |
| var keys []string |
| for k := range arguments { |
| keys = append(keys, k) |
| } |
| sort.Strings(keys) |
| // print the argument keys and values |
| for _, k := range keys { |
| fmt.Printf("%9s %v\n", k, arguments[k]) |
| } |
| // output: |
| // --baud <nil> |
| // --force true |
| // --help false |
| // --timeout <nil> |
| // --version false |
| // -h false |
| // <host> 127.0.0.1 |
| // <port> <nil> |
| // serial false |
| // tcp true |
| } |