/* Copyright © 2021 NAME HERE */ package cmd import ( "os" "github.com/spf13/cobra" ) // rootCmd represents the base command when called without any subcommands var rootCmd = &cobra.Command{ Use: "diary", Short: "An engineer's diary", Long: `Keep track of your day with diary, for example: $ diary add "Issue when fixing bad data in prod" 1134 $ diary desc 1134 # this will get opened in your $EDITOR Added description to 1134: Per @coworker's suggestion, we decided to ... $ diary add "Meeting with @coworker" 1135 $ diary minutes 1135 # alias for desc. Opens in $EDITOR Added minutes to 1134: 01:05PM Attendees: @Joe, @Nagee, @Maryam 01:11PM Decided to ... `, // Uncomment the following line if your bare application // has an action associated with it: // Run: func(cmd *cobra.Command, args []string) { }, } // Execute adds all child commands to the root command and sets flags appropriately. // This is called by main.main(). It only needs to happen once to the rootCmd. func Execute() { err := rootCmd.Execute() if err != nil { os.Exit(1) } } func init() { cobra.OnInitialize(InitApp) // Here you will define your flags and configuration settings. // Cobra supports persistent flags, which, if defined here, // will be global for your application. // rootCmd.PersistentFlags().StringVar(&cfgFile, "config", "", "config file (default is $HOME/.diary.yaml)") // Cobra also supports local flags, which will only run // when this action is called directly. rootCmd.Flags().BoolP("toggle", "t", false, "Help message for toggle") }