ebook

package
v0.9.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2019 License: MIT Imports: 10 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AskForISBN added in v0.9.0

func AskForISBN() (string, error)

AskForISBN when not found in epub

func CleanCategory added in v0.9.0

func CleanCategory(category string) (string, error)

func CleanDescription added in v0.9.0

func CleanDescription(desc string) string

func CleanISBN

func CleanISBN(full string) (string, error)

CleanISBN from a string

func CleanLanguage added in v0.9.0

func CleanLanguage(language string) string

func CleanType added in v0.9.0

func CleanType(typ string) (string, error)

Types

type Metadata

type Metadata struct {
	BookTitle     string   `json:"title" xml:"title"`
	ImageURL      string   `json:"image_url" xml:"image_url"`
	NumPages      string   `json:"num_pages" xml:"num_pages"`
	Authors       []string `json:"authors" xml:"authors>author>name"`
	ISBN          string   `json:"isbn" xml:"isbn13"`
	OriginalYear  string   `json:"year" xml:"work>original_publication_year"`
	EditionYear   string   `json:"edition_year" xml:"publication_year"`
	Description   string   `json:"description" xml:"description"`
	Series        Series   `json:"series" xml:"series_works>series_work"`
	AverageRating string   `json:"average_rating" xml:"average_rating"`
	Tags          Tags     `json:"tags" xml:"popular_shelves>shelf"`
	Category      string   `json:"category"`
	Type          string   `json:"type"`
	Genre         string   `json:"genre"`
	Language      string   `json:"language" xml:"language_code"`
	Publisher     string   `json:"publisher" xml:"publisher"`
}

Metadata contains all of the known book metadata.

type Series

type Series []SingleSeries

Series can track a series and the position of an epub.

func (*Series) AddFromString added in v0.9.0

func (s *Series) AddFromString(candidate string) (bool, error)

AddFromString a series, checking for correct form.

func (*Series) Has added in v0.9.0

func (s *Series) Has(seriesName string) (hasSeries bool, index int, position string)

Has checks if epub is part of a series

func (*Series) HasAny added in v0.9.0

func (s *Series) HasAny() bool

HasAny checks if epub is part of any series

func (Series) String added in v0.9.0

func (s Series) String() string

String outputs a series info.

type SingleSeries

type SingleSeries struct {
	Name     string `json:"name" xml:"series>title"`
	Position string `json:"index" xml:"user_position"`
}

SingleSeries holds the name and index of a series a Book is part of.

func (SingleSeries) String added in v0.9.0

func (s SingleSeries) String() string

String outputs a single series info.

type Tag

type Tag struct {
	Name string `json:"name" xml:"name,attr"`
}

Tag holds the name of a tag.

type Tags

type Tags []Tag

Tags can track a book's Tags

func (*Tags) Add added in v0.9.0

func (t *Tags) Add(tags ...Tag) (added bool)

Add Tags to the list

func (*Tags) AddFromNames added in v0.9.0

func (t *Tags) AddFromNames(tags ...string) bool

AddFromNames Tags to the list, from []string

func (*Tags) Clean added in v0.9.0

func (t *Tags) Clean()

Clean a list of tags.

func (*Tags) Has added in v0.9.0

func (t *Tags) Has(o Tag) (isIn bool, index int)

Has finds out if a Tag is already in list.

func (*Tags) HasAny added in v0.9.0

func (t *Tags) HasAny() bool

HasAny checks if epub is part of any series

func (*Tags) Remove added in v0.9.0

func (t *Tags) Remove(tags ...Tag) (removed bool)

Remove Tags from the list

func (*Tags) RemoveFromNames added in v0.9.0

func (t *Tags) RemoveFromNames(tags ...string) bool

RemoveFromNames Tags to the list, from []string

func (*Tags) String added in v0.9.0

func (t *Tags) String() string

String give a string representation of Tags.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL