package task import ( "fmt" "os" "sort" "text/tabwriter" ) func printExistingTasksHelp() { tasks := tasksWithDesc() if len(tasks) == 0 { return } fmt.Println("Available tasks for this project:") // Format in tab-separated columns with a tab stop of 8. w := tabwriter.NewWriter(os.Stdout, 0, 8, 0, '\t', 0) for _, task := range tasks { fmt.Fprintln(w, fmt.Sprintf("- %s:\t%s", task, Tasks[task].Desc)) } w.Flush() } func tasksWithDesc() (tasks []string) { for name, task := range Tasks { if task.Desc != "" { tasks = append(tasks, name) } } sort.Strings(tasks) return }