langs

package
v0.112.2 Latest Latest
Warning

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

Go to latest
Published: May 24, 2023 License: Apache-2.0 Imports: 10 Imported by: 89

Documentation

Overview

Package langs contains the language related types and function.

Index

Constants

This section is empty.

Variables

View Source
var DeprecationFunc = func(item, alternative string, err bool) {}

This is injected from hugolib to avoid cirular dependencies.

Functions

func DecodeConfig added in v0.112.0

func DecodeConfig(m map[string]any) (map[string]LanguageConfig, error)

func GetLocation added in v0.87.0

func GetLocation(l *Language) *time.Location

func GetTimeFormatter added in v0.97.0

func GetTimeFormatter(l *Language) htime.TimeFormatter

func GetTranslator added in v0.87.0

func GetTranslator(l *Language) locales.Translator

func SetParams added in v0.112.0

func SetParams(l *Language, params maps.Params)

Types

type Collator added in v0.97.0

type Collator struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func GetCollator added in v0.97.0

func GetCollator(l *Language) *Collator

func (*Collator) CompareStrings added in v0.97.0

func (c *Collator) CompareStrings(a, b string) int

CompareStrings compares a and b. It returns -1 if a < b, 1 if a > b and 0 if a == b. Note that the Collator is not thread safe, so you may want to acquire a lock on it before calling this method.

type Language

type Language struct {
	// The language code, e.g. "en" or "no".
	// This is currently only settable as the key in the language map in the config.
	Lang string

	// Fields from the language config.
	LanguageConfig
	// contains filtered or unexported fields
}

func NewLanguage

func NewLanguage(lang, defaultContentLanguage, timeZone string, languageConfig LanguageConfig) (*Language, error)

NewLanguage creates a new language.

func (*Language) Params

func (l *Language) Params() maps.Params

Params returns the language params. Note that this is the same as the Site.Params, but we keep it here for legacy reasons. Deprecated: Use the site.Params instead.

func (*Language) String

func (l *Language) String() string

type LanguageConfig added in v0.112.0

type LanguageConfig struct {
	// The language name, e.g. "English".
	LanguageName string

	// The language title. When set, this will
	// override site.Title for this language.
	Title string

	// The language direction, e.g. "ltr" or "rtl".
	LanguageDirection string

	// The language weight. When set to a non-zero value, this will
	// be the main sort criteria for the language.
	Weight int
}

LanguageConfig holds the configuration for a single language. This is what is read from the config file.

type Languages

type Languages []*Language

Languages is a sortable list of languages.

func (Languages) AsOrdinalSet added in v0.56.0

func (l Languages) AsOrdinalSet() map[string]int

func (Languages) AsSet added in v0.56.0

func (l Languages) AsSet() map[string]bool

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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