diff options
Diffstat (limited to 'tour.go')
| -rw-r--r-- | tour.go | 35 |
1 files changed, 23 insertions, 12 deletions
@@ -64,7 +64,9 @@ func TourAdd(state *BrowserState, conf *Config, targets []string) error { if state.CurrentTour != &state.DefaultTour { return saveTours(state.NamedTours) } - return nil + + state.Modal = []byte(fmt.Sprintf("Added %d urls to the tour\n", len(newurls))) + return Print(state) } func TourAddNext(state *BrowserState, conf *Config, targets []string) error { @@ -86,7 +88,9 @@ func TourAddNext(state *BrowserState, conf *Config, targets []string) error { if state.CurrentTour != &state.DefaultTour { return saveTours(state.NamedTours) } - return nil + + state.Modal = []byte(fmt.Sprintf("Added %d urls to go next on the tour\n", len(newurls))) + return Print(state) } func TourShow(state *BrowserState) error { @@ -141,7 +145,9 @@ func TourClear(state *BrowserState) error { if state.CurrentTour != &state.DefaultTour { return saveTours(state.NamedTours) } - return nil + + state.Modal = []byte("Tour is cleared\n") + return Print(state) } func TourList(state *BrowserState) error { @@ -180,24 +186,29 @@ func TourGo(state *BrowserState, conf *Config, pos string) error { } func TourSelect(state *BrowserState, name string) error { - tour, err := findTour(state, name) - if err == nil { - state.CurrentTour = tour + tourName, tour, err := findTour(state, name) + if err != nil { + return err } - return err + state.CurrentTour = tour + + state.Modal = []byte(fmt.Sprintf("Tour %s is now active\n", tourName)) + return Print(state) } -func findTour(state *BrowserState, prefix string) (*Tour, error) { +func findTour(state *BrowserState, prefix string) (string, *Tour, error) { if prefix == "" { - return &state.DefaultTour, nil + return "", &state.DefaultTour, nil } found := 0 var value *Tour + var tourName string for name, tour := range state.NamedTours { if strings.HasPrefix(name, prefix) { found += 1 value = tour + tourName = name } } @@ -205,10 +216,10 @@ func findTour(state *BrowserState, prefix string) (*Tour, error) { case 0: tour := &Tour{} state.NamedTours[prefix] = tour - return tour, nil + return "", tour, nil case 1: - return value, nil + return tourName, value, nil default: - return nil, fmt.Errorf("too ambiguous - found %d matching tours", found) + return "", nil, fmt.Errorf("too ambiguous - found %d matching tours", found) } } |
