github.com/engineyard/workflow-cli@v2.21.6+incompatible/parser/shortcuts.go (about)

     1  package parser
     2  
     3  import (
     4  	"github.com/teamhephy/workflow-cli/cmd"
     5  	docopt "github.com/docopt/docopt-go"
     6  )
     7  
     8  // Shortcuts displays all relevant shortcuts for the CLI.
     9  func Shortcuts(argv []string, cmdr cmd.Commander) error {
    10  	usage := `
    11  Valid commands for shortcuts:
    12  
    13  shortcuts:list       list all relevant shortcuts for the CLI
    14  
    15  Use 'deis help [command]' to learn more.
    16  `
    17  
    18  	switch argv[0] {
    19  	case "shortcuts:list":
    20  		return shortcutsList(argv, cmdr)
    21  	default:
    22  		if printHelp(argv, usage) {
    23  			return nil
    24  		}
    25  
    26  		if argv[0] == "shortcuts" {
    27  			argv[0] = "shortcuts:list"
    28  			return shortcutsList(argv, cmdr)
    29  		}
    30  
    31  		PrintUsage(cmdr)
    32  		return nil
    33  	}
    34  }
    35  
    36  func shortcutsList(argv []string, cmdr cmd.Commander) error {
    37  	usage := `
    38  Lists all relevant shortcuts for the CLI
    39  
    40  Usage: deis shortcuts:list
    41  `
    42  
    43  	_, err := docopt.Parse(usage, argv, true, "", false, true)
    44  
    45  	if err != nil {
    46  		return err
    47  	}
    48  
    49  	return cmdr.ShortcutsList()
    50  }