source

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Nov 13, 2020 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type File

type File interface {
	FileWithoutOverlap
	// contains filtered or unexported methods
}

File represents a source file. This is a temporary construct until we resolve page.Page conflicts. TODO(bep) remove this construct once we have resolved page deprecations

type FileInfo

type FileInfo struct {
	// contains filtered or unexported fields
}

FileInfo describes a source file.

func NewTestFile

func NewTestFile(filename string) *FileInfo

NewTestFile creates a partially filled File used in unit tests. TODO(bep) improve this package

func (*FileInfo) BaseFileName

func (fi *FileInfo) BaseFileName() string

BaseFileName returns a file's name without extension (ie. "page.sv").

func (*FileInfo) ContentBaseName

func (fi *FileInfo) ContentBaseName() string

ContentBaseName is a either TranslationBaseName or name of containing folder if file is a leaf bundle.

func (*FileInfo) Dir

func (fi *FileInfo) Dir() string

Dir gets the name of the directory that contains this file. The directory is relative to the content root.

func (*FileInfo) Ext

func (fi *FileInfo) Ext() string

Ext returns a file's extension without the leading period (ie. "md").

func (*FileInfo) Extension

func (fi *FileInfo) Extension() string

Extension is an alias to Ext().

func (*FileInfo) FileInfo

func (fi *FileInfo) FileInfo() hugofs.FileMetaInfo

FileInfo returns a file's underlying os.FileInfo.

func (*FileInfo) Filename

func (fi *FileInfo) Filename() string

Filename returns a file's absolute path and filename on disk.

func (*FileInfo) IsZero

func (fi *FileInfo) IsZero() bool

func (*FileInfo) Lang

func (fi *FileInfo) Lang() string

Lang returns a file's language (ie. "sv").

func (*FileInfo) LogicalName

func (fi *FileInfo) LogicalName() string

LogicalName returns a file's name and extension (ie. "page.sv.md").

func (*FileInfo) Open

func (fi *FileInfo) Open() (hugio.ReadSeekCloser, error)

Open implements ReadableFile.

func (*FileInfo) Path

func (fi *FileInfo) Path() string

Path gets the relative path including file name and extension. The directory is relative to the content root.

func (*FileInfo) Section

func (fi *FileInfo) Section() string

Section returns a file's section.

func (*FileInfo) String

func (fi *FileInfo) String() string

func (*FileInfo) TranslationBaseName

func (fi *FileInfo) TranslationBaseName() string

TranslationBaseName returns a file's translation base name without the language segement (ie. "page").

func (*FileInfo) UniqueID

func (fi *FileInfo) UniqueID() string

UniqueID returns a file's unique, MD5 hash identifier.

type FileWithoutOverlap

type FileWithoutOverlap interface {

	// Filename gets the full path and filename to the file.
	Filename() string

	// Dir gets the name of the directory that contains this file.
	// The directory is relative to the content root.
	Dir() string

	// Extension gets the file extension, i.e "myblogpost.md" will return "md".
	Extension() string

	// Ext is an alias for Extension.
	Ext() string // Hmm... Deprecate Extension

	// LogicalName is filename and extension of the file.
	LogicalName() string

	// BaseFileName is a filename without extension.
	BaseFileName() string

	// TranslationBaseName is a filename with no extension,
	// not even the optional language extension part.
	TranslationBaseName() string

	// ContentBaseName is a either TranslationBaseName or name of containing folder
	// if file is a leaf bundle.
	ContentBaseName() string

	// UniqueID is the MD5 hash of the file's path and is for most practical applications,
	// Hugo content files being one of them, considered to be unique.
	UniqueID() string

	FileInfo() hugofs.FileMetaInfo
}

type Filesystem

type Filesystem struct {
	Base string

	SourceSpec
	// contains filtered or unexported fields
}

Filesystem represents a source filesystem.

func (*Filesystem) Files

func (f *Filesystem) Files() ([]File, error)

Files returns a slice of readable files.

type SourceSpec

type SourceSpec struct {
	*helpers.PathSpec

	SourceFs afero.Fs

	Languages              map[string]interface{}
	DefaultContentLanguage string
	DisabledLanguages      map[string]bool
	// contains filtered or unexported fields
}

SourceSpec abstracts language-specific file creation. TODO(bep) rename to Spec

func NewSourceSpec

func NewSourceSpec(ps *helpers.PathSpec, fs afero.Fs) *SourceSpec

NewSourceSpec initializes SourceSpec using languages the given filesystem and PathSpec.

func (*SourceSpec) IgnoreFile

func (s *SourceSpec) IgnoreFile(filename string) bool

IgnoreFile returns whether a given file should be ignored.

func (*SourceSpec) IsRegularSourceFile

func (s *SourceSpec) IsRegularSourceFile(filename string) (bool, error)

IsRegularSourceFile returns whether filename represents a regular file in the source filesystem.

func (*SourceSpec) NewFileInfo

func (sp *SourceSpec) NewFileInfo(fi hugofs.FileMetaInfo) (*FileInfo, error)

func (*SourceSpec) NewFileInfoFrom

func (sp *SourceSpec) NewFileInfoFrom(path, filename string) (*FileInfo, error)

func (SourceSpec) NewFilesystem

func (sp SourceSpec) NewFilesystem(base string) *Filesystem

NewFilesystem returns a new filesytem for a given source spec.

func (SourceSpec) NewFilesystemFromFileMetaInfo

func (sp SourceSpec) NewFilesystemFromFileMetaInfo(fi hugofs.FileMetaInfo) *Filesystem

Jump to

Keyboard shortcuts

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