Compare commits

..

No commits in common. "75e0ee2ba3a1ce5842ee0d855e3664cc68869855" and "2b9bc6f09f362395eb2701b23f30569c05c02219" have entirely different histories.

4 changed files with 9 additions and 37 deletions

View File

@ -5,8 +5,6 @@ import (
"os"
"path/filepath"
"strings"
"errors"
"io/fs"
"github.com/alexflint/go-arg"
@ -20,8 +18,6 @@ type Arguments struct {
type ArgPack struct {
Input string `arg:"positional,required"`
Force bool `arg:"--force"`
Output string `arg:"--output,-o"`
}
type ArgUnPack struct {
@ -77,17 +73,9 @@ func pack(args *ArgPack) error {
// TODO: put this in the json file?
if args.Output != "" {
sb.Filename = args.Output
}
// outname := args.Input[:len(args.Input)-len(".json")]+".studybox"
if exists(sb.Filename) && !args.Force {
return fmt.Errorf("%s already exists or cannot be written to", sb.Filename)
}
fmt.Println(sb.Filename)
err = sb.Write(sb.Filename)
outname := args.Input[:len(args.Input)-len(".json")]+".studybox"
fmt.Println(outname)
err = sb.Write(outname)
if err != nil {
return err
}
@ -129,19 +117,6 @@ func unpack(args *ArgUnPack) error {
return nil
}
func exists(filename string) bool {
_, err := os.Stat(filename)
if err == nil {
return true
}
if errors.Is(err, fs.ErrNotExist) {
return false
}
return true
}
//func main_old() {
// if len(os.Args) < 3 {
// fmt.Println("Missing command")

View File

@ -16,7 +16,7 @@ func Import(filename string) (*StudyBox, error) {
return nil, err
}
sbj := &StudyBoxJson{ Filename: filename }
sbj := &StudyBoxJson{}
err = json.Unmarshal(raw, sbj)
if err != nil {
return nil, fmt.Errorf("Unable to unmarshal json: %v", err)
@ -28,7 +28,6 @@ func Import(filename string) (*StudyBox, error) {
}
sb := &StudyBox{
Filename: sbj.Filename,
Data: &TapeData{Pages: []*Page{}},
Audio: audio,
}

View File

@ -8,7 +8,6 @@ import (
)
type StudyBox struct {
Filename string
Data *TapeData
Audio *TapeAudio
}

View File

@ -18,7 +18,7 @@ func (sb *StudyBox) Write(filename string) error {
fmt.Println("Writing to " + filename)
return os.WriteFile(filename, raw, 0666)
return os.WriteFile(filename, raw, 0777)
}
func (sb *StudyBox) rawBytes() ([]byte, error) {
@ -56,9 +56,7 @@ func (sb *StudyBox) rawBytes() ([]byte, error) {
return nil, err
}
// This length is the full size of the chunk, including the format from the
// switch below.
err = binary.Write(buffer, binary.LittleEndian, uint32(len(sb.Audio.Data)+4))
err = binary.Write(buffer, binary.LittleEndian, uint32(len(sb.Audio.Data)))
if err != nil {
return nil, err
}
@ -83,7 +81,8 @@ func (sb *StudyBox) rawBytes() ([]byte, error) {
return nil, err
}
_, err = buffer.Write(sb.Audio.Data[0 : uint32(len(sb.Audio.Data))])
// For some reason there's 4 extra bytes. no idea why. chomp them off.
_, err = buffer.Write(sb.Audio.Data[0 : uint32(len(sb.Audio.Data))-4])
if err != nil {
return nil, err
}