feat: 新增葡萄牙语翻译 (#744)

Co-authored-by: ayang <473033518@qq.com>
This commit is contained in:
Suh
2025-12-24 06:26:19 -03:00
committed by GitHub
parent 6554508c30
commit f1fac05975
5 changed files with 185 additions and 2 deletions

View File

@@ -7,11 +7,12 @@
"languages": [
"English",
"Vietnamese",
"SimpChinese"
"SimpChinese",
"PortugueseBR"
],
"installMode": "both",
"displayLanguageSelector": true
}
}
}
}
}

View File

@@ -21,4 +21,5 @@ export const LANGUAGE = {
ZH_CN: 'zh-CN',
EN_US: 'en-US',
VI_VN: 'vi-VN',
PT_BR: 'pt-BR',
} as const

View File

@@ -2,11 +2,13 @@ import type { Language } from '@/stores/general'
import type { Locale as AntdLocale } from 'ant-design-vue/es/locale'
import antdEnUS from 'ant-design-vue/locale/en_US'
import antdPtBR from 'ant-design-vue/locale/pt_BR'
import antdViVN from 'ant-design-vue/locale/vi_VN'
import antdZhCN from 'ant-design-vue/locale/zh_CN'
import { createI18n } from 'vue-i18n'
import enUS from './en-US.json'
import ptBR from './pt-BR.json'
import viVN from './vi-VN.json'
import zhCN from './zh-CN.json'
@@ -20,6 +22,7 @@ export const i18n = createI18n({
[LANGUAGE.ZH_CN]: zhCN,
[LANGUAGE.EN_US]: enUS,
[LANGUAGE.VI_VN]: viVN,
[LANGUAGE.PT_BR]: ptBR,
},
})
@@ -28,6 +31,7 @@ export function getAntdLocale(language: Language = LANGUAGE.EN_US) {
[LANGUAGE.ZH_CN]: antdZhCN,
[LANGUAGE.EN_US]: antdEnUS,
[LANGUAGE.VI_VN]: antdViVN,
[LANGUAGE.PT_BR]: antdPtBR,
}
return antdLanguage[language]

174
src/locales/pt-BR.json Normal file
View File

@@ -0,0 +1,174 @@
{
"pages": {
"main": {
"hints": {
"redrawing": "Redimensionando..."
}
},
"preference": {
"title": "Preferências",
"cat": {
"title": "Gato",
"labels": {
"modelSettings": "Configurações do Modelo",
"mirrorMode": "Modo Espelho",
"singleMode": "Mostrar Apenas Última Tecla",
"mouseMirror": "Espelho do Mouse",
"windowSettings": "Configurações da Janela",
"passThrough": "Janela Transparente",
"alwaysOnTop": "Sempre no Topo",
"windowSize": "Tamanho da Janela",
"windowRadius": "Raio da Janela",
"opacity": "Opacidade",
"autoReleaseDelay": "Atraso de Liberação Automática",
"hideOnHover": "Ocultar ao Passar o Mouse"
},
"hints": {
"mirrorMode": "Quando ativado, o modelo será invertido horizontalmente.",
"singleMode": "Quando ativado, apenas a última tecla pressionada em cada mão é exibida (evita mostrar múltiplas mãos ao pressionar várias teclas ao mesmo tempo).",
"mouseMirror": "Quando ativado, o mouse espelhará o movimento da mão.",
"passThrough": "Quando ativado, a janela não afetará operações em outros aplicativos.",
"alwaysOnTop": "Quando ativado, a janela sempre ficará acima de outros aplicativos.",
"windowSize": "Mova o mouse para a borda da janela ou segure Shift e arraste com o botão direito para redimensionar.",
"autoReleaseDelay": "Devido ao Windows não capturar eventos de liberação de certas teclas de nível do sistema, elas serão automaticamente tratadas como liberadas após um tempo limite.",
"hideOnHover": "Quando ativado, a janela será ocultada quando o mouse passar sobre ela."
}
},
"general": {
"title": "Geral",
"labels": {
"appSettings": "Configurações do aplicativo",
"launchOnStartup": "Iniciar na inicialização",
"showTaskbarIcon": "Mostrar ícone na barra de tarefas",
"appearanceSettings": "Configurações de aparência",
"themeMode": "Tema",
"language": "Idiomas",
"updateSettings": "Configurações de atualização",
"autoCheckUpdate": "Verificar atualizações automaticamente",
"permissionsSettings": "Configurações de Permissões",
"inputMonitoringPermission": "Permissão de Monitoramento de Entrada"
},
"options": {
"auto": "Sistema",
"lightMode": "Claro",
"darkMode": "Escuro"
},
"hints": {
"showTaskbarIcon": "Uma vez ativado, você pode capturar a janela via OBS Studio.",
"inputMonitoringPermission": "Ative a permissão de monitoramento de entrada para receber eventos de teclado e mouse do sistema para responder às suas ações.",
"inputMonitoringPermissionGuide": "Se a permissão já estiver ativada, primeiro selecione-a e clique no botão \"-\" para removê-la. Em seguida, adicione-a novamente manualmente e reinicie o aplicativo para garantir que a permissão entre em vigor."
},
"status": {
"authorized": "Autorizado",
"authorize": "Ir para Ativar"
},
"buttons": {
"openNow": "Abrir Agora",
"openLater": "Abrir Mais Tarde"
}
},
"model": {
"title": "Modelo",
"labels": {
"deleteModel": "Excluir modelo"
},
"hints": {
"deleteSuccess": "Excluído com sucesso",
"deleteModel": "Tem certeza de que deseja excluir este modelo?",
"importSuccess": "Importação bem-sucedida",
"clickOrDragToImport": "Clique ou arraste para importar"
},
"tooltips": {
"createModel": "Criar modelo",
"convertModel": "Converter modelo",
"moreModels": "Mais modelos"
}
},
"shortcut": {
"title": "Atalhos",
"labels": {
"toggleCat": "Mostrar/Ocultar Gato",
"togglePreferences": "Abrir Preferências",
"mirrorMode": "Modo Espelho",
"passThrough": "Janela Transparente",
"alwaysOnTop": "Sempre no Topo"
},
"hints": {
"toggleCat": "Alternar a visibilidade da janela do gato.",
"togglePreferences": "Alternar a visibilidade da janela de preferências.",
"mirrorMode": "Alternar o modo espelho do gato.",
"passThrough": "Alternar se a janela do gato é clicável.",
"alwaysOnTop": "Alternar se a janela do gato permanece no topo."
}
},
"about": {
"title": "Sobre",
"labels": {
"aboutApp": "Sobre o Aplicativo",
"appLog": "Logs do Aplicativo",
"appInfo": "Informações do Aplicativo",
"openSource": "Código Aberto"
},
"hints": {
"appInfo": "Copiar informações do aplicativo para incluir em relatórios de bugs.",
"copySuccess": "Copiado com sucesso"
},
"buttons": {
"checkUpdate": "Verificar atualizações",
"copy": "Copiar",
"feedbackIssues": "Reportar Problema",
"viewLog": "Ver Logs"
}
}
}
},
"components": {
"proShortcut": {
"hints": {
"pressRecordShortcut": "Pressione as teclas para gravar atalho",
"clickRecordShortcut": "Clique para gravar atalho"
},
"updateApp": {
"title": "Nova versão encontrada 🥳",
"labels": {
"updateVersion": "Versão: ",
"updateTime": "Hora da atualização: ",
"changelog": "Registro de alterações: "
},
"hints": {
"checkingUpdates": "Verificando atualizações...",
"alreadyLatest": "Você já está na versão mais recente 🎉"
},
"buttons": {
"updateNow": "Atualizar Agora",
"updateLater": "Atualizar mais tarde"
}
}
}
},
"composables": {
"useSharedMenu": {
"labels": {
"preference": "Preferências...",
"hideCat": "Ocultar Gato",
"showCat": "Mostrar Gato",
"passThrough": "Janela Transparente",
"windowSize": "Tamanho da Janela",
"opacity": "Opacidade"
}
},
"useTray": {
"checkUpdate": "Verificar atualizações",
"openSource": "Código Fonte",
"restartApp": "Reiniciar",
"quitApp": "Sair"
}
},
"utils": {
"live2d": {
"errors": {
"notFoundMainConfig": "Arquivo de configuração principal do modelo não encontrado. Verifique se os arquivos do modelo estão completos."
}
}
}
}

View File

@@ -55,6 +55,9 @@ watch(() => generalStore.app.autostart, async (value) => {
<Select.Option value="vi-VN">
Tiếng Việt
</Select.Option>
<Select.Option value="pt-BR">
Português
</Select.Option>
</Select>
</ProListItem>
</ProList>