Skip to content

Latest commit

 

History

History
59 lines (46 loc) · 3.13 KB

README.md

File metadata and controls

59 lines (46 loc) · 3.13 KB

rtime

Go Reference

Пакет Rtime -- обёртка для time.Time, предназначенная для форматирования дат на русском языке. Расширяет функцию Format, добавляя дополнительные плейсхолдеры.

Пример использования

Создание

t := rtime.Now()
t := rtime.Date(2023, 03, 1, 02, 48, 05, 0, time.UTC)
t := rtime.RTime{time.Now()}

Форматирование

t.Format(rtime.GOST2016Word) // 1 марта 2023 г.
t.Format(rtime.GOST2016Numeric) // 01.03.2023
t.Format("2 января 2006 г., понедельник") // 1 марта 2023 г., среда
t.Format("ПН/Mon, 2 Янв/Jan 2006") // "СР/Wed, 1 Мар/Mar 2023

Список плейсхолдеров

Плейсхолдер Значения
Январь Январь Февраль Март Апрель Май Июнь Июль Август Сентябрь Октябрь Ноябрь Декабрь
январь январь февраль март апрель май июнь июль август сентябрь октябрь ноябрь декабрь
Янв Янв Фев Мар Апр Май Июнь Июль Авг Сен Окт Ноя Дек
янв янв фев мар апр май июнь июль авг сен окт ноя дек
Января Января Февраля Марта Апреля Мая Июня Июля Августа Сентября Октября Ноября Декабря
января января февраля марта апреля мая июня июля августа сентября октября ноября декабря
Понедельник Понедельник Вторник Среда Четверг Пятница Суббота Воскресенье
понедельник понедельник вторник среда четверг пятница суббота воскресенье
ПН ПН ВТ СР ЧТ ПТ СБ ВС
пн пн вт ср чт пт сб вс

Замена значений

При необходимости можно заменить сокращённые имена дней недели и месяцев на необходимые, например:

_ = rtime.SetWeekDayLowerNames([]string{
		"пон",
		"вто",
		"сре",
		"чет",
		"пят",
		"суб",
		"вос",
})

t := rtime.Date(2023, 03, 1, 02, 48, 05, 0, time.UTC)
t.Format("пн, 01 января 2006") // сре, 03 марта 2023