diff --git a/cmd/add.go b/cmd/add.go new file mode 100644 index 0000000..3be9a61 --- /dev/null +++ b/cmd/add.go @@ -0,0 +1,49 @@ +// Copyright © 2016 Jip J. Dekker +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cmd + +import ( + "log" + + "github.com/jjdekker/ponder/helpers" + "github.com/jjdekker/ponder/settings" + "github.com/spf13/cobra" +) + +// addCmd represents the add command +var addCmd = &cobra.Command{ + Use: "add [file]", + Short: "Add pdf file to a book", + Long: `Add creates a json file with all options regarding a sheet music file in PDF format. +The information saved in the json file will be used when compiling the songbook.`, + Run: func(cmd *cobra.Command, args []string) { + var ( + path string + err error + ) + switch len(args) { + case 1: + path, err = helpers.CleanPath(args[0]) + helpers.Check(err, "Unable to ") + default: + log.Fatal("the add command needs exactly 1 parameter") + } + settings.CreateScore(path) + }, +} + +func init() { + RootCmd.AddCommand(addCmd) +} diff --git a/settings/score.go b/settings/score.go index 0e676be..b56ae03 100644 --- a/settings/score.go +++ b/settings/score.go @@ -46,3 +46,7 @@ func FromJSON(path string) (*Score, error) { return &s, nil } + +func CreateScore(path string) { + +}