Add russian dict and output RHVoice command
This commit is contained in:
167
dict/dict.go
Normal file
167
dict/dict.go
Normal file
@@ -0,0 +1,167 @@
|
||||
package dict
|
||||
|
||||
func WeekdayRussian(weekday string) string {
|
||||
// Карта для перевода дней недели
|
||||
weekdayRussian := map[string]string{
|
||||
"Sunday": "воскресенье",
|
||||
"Monday": "понедельник",
|
||||
"Tuesday": "вторник",
|
||||
"Wednesday": "среда",
|
||||
"Thursday": "четверг",
|
||||
"Friday": "пятница",
|
||||
"Saturday": "суббота",
|
||||
}
|
||||
return weekdayRussian[weekday]
|
||||
}
|
||||
|
||||
func MonthRussian(month string) string {
|
||||
monthRussian := map[string]string{
|
||||
"January": "января",
|
||||
"February": "февраля",
|
||||
"March": "марта",
|
||||
"April": "Апреля",
|
||||
"May": "мая",
|
||||
"June": "июня",
|
||||
"July": "июля",
|
||||
"August": "августа",
|
||||
"September": "сентября",
|
||||
"October": "октября",
|
||||
"November": "ноября",
|
||||
"December": "декабря",
|
||||
}
|
||||
return monthRussian[month]
|
||||
}
|
||||
|
||||
func MinuteRussian(minute int) string {
|
||||
minutes := []string{
|
||||
"ноль минут",
|
||||
"одна минута",
|
||||
"две минуты",
|
||||
"три минуты",
|
||||
"четыре минуты",
|
||||
"пять минут",
|
||||
"шесть минут",
|
||||
"семь минут",
|
||||
"восемь минут",
|
||||
"девять минут",
|
||||
"десять минут",
|
||||
"одиннадцать минут",
|
||||
"двенадцать минут",
|
||||
"тринадцать минут",
|
||||
"четырнадцать минут",
|
||||
"пятнадцать минут",
|
||||
"шестнадцать минут",
|
||||
"семнадцать минут",
|
||||
"восемнадцать минут",
|
||||
"девятнадцать минут",
|
||||
"двадцать минут",
|
||||
"двадцать одна минута",
|
||||
"двадцать две минуты",
|
||||
"двадцать три минуты",
|
||||
"двадцать четыре минуты",
|
||||
"двадцать пять минут",
|
||||
"двадцать шесть минут",
|
||||
"двадцать семь минут",
|
||||
"двадцать восемь минут",
|
||||
"двадцать девять минут",
|
||||
"тридцать минут",
|
||||
"тридцать одна минута",
|
||||
"тридцать две минуты",
|
||||
"тридцать три минуты",
|
||||
"тридцать четыре минуты",
|
||||
"тридцать пять минут",
|
||||
"тридцать шесть минут",
|
||||
"тридцать семь минут",
|
||||
"тридцать восемь минут",
|
||||
"тридцать девять минут",
|
||||
"сорок минут",
|
||||
"сорок одна минута",
|
||||
"сорок две минуты",
|
||||
"сорок три минуты",
|
||||
"сорок четыре минуты",
|
||||
"сорок пять минут",
|
||||
"сорок шесть минут",
|
||||
"сорок семь минут",
|
||||
"сорок восемь минут",
|
||||
"сорок девять минут",
|
||||
"пятьдесят минут",
|
||||
"пятьдесят одна минута",
|
||||
"пятьдесят две минуты",
|
||||
"пятьдесят три минуты",
|
||||
"пятьдесят четыре минуты",
|
||||
"пятьдесят пять минут",
|
||||
"пятьдесят шесть минут",
|
||||
"пятьдесят семь минут",
|
||||
"пятьдесят восемь минут",
|
||||
"пятьдесят девять минут",
|
||||
}
|
||||
return minutes[minute]
|
||||
}
|
||||
|
||||
func HourRussian(hour int) string {
|
||||
hours := []string{
|
||||
"ноль часов",
|
||||
"один час",
|
||||
"два часа",
|
||||
"три часа",
|
||||
"четыре часа",
|
||||
"пять часов",
|
||||
"шесть часов",
|
||||
"семь часов",
|
||||
"восемь часов",
|
||||
"девять часов",
|
||||
"десять часов",
|
||||
"одиннадцать часов",
|
||||
"двенадцать часов",
|
||||
"тринадцать часов",
|
||||
"четы*рнадцать часов",
|
||||
"пятнадцать часов",
|
||||
"шестнадцать часов",
|
||||
"семнадцать часов",
|
||||
"восемнадцать часов",
|
||||
"девятнадцать часов",
|
||||
"двадцать часов",
|
||||
"двадцать один час",
|
||||
"двадцать два часа",
|
||||
"двадцать три часа",
|
||||
}
|
||||
return hours[hour]
|
||||
}
|
||||
|
||||
func DayRussian(day int) string {
|
||||
days := []string{
|
||||
"ноль",
|
||||
"первое",
|
||||
"второе",
|
||||
"третье",
|
||||
"четвертое",
|
||||
"пятое",
|
||||
"шестое",
|
||||
"седьмое",
|
||||
"восьмое",
|
||||
"девятое",
|
||||
"десятое",
|
||||
"одиннадцатое",
|
||||
"двенадцатое",
|
||||
"тринадцатое",
|
||||
"четырнадцатое",
|
||||
"пятнадцатое",
|
||||
"шестнадцатое",
|
||||
"семнадцатое",
|
||||
"восемнадцатое",
|
||||
"девятнадцатое",
|
||||
"двадцатое",
|
||||
"двадцать первое",
|
||||
"двадцать второе",
|
||||
"двадцать третье",
|
||||
"двадцать четвертое",
|
||||
"двадцать пятое",
|
||||
"двадцать шестое",
|
||||
"двадцать седьмое",
|
||||
"двадцать восьмое",
|
||||
"двадцать девятое",
|
||||
"тридцатое",
|
||||
"тридцать первое",
|
||||
}
|
||||
return days[day]
|
||||
}
|
||||
46
main.go
46
main.go
@@ -2,41 +2,27 @@ package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"goclock/dict"
|
||||
"log"
|
||||
"os/exec"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// Карта для перевода дней недели
|
||||
weekdayRussian := map[time.Weekday]string{
|
||||
time.Sunday: "Воскресенье",
|
||||
time.Monday: "Понедельник",
|
||||
time.Tuesday: "Вторник",
|
||||
time.Wednesday: "Среда",
|
||||
time.Thursday: "Четверг",
|
||||
time.Friday: "Пятница",
|
||||
time.Saturday: "Суббота",
|
||||
}
|
||||
|
||||
monthRussian := map[time.Month]string{
|
||||
time.January: "Январь",
|
||||
time.February: "Февраль",
|
||||
time.March: "Март",
|
||||
time.April: "Апрель",
|
||||
time.May: "Май",
|
||||
time.June: "Июнь",
|
||||
time.July: "Июль",
|
||||
time.August: "Август",
|
||||
time.September: "Сентябрь",
|
||||
time.October: "Октябрь",
|
||||
time.November: "Ноябрь",
|
||||
time.December: "Декабрь",
|
||||
}
|
||||
|
||||
now := time.Now()
|
||||
|
||||
weekday := now.Weekday()
|
||||
month := now.Month()
|
||||
day := now.Day()
|
||||
month := now.Month().String()
|
||||
weekday := now.Weekday().String()
|
||||
hour := now.Hour()
|
||||
minute := now.Minute()
|
||||
|
||||
fmt.Println(weekdayRussian[weekday])
|
||||
fmt.Println(monthRussian[month])
|
||||
timeStr := dict.WeekdayRussian(weekday) + " " + dict.DayRussian(day) + " " + dict.MonthRussian(month) + " " + dict.HourRussian(hour) + " " + dict.MinuteRussian(minute)
|
||||
|
||||
command := exec.Command("sh", "-c", fmt.Sprintf("echo '%s' | RHVoice-test -p Anna", timeStr))
|
||||
|
||||
err := command.Run()
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user