paths

package
v0.12.0-rc9 Latest Latest
Warning

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

Go to latest
Published: Nov 30, 2021 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FilePathSeparator = string(filepath.Separator)

Functions

func AbsPathify

func AbsPathify(workingDir, inPath string) string

AbsPathify creates an absolute path if given a working dir and a relative path. If already absolute, the path is just cleaned.

Types

type BaseURL

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

A BaseURL in Hugo is normally on the form scheme://path, but the form scheme: is also valid (mailto:hugo@rules.com).

func (BaseURL) HostURL

func (b BaseURL) HostURL() string

HostURL returns the URL to the host root without any path elements.

func (BaseURL) Path

func (b BaseURL) Path() string

func (BaseURL) String

func (b BaseURL) String() string

func (BaseURL) URL

func (b BaseURL) URL() *url.URL

URL returns a copy of the internal URL. The copy can be safely used and modified.

func (BaseURL) WithProtocol

func (b BaseURL) WithProtocol(protocol string) (string, error)

WithProtocol returns the BaseURL prefixed with the given protocol. The Protocol is normally of the form "scheme://", i.e. "webcal://".

type Paths

type Paths struct {
	Fs  *hugofs.Fs
	Cfg config.Provider

	BaseURL

	// If the baseURL contains a base path, e.g. https://example.com/docs, then "/docs" will be the BasePath.
	BasePath string

	// Directories
	// TODO(bep) when we have trimmed down most of the dirs usage outside of this package, make
	// these into an interface.
	ThemesDir  string
	WorkingDir string

	// Directories to store Resource related artifacts.
	AbsResourcesDir string

	AbsPublishDir string

	// pagination path handling
	PaginatePath string

	PublishDir string

	// When in multihost mode, this returns a list of base paths below PublishDir
	// for each language.
	MultihostTargetBasePaths []string

	DisablePathToLower bool
	RemovePathAccents  bool
	UglyURLs           bool
	CanonifyURLs       bool

	Language              *langs.Language
	Languages             langs.Languages
	LanguagesDefaultFirst langs.Languages

	DefaultContentLanguage string

	AllModules    modules.Modules
	ModulesClient *modules.Client
	// contains filtered or unexported fields
}

func New

func New(fs *hugofs.Fs, cfg config.Provider) (*Paths, error)

func (*Paths) AbsPathify

func (p *Paths) AbsPathify(inPath string) string

AbsPathify creates an absolute path if given a relative path. If already absolute, the path is just cleaned.

func (*Paths) GetBasePath

func (p *Paths) GetBasePath(isRelativeURL bool) string

GetBasePath returns any path element in baseURL if needed.

func (*Paths) GetLangSubDir

func (p *Paths) GetLangSubDir(lang string) string

GetLangSubDir returns the given language's subdir if needed.

func (*Paths) GetLanguagePrefix

func (p *Paths) GetLanguagePrefix() string

func (*Paths) GetTargetLanguageBasePath

func (p *Paths) GetTargetLanguageBasePath() string

func (*Paths) GetURLLanguageBasePath

func (p *Paths) GetURLLanguageBasePath() string

func (*Paths) Lang

func (p *Paths) Lang() string

func (*Paths) RelPathify

func (p *Paths) RelPathify(filename string) string

RelPathify trims any WorkingDir prefix from the given filename. If the filename is not considered to be absolute, the path is just cleaned.

Jump to

Keyboard shortcuts

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