igo95862 / dateparse

Переводит русский язык в time.Time. Часть таск-мессенджера https://tada.team

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Codecov coveragei build codecov

dateparse

Лёгкий способ превратить пользовательский ввод даты во что-то машинопонятное.

Пользователи такие затейники, чего только не вводят, но мы пытаемся всё понять и простить:

package main 

import (
    "time"
    "github.com/tada-team/dateparse"
)

func main() {
    date, message := dateparse.Parse("в следующий понедельник утром посмотреть код", nil)
    if date.IsZero() {
        panic("invalid date")
    }
    print("at:", date)
    print("do:", message)

    loc, err := time.LoadLocation("Europe/Moscow")
    if err != nil {
        panic(err)
    } 
    date, _ = dateparse.Parse("завтра", &dateparse.Opts{
        TodayEndHour: 20,
        Now:          time.Now().In(loc),
    })
    print(date)
}

About

Переводит русский язык в time.Time. Часть таск-мессенджера https://tada.team

License:The Unlicense


Languages

Language:Go 100.0%