diff --git a/pkg/i18n/i18n.go b/pkg/i18n/i18n.go index 2fb447c6..a4fbe8d6 100644 --- a/pkg/i18n/i18n.go +++ b/pkg/i18n/i18n.go @@ -28,7 +28,7 @@ func NewTranslationSetFromConfig(log *logrus.Entry, configLanguage string) (*Tra } } - return NewTranslationSet(log, "en"), errors.New("Language not found: " + configLanguage) + return NewTranslationSet(log, "ru"), errors.New("Language not found: " + configLanguage) } func NewTranslationSet(log *logrus.Entry, language string) *TranslationSet { @@ -57,6 +57,9 @@ func GetTranslationSets() map[string]TranslationSet { "zh": chineseSet(), "es": spanishSet(), "pt": portugueseSet(), + "ru": russianSet(), + "it": italianSet(), + "ja": japaneseSet(), } } diff --git a/pkg/i18n/italian.go b/pkg/i18n/italian.go new file mode 100644 index 00000000..cdf7aee1 --- /dev/null +++ b/pkg/i18n/italian.go @@ -0,0 +1,145 @@ +package i18n + +func italianSet() TranslationSet { + return TranslationSet{ + PruningStatus: "pulizia", + RemovingStatus: "rimozione", + RestartingStatus: "riavvio", + StartingStatus: "avvio", + StoppingStatus: "arresto", + UppingServiceStatus: "avvio servizio", + UppingProjectStatus: "avvio progetto", + DowningStatus: "arresto", + PausingStatus: "pausa", + RunningCustomCommandStatus: "esecuzione comando personalizzato", + RunningBulkCommandStatus: "esecuzione comando in blocco", + + NoViewMachingNewLineFocusedSwitchStatement: "Nessuna vista corrispondente all'istruzione switch newLineFocused", + + ErrorOccurred: "Si è verificato un errore! Si prega di creare una issue su https://github.com/jesseduffield/lazydocker/issues", + ConnectionFailed: "Connessione al client Docker fallita. Potrebbe essere necessario riavviare il client Docker", + UnattachableContainerError: "Il contenitore non supporta il collegamento. È necessario eseguire il servizio con il flag '-it' o utilizzare `stdin_open: true, tty: true` nel file docker-compose.yml", + WaitingForContainerInfo: "Impossibile procedere fino a quando Docker non fornisce ulteriori informazioni sul contenitore. Si prega di riprovare tra qualche istante.", + CannotAttachStoppedContainerError: "Non è possibile collegarsi a un contenitore arrestato, è necessario prima avviarlo (cosa che si può effettivamente fare con il tasto 'r') (sì, sono troppo pigro per farlo automaticamente per te) (è piuttosto bello che io possa comunicare uno a uno con te sotto forma di messaggio di errore)", + CannotAccessDockerSocketError: "Impossibile accedere al socket Docker su: unix:///var/run/docker.sock\nEseguire lazydocker come root o leggere https://docs.docker.com/install/linux/linux-postinstall/", + CannotKillChildError: "Atteso tre secondi per l'arresto del processo figlio. Potrebbe esserci un processo orfano che continua a essere eseguito sul sistema.", + + Donate: "Dona", + Confirm: "Conferma", + + Return: "ritorna", + FocusMain: "focus sul pannello principale", + LcFilter: "filtra elenco", + Navigate: "naviga", + Execute: "esegui", + Close: "chiudi", + Quit: "esci", + Menu: "menu", + MenuTitle: "Menu", + Scroll: "scorri", + OpenConfig: "apri configurazione lazydocker", + EditConfig: "modifica configurazione lazydocker", + Cancel: "annulla", + Remove: "rimuovi", + HideStopped: "nascondi/mostra contenitori arrestati", + ForceRemove: "rimozione forzata", + RemoveWithVolumes: "rimuovi con volumi", + RemoveService: "rimuovi contenitori", + UpService: "avvia servizio", + Stop: "arresta", + Pause: "pausa", + Restart: "riavvia", + Down: "arresta progetto", + DownWithVolumes: "arresta progetto con volumi", + Start: "avvia", + Rebuild: "ricompila", + Recreate: "ricrea", + PreviousContext: "scheda precedente", + NextContext: "scheda successiva", + Attach: "collega", + ViewLogs: "visualizza log", + UpProject: "avvia progetto", + DownProject: "arresta progetto", + RemoveImage: "rimuovi immagine", + RemoveVolume: "rimuovi volume", + RemoveNetwork: "rimuovi rete", + RemoveWithoutPrune: "rimuovi senza eliminare i genitori non taggati", + RemoveWithoutPruneWithForce: "rimuovi (forzato) senza eliminare i genitori non taggati", + RemoveWithForce: "rimuovi (forzato)", + PruneContainers: "pulisci contenitori terminati", + PruneVolumes: "pulisci volumi inutilizzati", + PruneNetworks: "pulisci reti inutilizzate", + PruneImages: "pulisci immagini inutilizzate", + StopAllContainers: "arresta tutti i contenitori", + RemoveAllContainers: "rimuovi tutti i contenitori (forzato)", + ViewRestartOptions: "visualizza opzioni di riavvio", + ExecShell: "esegui shell", + RunCustomCommand: "esegui comando personalizzato", + ViewBulkCommands: "visualizza comandi in blocco", + FilterList: "filtra elenco", + OpenInBrowser: "apri nel browser (la prima porta è http)", + SortContainersByState: "ordina contenitori per stato", + + GlobalTitle: "Globale", + MainTitle: "Principale", + ProjectTitle: "Progetto", + ServicesTitle: "Servizi", + ContainersTitle: "Contenitori", + StandaloneContainersTitle: "Contenitori autonomi", + ImagesTitle: "Immagini", + VolumesTitle: "Volumi", + NetworksTitle: "Reti", + CustomCommandTitle: "Comando personalizzato:", + BulkCommandTitle: "Comando in blocco:", + ErrorTitle: "Errore", + LogsTitle: "Log", + ConfigTitle: "Configurazione", + EnvTitle: "Variabili d'ambiente", + DockerComposeConfigTitle: "Configurazione Docker-Compose", + TopTitle: "Top", + StatsTitle: "Statistiche", + CreditsTitle: "Informazioni", + ContainerConfigTitle: "Configurazione contenitore", + ContainerEnvTitle: "Variabili contenitore", + NothingToDisplay: "Niente da visualizzare", + NoContainerForService: "Nessun log da mostrare; il servizio non è associato a un contenitore", + CannotDisplayEnvVariables: "Qualcosa è andato storto durante la visualizzazione delle variabili d'ambiente", + + NoContainers: "Nessun contenitore", + NoContainer: "Nessun contenitore", + NoImages: "Nessuna immagine", + NoVolumes: "Nessun volume", + NoNetworks: "Nessuna rete", + NoServices: "Nessun servizio", + + ConfirmQuit: "Sei sicuro di voler uscire?", + ConfirmUpProject: "Sei sicuro di voler avviare il tuo progetto docker compose?", + MustForceToRemoveContainer: "Non è possibile rimuovere un contenitore in esecuzione senza forzarlo. Vuoi forzarlo?", + NotEnoughSpace: "Spazio insufficiente per visualizzare i pannelli", + ConfirmPruneImages: "Sei sicuro di voler pulire tutte le immagini inutilizzate?", + ConfirmPruneContainers: "Sei sicuro di voler pulire tutti i contenitori arrestati?", + ConfirmStopContainers: "Sei sicuro di voler arrestare tutti i contenitori?", + ConfirmRemoveContainers: "Sei sicuro di voler rimuovere tutti i contenitori?", + ConfirmPruneVolumes: "Sei sicuro di voler pulire tutti i volumi inutilizzati?", + ConfirmPruneNetworks: "Sei sicuro di voler pulire tutte le reti inutilizzate?", + StopService: "Sei sicuro di voler arrestare i contenitori di questo servizio?", + StopContainer: "Sei sicuro di voler arrestare questo contenitore?", + PressEnterToReturn: "Premi invio per tornare a lazydocker (questo prompt può essere disabilitato nella configurazione impostando `gui.returnImmediately: true`)", + DetachFromContainerShortCut: "Per impostazione predefinita, per scollegarsi dal contenitore premere ctrl-p quindi ctrl-q", + + No: "no", + Yes: "sì", + + LcNextScreenMode: "modalità schermo successiva (normale/metà/schermo intero)", + LcPrevScreenMode: "modalità schermo precedente", + FilterPrompt: "filtro", + + FocusProjects: "focus sul pannello progetti", + FocusServices: "focus sul pannello servizi", + FocusContainers: "focus sul pannello contenitori", + FocusImages: "focus sul pannello immagini", + FocusVolumes: "focus sul pannello volumi", + FocusNetworks: "focus sul pannello reti", + } +} + diff --git a/pkg/i18n/japanese.go b/pkg/i18n/japanese.go new file mode 100644 index 00000000..b40f6d10 --- /dev/null +++ b/pkg/i18n/japanese.go @@ -0,0 +1,144 @@ +package i18n + +func japaneseSet() TranslationSet { + return TranslationSet{ + PruningStatus: "プルーニング中", + RemovingStatus: "削除中", + RestartingStatus: "再起動中", + StartingStatus: "起動中", + StoppingStatus: "停止中", + UppingServiceStatus: "サービス起動中", + UppingProjectStatus: "プロジェクト起動中", + DowningStatus: "停止中", + PausingStatus: "一時停止中", + RunningCustomCommandStatus: "カスタムコマンド実行中", + RunningBulkCommandStatus: "一括コマンド実行中", + + NoViewMachingNewLineFocusedSwitchStatement: "newLineFocused switch文に一致するビューがありません", + + ErrorOccurred: "エラーが発生しました!https://github.com/jesseduffield/lazydocker/issues にissueを作成してください", + ConnectionFailed: "dockerクライアントへの接続に失敗しました。dockerクライアントの再起動が必要な場合があります", + UnattachableContainerError: "コンテナはアタッチをサポートしていません。'-it'フラグを使用してサービスを実行するか、docker-compose.ymlファイルで`stdin_open: true, tty: true`を使用する必要があります", + WaitingForContainerInfo: "Dockerがコンテナに関する詳細情報を提供するまで続行できません。しばらくしてから再試行してください。", + CannotAttachStoppedContainerError: "停止したコンテナにはアタッチできません。まず起動する必要があります(実際には'r'キーで起動できます)(はい、私は自動的にやるには怠け者すぎます)(エラーメッセージの形であなたと一対一でコミュニケーションできるのはかなりクールですが)", + CannotAccessDockerSocketError: "unix:///var/run/docker.sockのdockerソケットにアクセスできません\nlazydockerをrootとして実行するか、https://docs.docker.com/install/linux/linux-postinstall/ を読んでください", + CannotKillChildError: "子プロセスが停止するまで3秒待機しました。システム上で実行し続ける孤立プロセスがある可能性があります。", + + Donate: "寄付", + Confirm: "確認", + + Return: "戻る", + FocusMain: "メインパネルにフォーカス", + LcFilter: "リストをフィルター", + Navigate: "ナビゲート", + Execute: "実行", + Close: "閉じる", + Quit: "終了", + Menu: "メニュー", + MenuTitle: "メニュー", + Scroll: "スクロール", + OpenConfig: "lazydocker設定を開く", + EditConfig: "lazydocker設定を編集", + Cancel: "キャンセル", + Remove: "削除", + HideStopped: "停止したコンテナを非表示/表示", + ForceRemove: "強制削除", + RemoveWithVolumes: "ボリュームと共に削除", + RemoveService: "コンテナを削除", + UpService: "サービスを起動", + Stop: "停止", + Pause: "一時停止", + Restart: "再起動", + Down: "プロジェクトを停止", + DownWithVolumes: "ボリュームと共にプロジェクトを停止", + Start: "開始", + Rebuild: "再ビルド", + Recreate: "再作成", + PreviousContext: "前のタブ", + NextContext: "次のタブ", + Attach: "アタッチ", + ViewLogs: "ログを表示", + UpProject: "プロジェクトを起動", + DownProject: "プロジェクトを停止", + RemoveImage: "イメージを削除", + RemoveVolume: "ボリュームを削除", + RemoveNetwork: "ネットワークを削除", + RemoveWithoutPrune: "タグなし親を削除せずに削除", + RemoveWithoutPruneWithForce: "タグなし親を削除せずに削除(強制)", + RemoveWithForce: "削除(強制)", + PruneContainers: "終了したコンテナをプルーニング", + PruneVolumes: "未使用のボリュームをプルーニング", + PruneNetworks: "未使用のネットワークをプルーニング", + PruneImages: "未使用のイメージをプルーニング", + StopAllContainers: "すべてのコンテナを停止", + RemoveAllContainers: "すべてのコンテナを削除(強制)", + ViewRestartOptions: "再起動オプションを表示", + ExecShell: "シェルを実行", + RunCustomCommand: "カスタムコマンドを実行", + ViewBulkCommands: "一括コマンドを表示", + FilterList: "リストをフィルター", + OpenInBrowser: "ブラウザで開く(最初のポートはhttp)", + SortContainersByState: "コンテナを状態でソート", + + GlobalTitle: "グローバル", + MainTitle: "メイン", + ProjectTitle: "プロジェクト", + ServicesTitle: "サービス", + ContainersTitle: "コンテナ", + StandaloneContainersTitle: "スタンドアロンコンテナ", + ImagesTitle: "イメージ", + VolumesTitle: "ボリューム", + NetworksTitle: "ネットワーク", + CustomCommandTitle: "カスタムコマンド:", + BulkCommandTitle: "一括コマンド:", + ErrorTitle: "エラー", + LogsTitle: "ログ", + ConfigTitle: "設定", + EnvTitle: "環境変数", + DockerComposeConfigTitle: "Docker-Compose設定", + TopTitle: "Top", + StatsTitle: "統計", + CreditsTitle: "について", + ContainerConfigTitle: "コンテナ設定", + ContainerEnvTitle: "コンテナ環境変数", + NothingToDisplay: "表示するものがありません", + NoContainerForService: "表示するログがありません;サービスはコンテナに関連付けられていません", + CannotDisplayEnvVariables: "環境変数の表示中に問題が発生しました", + + NoContainers: "コンテナなし", + NoContainer: "コンテナなし", + NoImages: "イメージなし", + NoVolumes: "ボリュームなし", + NoNetworks: "ネットワークなし", + NoServices: "サービスなし", + + ConfirmQuit: "本当に終了しますか?", + ConfirmUpProject: "本当にdocker composeプロジェクトを起動しますか?", + MustForceToRemoveContainer: "実行中のコンテナを強制的に削除しない限り削除できません。強制削除しますか?", + NotEnoughSpace: "パネルを表示するのに十分なスペースがありません", + ConfirmPruneImages: "本当にすべての未使用イメージをプルーニングしますか?", + ConfirmPruneContainers: "本当にすべての停止したコンテナをプルーニングしますか?", + ConfirmStopContainers: "本当にすべてのコンテナを停止しますか?", + ConfirmRemoveContainers: "本当にすべてのコンテナを削除しますか?", + ConfirmPruneVolumes: "本当にすべての未使用ボリュームをプルーニングしますか?", + ConfirmPruneNetworks: "本当にすべての未使用ネットワークをプルーニングしますか?", + StopService: "本当にこのサービスのコンテナを停止しますか?", + StopContainer: "本当にこのコンテナを停止しますか?", + PressEnterToReturn: "Enterキーを押してlazydockerに戻ります(このプロンプトは設定で`gui.returnImmediately: true`を設定することで無効にできます)", + DetachFromContainerShortCut: "デフォルトでは、コンテナからデタッチするにはctrl-pを押してからctrl-qを押します", + + No: "いいえ", + Yes: "はい", + + LcNextScreenMode: "次の画面モード(通常/半分/フルスクリーン)", + LcPrevScreenMode: "前の画面モード", + FilterPrompt: "フィルター", + + FocusProjects: "プロジェクトパネルにフォーカス", + FocusServices: "サービスパネルにフォーカス", + FocusContainers: "コンテナパネルにフォーカス", + FocusImages: "イメージパネルにフォーカス", + FocusVolumes: "ボリュームパネルにフォーカス", + FocusNetworks: "ネットワークパネルにフォーカス", + } +} diff --git a/pkg/i18n/russian.go b/pkg/i18n/russian.go new file mode 100644 index 00000000..523190af --- /dev/null +++ b/pkg/i18n/russian.go @@ -0,0 +1,144 @@ +package i18n + +func russianSet() TranslationSet { + return TranslationSet{ + PruningStatus: "очистка", + RemovingStatus: "удаление", + RestartingStatus: "перезапуск", + StartingStatus: "запуск", + StoppingStatus: "остановка", + UppingServiceStatus: "запуск сервиса", + UppingProjectStatus: "запуск проекта", + DowningStatus: "остановка", + PausingStatus: "приостановка", + RunningCustomCommandStatus: "выполнение пользовательской команды", + RunningBulkCommandStatus: "выполнение групповой команды", + + NoViewMachingNewLineFocusedSwitchStatement: "Нет представления, соответствующего оператору переключения newLineFocused", + + ErrorOccurred: "Произошла ошибка! Пожалуйста, создайте issue на https://github.com/jesseduffield/lazydocker/issues", + ConnectionFailed: "Не удалось подключиться к клиенту Docker. Возможно, нужно перезапустить клиент Docker", + UnattachableContainerError: "Контейнер не поддерживает подключение. Вы должны либо запустить сервис с флагом '-it', либо использовать `stdin_open: true, tty: true` в файле docker-compose.yml", + WaitingForContainerInfo: "Невозможно продолжить, пока Docker не предоставит больше информации о контейнере. Пожалуйста, повторите попытку через несколько секунд.", + CannotAttachStoppedContainerError: "Вы не можете подключиться к остановленному контейнеру, сначала нужно его запустить (это можно сделать клавишей 'r') (да, я слишком ленив, чтобы сделать это автоматически за вас) (довольно круто, что я могу общаться с вами один на один в виде сообщения об ошибке)", + CannotAccessDockerSocketError: "Нет доступа к сокету Docker по адресу: unix:///var/run/docker.sock\nЗапустите lazydocker от имени root или прочтите https://docs.docker.com/install/linux/linux-postinstall/", + CannotKillChildError: "Ожидание остановки дочернего процесса заняло три секунды. Возможно, в вашей системе остался процесс-сирота.", + + Donate: "Поддержать", + Confirm: "Подтвердить", + + Return: "вернуться", + FocusMain: "фокус на главную панель", + LcFilter: "фильтровать список", + Navigate: "навигация", + Execute: "выполнить", + Close: "закрыть", + Quit: "выйти", + Menu: "меню", + MenuTitle: "Меню", + Scroll: "прокрутка", + OpenConfig: "открыть конфигурацию lazydocker", + EditConfig: "редактировать конфигурацию lazydocker", + Cancel: "отменить", + Remove: "удалить", + HideStopped: "скрыть/показать остановленные контейнеры", + ForceRemove: "принудительное удаление", + RemoveWithVolumes: "удалить с томами", + RemoveService: "удалить контейнеры", + UpService: "запустить сервис", + Stop: "остановить", + Pause: "приостановить", + Restart: "перезапустить", + Down: "остановить проект", + DownWithVolumes: "остановить проект с томами", + Start: "запустить", + Rebuild: "пересобрать", + Recreate: "пересоздать", + PreviousContext: "предыдущая вкладка", + NextContext: "следующая вкладка", + Attach: "подключиться", + ViewLogs: "просмотр логов", + UpProject: "запустить проект", + DownProject: "остановить проект", + RemoveImage: "удалить образ", + RemoveVolume: "удалить том", + RemoveNetwork: "удалить сеть", + RemoveWithoutPrune: "удалить без удаления неотмеченных родителей", + RemoveWithoutPruneWithForce: "удалить (принудительно) без удаления неотмеченных родителей", + RemoveWithForce: "удалить (принудительно)", + PruneContainers: "очистить завершенные контейнеры", + PruneVolumes: "очистить неиспользуемые тома", + PruneNetworks: "очистить неиспользуемые сети", + PruneImages: "очистить неиспользуемые образы", + StopAllContainers: "остановить все контейнеры", + RemoveAllContainers: "удалить все контейнеры (принудительно)", + ViewRestartOptions: "просмотр параметров перезапуска", + ExecShell: "выполнить shell", + RunCustomCommand: "выполнить пользовательскую команду", + ViewBulkCommands: "просмотр групповых команд", + FilterList: "фильтровать список", + OpenInBrowser: "открыть в браузере (первый порт - http)", + SortContainersByState: "сортировать контейнеры по состоянию", + + GlobalTitle: "Глобальные", + MainTitle: "Главная", + ProjectTitle: "Проект", + ServicesTitle: "Сервисы", + ContainersTitle: "Контейнеры", + StandaloneContainersTitle: "Отдельные контейнеры", + ImagesTitle: "Образы", + VolumesTitle: "Тома", + NetworksTitle: "Сети", + CustomCommandTitle: "Пользовательская команда:", + BulkCommandTitle: "Групповая команда:", + ErrorTitle: "Ошибка", + LogsTitle: "Логи", + ConfigTitle: "Конфигурация", + EnvTitle: "Переменные окружения", + DockerComposeConfigTitle: "Конфигурация Docker-Compose", + TopTitle: "Top", + StatsTitle: "Статистика", + CreditsTitle: "О программе", + ContainerConfigTitle: "Конфигурация контейнера", + ContainerEnvTitle: "Переменные контейнера", + NothingToDisplay: "Нечего отображать", + NoContainerForService: "Нет логов для отображения; сервис не связан с контейнером", + CannotDisplayEnvVariables: "Что-то пошло не так при отображении переменных окружения", + + NoContainers: "Нет контейнеров", + NoContainer: "Нет контейнера", + NoImages: "Нет образов", + NoVolumes: "Нет томов", + NoNetworks: "Нет сетей", + NoServices: "Нет сервисов", + + ConfirmQuit: "Вы уверены, что хотите выйти?", + ConfirmUpProject: "Вы уверены, что хотите запустить ваш docker compose проект?", + MustForceToRemoveContainer: "Вы не можете удалить запущенный контейнер без принудительного удаления. Выполнить принудительное удаление?", + NotEnoughSpace: "Недостаточно места для отображения панелей", + ConfirmPruneImages: "Вы уверены, что хотите очистить все неиспользуемые образы?", + ConfirmPruneContainers: "Вы уверены, что хотите очистить все остановленные контейнеры?", + ConfirmStopContainers: "Вы уверены, что хотите остановить все контейнеры?", + ConfirmRemoveContainers: "Вы уверены, что хотите удалить все контейнеры?", + ConfirmPruneVolumes: "Вы уверены, что хотите очистить все неиспользуемые тома?", + ConfirmPruneNetworks: "Вы уверены, что хотите очистить все неиспользуемые сети?", + StopService: "Вы уверены, что хотите остановить контейнеры этого сервиса?", + StopContainer: "Вы уверены, что хотите остановить этот контейнер?", + PressEnterToReturn: "Нажмите enter для возврата в lazydocker (это сообщение можно отключить в конфигурации, установив `gui.returnImmediately: true`)", + DetachFromContainerShortCut: "По умолчанию для отключения от контейнера нажмите ctrl-p, затем ctrl-q", + + No: "нет", + Yes: "да", + + LcNextScreenMode: "следующий режим экрана (обычный/половина/полный экран)", + LcPrevScreenMode: "предыдущий режим экрана", + FilterPrompt: "фильтр", + + FocusProjects: "фокус на панель проектов", + FocusServices: "фокус на панель сервисов", + FocusContainers: "фокус на панель контейнеров", + FocusImages: "фокус на панель образов", + FocusVolumes: "фокус на панель томов", + FocusNetworks: "фокус на панель сетей", + } +}