Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
65e9fdea
Unverified
Commit
65e9fdea
authored
Dec 31, 2022
by
Ivan
Committed by
GitHub
Dec 31, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: add russian locale (#879)
parent
2b2792de
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
263 additions
and
2 deletions
+263
-2
user_setting.go
api/user_setting.go
+1
-1
LocaleSelect.tsx
web/src/components/LocaleSelect.tsx
+1
-0
i18n.ts
web/src/i18n.ts
+4
-0
ru.json
web/src/locales/ru.json
+256
-0
i18n.d.ts
web/src/types/i18n.d.ts
+1
-1
No files found.
api/user_setting.go
View file @
65e9fdea
...
@@ -36,7 +36,7 @@ func (key UserSettingKey) String() string {
...
@@ -36,7 +36,7 @@ func (key UserSettingKey) String() string {
}
}
var
(
var
(
UserSettingLocaleValue
=
[]
string
{
"en"
,
"zh"
,
"vi"
,
"fr"
,
"nl"
,
"sv"
,
"de"
,
"es"
,
"uk"
}
UserSettingLocaleValue
=
[]
string
{
"en"
,
"zh"
,
"vi"
,
"fr"
,
"nl"
,
"sv"
,
"de"
,
"es"
,
"uk"
,
"ru"
}
UserSettingAppearanceValue
=
[]
string
{
"system"
,
"light"
,
"dark"
}
UserSettingAppearanceValue
=
[]
string
{
"system"
,
"light"
,
"dark"
}
UserSettingMemoVisibilityValue
=
[]
Visibility
{
Private
,
Protected
,
Public
}
UserSettingMemoVisibilityValue
=
[]
Visibility
{
Private
,
Protected
,
Public
}
UserSettingMemoDisplayTsOptionKeyValue
=
[]
string
{
"created_ts"
,
"updated_ts"
}
UserSettingMemoDisplayTsOptionKeyValue
=
[]
string
{
"created_ts"
,
"updated_ts"
}
...
...
web/src/components/LocaleSelect.tsx
View file @
65e9fdea
...
@@ -31,6 +31,7 @@ const LocaleSelect: FC<Props> = (props: Props) => {
...
@@ -31,6 +31,7 @@ const LocaleSelect: FC<Props> = (props: Props) => {
<
Option
value=
"de"
>
German
</
Option
>
<
Option
value=
"de"
>
German
</
Option
>
<
Option
value=
"es"
>
Español
</
Option
>
<
Option
value=
"es"
>
Español
</
Option
>
<
Option
value=
"uk"
>
Українська
</
Option
>
<
Option
value=
"uk"
>
Українська
</
Option
>
<
Option
value=
"ru"
>
Русский
</
Option
>
</
Select
>
</
Select
>
);
);
};
};
...
...
web/src/i18n.ts
View file @
65e9fdea
...
@@ -9,6 +9,7 @@ import svLocale from "./locales/sv.json";
...
@@ -9,6 +9,7 @@ import svLocale from "./locales/sv.json";
import
deLocale
from
"./locales/de.json"
;
import
deLocale
from
"./locales/de.json"
;
import
esLocale
from
"./locales/es.json"
;
import
esLocale
from
"./locales/es.json"
;
import
ukLocale
from
"./locales/uk.json"
;
import
ukLocale
from
"./locales/uk.json"
;
import
ruLocale
from
"./locales/ru.json"
;
i18n
.
use
(
initReactI18next
).
init
({
i18n
.
use
(
initReactI18next
).
init
({
resources
:
{
resources
:
{
...
@@ -39,6 +40,9 @@ i18n.use(initReactI18next).init({
...
@@ -39,6 +40,9 @@ i18n.use(initReactI18next).init({
uk
:
{
uk
:
{
translation
:
ukLocale
,
translation
:
ukLocale
,
},
},
ru
:
{
translation
:
ruLocale
,
},
},
},
lng
:
"nl"
,
lng
:
"nl"
,
fallbackLng
:
"en"
,
fallbackLng
:
"en"
,
...
...
web/src/locales/ru.json
0 → 100644
View file @
65e9fdea
{
"common"
:
{
"about"
:
"Про Memos"
,
"email"
:
"Эл. почта"
,
"password"
:
"Пароль"
,
"repeat-password-short"
:
"Повторить"
,
"repeat-password"
:
"Повторить пароль"
,
"new-password"
:
"Новый пароль"
,
"repeat-new-password"
:
"Повторить новый пароль"
,
"username"
:
"Имя пользователя"
,
"nickname"
:
"Псевдоним"
,
"save"
:
"Сохранить"
,
"close"
:
"Закрыть"
,
"cancel"
:
"Отменить"
,
"create"
:
"Создать"
,
"change"
:
"Заменить"
,
"confirm"
:
"Подтвердить"
,
"reset"
:
"Стереть"
,
"language"
:
"Язык"
,
"version"
:
"Версия"
,
"pin"
:
"Закрепить"
,
"unpin"
:
"Открепить"
,
"edit"
:
"Редактировать"
,
"restore"
:
"Восстановить"
,
"delete"
:
"Удалить"
,
"null"
:
"Пусто"
,
"share"
:
"Поделиться"
,
"archive"
:
"Архивировать"
,
"basic"
:
"Базовые"
,
"admin"
:
"Администратор"
,
"explore"
:
"Больше"
,
"sign-in"
:
"Войти"
,
"sign-up"
:
"Зарегистрироваться"
,
"sign-out"
:
"Выйти"
,
"back-to-home"
:
"Вернуться на главную"
,
"type"
:
"Тип"
,
"shortcuts"
:
"Ярлыки"
,
"title"
:
"Заголовок"
,
"filter"
:
"Фильтр"
,
"tags"
:
"Теги"
,
"yourself"
:
"Вы"
,
"archived-at"
:
"Архив"
,
"changed"
:
"изменено"
,
"update-on"
:
"Обновлено"
,
"fold"
:
"Свернуть"
,
"expand"
:
"Развернуть"
,
"image"
:
"Изображение"
,
"link"
:
"Ссылка"
,
"vacuum"
:
"Сжать"
,
"select"
:
"Выбрать"
},
"slogan"
:
"Self-hosted платформа с открытым исходным кодом для заметок и управления записями с поддержкой социальных функций."
,
"auth"
:
{
"signup-as-host"
:
"Зарегистрироваться как владелец"
,
"host-tip"
:
"Вы регистрируете владельца сайта."
,
"not-host-tip"
:
"Если у вас нет аккаунта, обратитесь к владельцу сайта."
},
"sidebar"
:
{
"daily-review"
:
"По дням"
,
"resources"
:
"Ресурсы"
,
"setting"
:
"Настройки"
,
"archived"
:
"Заархивировано"
},
"daily-review"
:
{
"oops-nothing"
:
"Ой, здесь ничего нет."
},
"resources"
:
{
"description"
:
"Посмотреть ваши статические ресурсы в Memos (изображения и пр.)"
,
"no-resources"
:
"Нет ресурсов."
,
"fetching-data"
:
"загрузка данных..."
,
"upload"
:
"Загрузить"
,
"preview"
:
"Предпросмотр"
,
"copy-link"
:
"Скопировать ссылку"
,
"delete-resource"
:
"Удалить ресурс"
,
"warning-text"
:
"Вы уверены, что хотите удалить этот ресурс? ЭТО ДЕЙСТВИЕ НЕВОЗМОЖНО ОТМЕНИТЬ❗"
,
"linked-amount"
:
"Количество записей"
,
"rename"
:
"Переименовать"
,
"clear-unused-resources"
:
"Удалить неиспользуемые ресурсы"
,
"warning-text-unused"
:
"Вы уверены, что хотите удалить неиспользуемые ресурсы? ЭТО ДЕЙСТВИЕ НЕВОЗМОЖНО ОТМЕНИТЬ❗"
,
"no-unused-resources"
:
"Нет неиспользуемых ресурсов"
,
"name"
:
"Название"
},
"archived"
:
{
"archived-memos"
:
"Заархивированные записи"
,
"no-archived-memos"
:
"Нет заархивированных записей."
,
"fetching-data"
:
"загрузка данных..."
},
"editor"
:
{
"editing"
:
"Редактирование..."
,
"cancel-edit"
:
"Отменить"
,
"save"
:
"Сохранить"
,
"placeholder"
:
"Ваши мысли..."
,
"only-image-supported"
:
"Поддерживаются только изображения."
,
"cant-empty"
:
"Содержимое не может быть пустым"
,
"local"
:
"На устройстве"
,
"resources"
:
"Ресурсы"
},
"memo"
:
{
"view-detail"
:
"Подробно"
,
"copy"
:
"Копировать"
,
"visibility"
:
{
"private"
:
"Видно только вам"
,
"protected"
:
"Видно только пользователям"
,
"public"
:
"Видно всем"
}
},
"memo-list"
:
{
"fetching-data"
:
"загрузка данных..."
,
"fetch-more"
:
"Загрузить больше"
},
"shortcut-list"
:
{
"shortcut-title"
:
"название ярлыка"
,
"create-shortcut"
:
"Создать ярлык"
,
"edit-shortcut"
:
"Редактировать ярлык"
,
"eligible-memo"
:
"связанные записи"
,
"fill-previous"
:
"Пожалуйста, заполните значение фильтра"
,
"title-required"
:
"Название обязательно"
,
"value-required"
:
"Значение фильтра обязательно"
},
"filter"
:
{
"new-filter"
:
"Новый фильтр"
,
"type"
:
{
"tag"
:
"Тег"
,
"type"
:
"Тип"
,
"text"
:
"Текст"
,
"display-time"
:
"Время отображения"
,
"visibility"
:
"Видимость"
},
"operator"
:
{
"contains"
:
"Содержит"
,
"not-contains"
:
"Не содержит"
,
"is"
:
"Только"
,
"is-not"
:
"Кроме"
,
"before"
:
"До"
,
"after"
:
"После"
},
"value"
:
{
"not-tagged"
:
"Без тегов"
,
"linked"
:
"Содержит ссылки"
},
"text-placeholder"
:
"Начните с ^ чтобы использовать регулярные выражения"
},
"tag-list"
:
{
"tip-text"
:
"Введите `#tag` для создания"
},
"search"
:
{
"quickly-filter"
:
"Быстрый фильтр"
},
"setting"
:
{
"my-account"
:
"Мой аккаунт"
,
"preference"
:
"Настройки"
,
"member"
:
"Пользователи"
,
"member-list"
:
"Список пользователей"
,
"system"
:
"Системные"
,
"account-section"
:
{
"title"
:
"Информация об аккаунте"
,
"update-information"
:
"Обновить информацию"
,
"change-password"
:
"Изменить пароль"
},
"preference-section"
:
{
"theme"
:
"Тема"
,
"default-memo-visibility"
:
"Видимость записей по умолчанию"
,
"enable-folding-memo"
:
"Включить сворачивание записей"
,
"enable-powerful-editor"
:
"Включить расширенный редактор"
,
"editor-font-style"
:
"Стиль шрифта"
,
"mobile-editor-style"
:
"Стиль мобильного редактора"
,
"default-memo-sort-option"
:
"Отображаемое время записи"
,
"created_ts"
:
"Время создания"
,
"updated_ts"
:
"Время обновления"
},
"member-section"
:
{
"create-a-member"
:
"Создать пользователя"
},
"system-section"
:
{
"server-name"
:
"Имя сервера"
,
"customize-server"
:
{
"title"
:
"Настроить сервер"
,
"default"
:
"По умолчанию: memos"
,
"icon-url"
:
"URL иконки"
},
"database-file-size"
:
"Размер файла базы данных"
,
"allow-user-signup"
:
"Разрешить регистрацию пользователей"
,
"additional-style"
:
"Настраиваемый стиль"
,
"additional-script"
:
"Настраиваемый скрипт"
,
"additional-style-placeholder"
:
"Настраиваемый код CSS"
,
"additional-script-placeholder"
:
"Настраиваемый код JavaScript"
},
"apperance-option"
:
{
"system"
:
"Системная"
,
"light"
:
"Светлая"
,
"dark"
:
"Тёмная"
}
},
"amount-text"
:
{
"memo_one"
:
"ЗАПИСЬ"
,
"memo_other"
:
"ЗАПИСИ"
,
"tag_one"
:
"ТЕГ"
,
"tag_other"
:
"ТЕГИ"
,
"day_one"
:
"ДЕНЬ"
,
"day_other"
:
"ДНИ"
},
"message"
:
{
"no-memos"
:
"нет записей 🌃"
,
"memos-ready"
:
"больше записей нет 🎉"
,
"restored-successfully"
:
"Успешно восстановлено."
,
"memo-updated-datetime"
:
"Время создания изменено."
,
"invalid-created-datetime"
:
"Неверное время создания."
,
"change-memo-created-time"
:
"Изменить время создания записи"
,
"memo-not-found"
:
"Запись не найдена."
,
"fill-all"
:
"Пожалуйста, заполните все поля."
,
"password-not-match"
:
"Пароли не совпадают."
,
"new-password-not-match"
:
"Новый пароль не совпадает."
,
"image-load-failed"
:
"Ошибка загрузки изображения"
,
"fill-form"
:
"Пожалуйста, заполните форму"
,
"login-failed"
:
"Ошибка входа"
,
"signup-failed"
:
"Помилка реєстрації"
,
"user-not-found"
:
"Пользователь не найден"
,
"password-changed"
:
"Пароль изменён"
,
"private-only"
:
"Это частная заметка."
,
"copied"
:
"Скопировано"
,
"succeed-copy-content"
:
"Скопировано в буфер обмена."
,
"succeed-copy-link"
:
"Ссылка скопирована в буфер обмена."
,
"change-resource-filename"
:
"Изменить имя файла"
,
"resource-filename-updated"
:
"Имя файла изменено."
,
"invalid-resource-filename"
:
"Неверное имя файла."
,
"click-to-save-the-image"
:
"Нажмите для сохранения изображения"
,
"generating-the-screenshot"
:
"Создание снимка..."
,
"count-selected-resources"
:
"Всего выбрано"
,
"too-short"
:
"Слишком короткое"
,
"too-long"
:
"Слишком длинное"
,
"not-allow-space"
:
"Пробел не разрешён"
,
"not-allow-chinese"
:
"Китайские символы не разрешены"
,
"succeed-vacuum-database"
:
"База данных успешно сжата"
,
"succeed-update-additional-style"
:
"Настраиваемый стиль успешно обновлен"
,
"succeed-copy-resource-link"
:
"Ссылка на файл скопирована в буфер обмена"
,
"succeed-update-customized-profile"
:
"Собственный профиль успешно обновлён"
,
"succeed-update-additional-script"
:
"Настраиваемый скрипт успешно обновлён"
,
"update-succeed"
:
"Успешно обновлено"
},
"days"
:
{
"monday"
:
"Понедельник"
,
"mon"
:
"Пон."
,
"tuesday"
:
"Вторник"
,
"tue"
:
"Вт."
,
"wednesday"
:
"Среда"
,
"wed"
:
"Ср."
,
"thursday"
:
"Четверг"
,
"thu"
:
"Чт."
,
"friday"
:
"Пятница"
,
"fri"
:
"Пт."
,
"saturday"
:
"Суббота"
,
"sat"
:
"Сб."
,
"sunday"
:
"Воскресенье"
,
"sun"
:
"Вс."
}
}
web/src/types/i18n.d.ts
View file @
65e9fdea
type
Locale
=
"en"
|
"zh"
|
"vi"
|
"fr"
|
"nl"
|
"sv"
|
"de"
|
"es"
|
"uk"
;
type
Locale
=
"en"
|
"zh"
|
"vi"
|
"fr"
|
"nl"
|
"sv"
|
"de"
|
"es"
|
"uk"
|
"ru"
;
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment