code: func (s *Action) CompletionOpenBSDKsh(c *cli.Context, a *cli.App) error {
  	out := `
  PASS_LIST=$(gopass ls -f)
  set -A complete_gopass -- $PASS_LIST %s
  `
  
  	if a == nil {
  		return fmt.Errorf("can not parse command options")
  	}
  
  	var opts []string
  	for _, opt := range a.Commands {
  		opts = append(opts, opt.Name)
  		if len(opt.Aliases) > 0 {
  			opts = append(opts, strings.Join(opt.Aliases, " "))
  		}
  	}
  
  	fmt.Fprintf(stdout, out, strings.Join(opts, " "))
  	return nil
  }
docs: // CompletionOpenBSDKsh returns an OpenBSD ksh script used for auto completion