Задать вопрос
@kedavr13

Как добавить в пакет golang.org/x/text/language Белорусский язык?

Столкнулся с проблемой. Нашел пакет для определения Tag по Region пакет, все работает отлично кроме Белорусского языка так как он по дефолту отсутствует в пакете language .
Даже если быть более точным он есть но он не объявлен в массиве тегов.64cd0a7cebbd1898301378.png64cd0a86230bb300993770.png64cd0a910e46a289207740.png

Как я могу дополнить Tag новым значением?
  • Вопрос задан
  • 102 просмотра
Подписаться 1 Средний 7 комментариев
Решения вопроса 1
@kedavr13 Автор вопроса
falconandy @falconandy
Можно форкнуть и исправить/расширить нужный пакет/пакеты как вам нужно. Затем в своем приложении заменить оригинальные пакеты на свои исправленные форки с помощью replace директивы в go.mod:
replace golang.org/x/net v1.2.3 => example.com/fork/net v1.4.5

replace (
    golang.org/x/net v1.2.3 => example.com/fork/net v1.4.5
    golang.org/x/net => example.com/fork/net v1.4.5
    golang.org/x/net v1.2.3 => ./fork/net
    golang.org/x/net => ./fork/net
)

Написано вчера
НравитсяОтветить
kedavr13 kedavr13 Автор вопроса
falconandy, Пакеты заменил, но что по итогу нужно поменять чтобы добавился Tag для Белоруссии
не совсем понятно. Так как добавил в пакетах на скринах но все равно не работает.
Написано 14 часов назад
НравитсяОтветить
falconandy @falconandy
kedavr13, с изменениями ниже base, conf := regionlang.Find("by") вроде работает:

Изменения в golang.org/x/net
Index: language/tags.go
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/language/tags.go b/language/tags.go
--- a/language/tags.go	(revision fb697c0580b4b6ab0a21ca17e64788b981fb6018)
+++ b/language/tags.go	(date 1691299509976)
@@ -142,4 +142,5 @@
 	SimplifiedChinese    Tag = Tag(compact.SimplifiedChinese)
 	TraditionalChinese   Tag = Tag(compact.TraditionalChinese)
 	Zulu                 Tag = Tag(compact.Zulu)
+	Belorusian           Tag = Tag(compact.Belorusian)
 )

Index: internal/language/compact/tags.go
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8

===================================================================
diff --git a/internal/language/compact/tags.go b/internal/language/compact/tags.go
--- a/internal/language/compact/tags.go	(revision fb697c0580b4b6ab0a21ca17e64788b981fb6018)
+++ b/internal/language/compact/tags.go	(date 1691299495704)
@@ -88,4 +88,5 @@
 	SimplifiedChinese    Tag = Tag{language: zhHansIndex, locale: zhHansIndex}
 	TraditionalChinese   Tag = Tag{language: zhHantIndex, locale: zhHantIndex}
 	Zulu                 Tag = Tag{language: zuIndex, locale: zuIndex}
+	Belorusian           Tag = Tag{language: beBYIndex, locale: beBYIndex}
 )


Изменения в github.com/modernice/go-regionlang
Index: find.go
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/find.go b/find.go
--- a/find.go	(revision edd88e394d22f289149b1b0a5b7fb7bfe13c01ef)
+++ b/find.go	(date 1691299614522)
@@ -168,4 +168,5 @@
 	language.SimplifiedChinese,
 	language.TraditionalChinese,
 	language.Zulu,
+	language.Belorusian,
 }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы