Esempio n. 1
0
var kindlePathCmd = &cobra.Command{
	Use:   "kindle:path",
	Short: "Import from Kindle's vocabulary",
	Run: func(cmd *cobra.Command, args []string) {

		const vocabularySubPath string = "system/vocabulary/vocab.db"

		kindleMountPoint = strings.TrimSpace(kindleMountPoint)

		if kindleMountPoint == "" {
			log.Fatalln("Path to Kindle should not be empty")
		}

		database := path.Join(kindleMountPoint, vocabularySubPath)
		if _, err := os.Stat(database); os.IsNotExist(err) {
			log.Fatalln("Cannot find vocabulary in " + database)
		}

		words := kindle.GetWords(database)
		for _, word := range words {
			lingualeo.AddWord(word.Word)
			log.Println("Imported: " + word.Word)
		}
	},
}

func init() {
	importCmd.AddCommand(kindlePathCmd)
	kindlePathCmd.Flags().StringVarP(&kindleMountPoint, "path", "p", "", "Path to Kindle")
}
package cmd

import (
	"github.com/igrybkov/leosync/src/kindle"
	"github.com/igrybkov/leosync/src/lingualeo"
	"github.com/spf13/cobra"
	"log"
)

var kindleDatabaseCmd = &cobra.Command{
	Use:   "kindle:database",
	Short: "Import from path to Kindle root",
	Run: func(cmd *cobra.Command, args []string) {
		words := kindle.GetWords(filePath)
		for _, word := range words {
			lingualeo.AddWord(word.Word)
			log.Println("Imported: " + word.Word)
		}
	},
}

func init() {
	importCmd.AddCommand(kindleDatabaseCmd)
	kindleDatabaseCmd.Flags().StringVarP(&filePath, "file", "f", "", "File path")
}