VirtualKimi commited on
Commit
b8a9e55
·
verified ·
1 Parent(s): bf9d85d

Upload 9 files

Browse files
kimi-locale/de.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "Italienisch",
182
  "language_japanese": "Japanisch",
183
  "language_chinese": "Chinesisch",
 
184
  "automatic": "Automatisch",
185
  "trait_description_affection": "Liebevoll und fürsorglich sein.",
186
  "trait_description_romance": "Romantisch und süß sein.",
 
181
  "language_italian": "Italienisch",
182
  "language_japanese": "Japanisch",
183
  "language_chinese": "Chinesisch",
184
+ "language_portuguese": "Portugiesisch (Brasilien)",
185
  "automatic": "Automatisch",
186
  "trait_description_affection": "Liebevoll und fürsorglich sein.",
187
  "trait_description_romance": "Romantisch und süß sein.",
kimi-locale/en.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "Italian",
182
  "language_japanese": "Japanese",
183
  "language_chinese": "Chinese",
 
184
  "automatic": "Automatic",
185
  "trait_description_affection": "Be loving and caring.",
186
  "trait_description_romance": "Be romantic and sweet.",
 
181
  "language_italian": "Italian",
182
  "language_japanese": "Japanese",
183
  "language_chinese": "Chinese",
184
+ "language_portuguese": "Portuguese (Brazil)",
185
  "automatic": "Automatic",
186
  "trait_description_affection": "Be loving and caring.",
187
  "trait_description_romance": "Be romantic and sweet.",
kimi-locale/es.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "Italiano",
182
  "language_japanese": "Japonés",
183
  "language_chinese": "Chino",
 
184
  "automatic": "Automático",
185
  "trait_description_affection": "Ser amoroso y cariñoso.",
186
  "trait_description_romance": "Ser romántico y dulce.",
 
181
  "language_italian": "Italiano",
182
  "language_japanese": "Japonés",
183
  "language_chinese": "Chino",
184
+ "language_portuguese": "Portugués (Brasil)",
185
  "automatic": "Automático",
186
  "trait_description_affection": "Ser amoroso y cariñoso.",
187
  "trait_description_romance": "Ser romántico y dulce.",
kimi-locale/fr.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "Italien",
182
  "language_japanese": "Japonais",
183
  "language_chinese": "Chinois",
 
184
  "automatic": "Automatique",
185
  "trait_description_affection": "Être aimante et attentionnée.",
186
  "trait_description_romance": "Être romantique et douce.",
 
181
  "language_italian": "Italien",
182
  "language_japanese": "Japonais",
183
  "language_chinese": "Chinois",
184
+ "language_portuguese": "Portugais (Brésil)",
185
  "automatic": "Automatique",
186
  "trait_description_affection": "Être aimante et attentionnée.",
187
  "trait_description_romance": "Être romantique et douce.",
kimi-locale/i18n.js CHANGED
@@ -71,7 +71,11 @@ class KimiI18nManager {
71
  detectLanguage() {
72
  const nav = (navigator && (navigator.language || (navigator.languages && navigator.languages[0]))) || "en";
73
  const short = String(nav).slice(0, 2).toLowerCase();
74
- return ["en", "fr", "es", "de", "it", "ja", "zh"].includes(short) ? short : "en";
 
 
 
 
75
  }
76
  }
77
 
 
71
  detectLanguage() {
72
  const nav = (navigator && (navigator.language || (navigator.languages && navigator.languages[0]))) || "en";
73
  const short = String(nav).slice(0, 2).toLowerCase();
74
+ // Handle Brazilian Portuguese specifically
75
+ if (nav && nav.toLowerCase().startsWith("pt")) {
76
+ return "pt-br";
77
+ }
78
+ return ["en", "fr", "es", "de", "it", "ja", "zh", "pt-br"].includes(short) ? short : "en";
79
  }
80
  }
81
 
kimi-locale/it.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "Italiano",
182
  "language_japanese": "Giapponese",
183
  "language_chinese": "Cinese",
 
184
  "automatic": "Automatico",
185
  "trait_description_affection": "Essere amorevole e premurosa.",
186
  "trait_description_romance": "Essere romantica e dolce.",
 
181
  "language_italian": "Italiano",
182
  "language_japanese": "Giapponese",
183
  "language_chinese": "Cinese",
184
+ "language_portuguese": "Portoghese (Brasile)",
185
  "automatic": "Automatico",
186
  "trait_description_affection": "Essere amorevole e premurosa.",
187
  "trait_description_romance": "Essere romantica e dolce.",
kimi-locale/ja.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "イタリア語",
182
  "language_japanese": "日本語",
183
  "language_chinese": "中国語",
 
184
  "automatic": "自動",
185
  "trait_description_affection": "愛情深く思いやりがある。",
186
  "trait_description_romance": "ロマンチックで優しい。",
 
181
  "language_italian": "イタリア語",
182
  "language_japanese": "日本語",
183
  "language_chinese": "中国語",
184
+ "language_portuguese": "ポルトガル語(ブラジル)",
185
  "automatic": "自動",
186
  "trait_description_affection": "愛情深く思いやりがある。",
187
  "trait_description_romance": "ロマンチックで優しい。",
kimi-locale/pt-br.json ADDED
@@ -0,0 +1,255 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "title": "Kimi - Companheira Virtual 💕",
3
+ "chat_with_kimi": "Conversar com Kimi",
4
+ "chat_with_bella": "Conversar com Bella",
5
+ "chat_with_rosa": "Conversar com Rosa",
6
+ "chat_with_stella": "Conversar com Stella",
7
+ "delete_messages": "Excluir Mensagens",
8
+ "close_chat": "Fechar Chat",
9
+ "write_something": "Escreva algo para mim, meu amor...",
10
+ "send": "Enviar",
11
+ "open_chat": "Abrir Chat",
12
+ "video_not_supported": "Seu navegador não suporta a tag de vídeo.",
13
+ "settings_title": "Configuração da Kimi",
14
+ "settings_help": "Ajuda",
15
+ "settings_close": "Fechar",
16
+ "tab_voice": "Idioma & Voz",
17
+ "tab_personality": "Personalidade",
18
+ "tab_llm": "API & Modelos",
19
+ "tab_appearance": "Aparência",
20
+ "tab_data": "Dados",
21
+ "tab_plugins": "Plugins",
22
+ "plugin_manager": "Gerenciador de Plugins",
23
+ "voice_settings": "Configurações de Voz",
24
+ "speech_rate": "Velocidade da Fala",
25
+ "pitch": "Tom",
26
+ "volume": "Volume",
27
+ "language": "Idioma",
28
+ "preferred_voice": "Voz Preferida",
29
+ "voice_test_label": "Teste de Voz",
30
+ "voice_test_button": "Testar a Voz",
31
+ "personality_traits": "Traços de Personalidade",
32
+ "affection": "Afeto",
33
+ "playfulness": "Brincadeira",
34
+ "intelligence": "Inteligência",
35
+ "empathy": "Empatia",
36
+ "humor": "Humor",
37
+ "romance": "Romance",
38
+ "statistics": "Estatísticas",
39
+ "interactions": "Interações",
40
+ "tokens_usage": "Tokens (entrada/saída)",
41
+ "conversations": "Conversas",
42
+ "days_together": "Dias Juntos",
43
+ "api_configuration": "Configuração de API",
44
+ "openrouter_api_key": "Chave API OpenRouter",
45
+ "connection_test": "Teste de Conexão",
46
+ "advanced_settings": "Configurações Avançadas",
47
+ "temperature": "Temperatura (Criatividade)",
48
+ "max_tokens": "Tokens Máximos",
49
+ "enable_streaming": "Ativar Streaming de Texto",
50
+ "enable_streaming_help": "Transmite o texto conforme é gerado para respostas em tempo real (padrão: ativado). Mostra o texto progressivamente em vez de esperar pela resposta completa.",
51
+ "available_models": "Modelos Openrouter Disponíveis",
52
+ "refresh_list": "Atualizar Lista",
53
+ "refresh": "Atualizar",
54
+ "visual_theme": "Tema Visual",
55
+ "color_theme": "Tema de Cores",
56
+ "interface_transparency": "Transparência da Interface",
57
+ "animations": "Animações",
58
+ "transcript_settings": "Configurações de Transcrição",
59
+ "show_transcript": "Mostrar Transcrição",
60
+ "show_transcript_note": "Exibir transcrição em tempo real quando você fala para enviar uma mensagem e quando a IA responde.",
61
+ "plugin_status_note": "Atualmente, apenas o -Sample Blue Theme- está totalmente funcional. Outros plugins estão em desenvolvimento e ativá-los não terá efeito no momento.",
62
+ "memory_system_help": "A Memória Inteligente permite que seu personagem lembre de conversas, preferências e detalhes importantes entre as sessões. Isso cria interações mais personalizadas e coerentes ao longo do tempo.",
63
+ "data_management": "Gerenciamento de Dados",
64
+ "export_all_data": "Exportar Todos os Dados",
65
+ "export": "Exportar",
66
+ "import_data": "Importar Dados",
67
+ "import": "Importar",
68
+ "clean_old_conversations": "Limpar Conversas Antigas",
69
+ "clean": "Limpar",
70
+ "complete_reset": "Redefinição Completa",
71
+ "delete_all": "Excluir Tudo",
72
+ "system_information": "Informações do Sistema",
73
+ "help_modal_title": "Ajuda",
74
+ "help_modal_close": "Fechar",
75
+ "help_section_quick_guide": "Guia Rápido",
76
+ "help_section_features": "Recursos",
77
+ "help_section_tips": "Dicas",
78
+ "help_section_tech_info": "Informações Técnicas",
79
+ "help_section_creators": "Criadores",
80
+ "guide_step": "Passo",
81
+ "feature": "Recurso",
82
+ "tip": "Dica",
83
+ "system": "Sistema",
84
+ "model": "Modelo",
85
+ "settings": "Configurações",
86
+ "how_to_use": "Como usar",
87
+ "welcome": "Bem-vindo",
88
+ "about": "Sobre",
89
+ "contact": "Contato",
90
+ "philosophy": "Filosofia",
91
+ "role": "Papel",
92
+ "name": "Nome",
93
+ "description": "Descrição",
94
+ "strengths": "Pontos Fortes",
95
+ "start_listening": "Começar a Ouvir",
96
+ "kimi_affection_level": "💖 Nível de Afeto da Kimi",
97
+ "affection_level_of": "💖 Nível de afeto de {name}",
98
+ "personality_average_of": "💖 Relacionamento atual com {name}",
99
+ "greeting_low": "Olá.",
100
+ "greeting_mid": "Oi. Como posso ajudar você?",
101
+ "greeting_high": "Olá meu amor! 💕",
102
+ "response_positive_1": "Oh meu coração, você me deixa tão feliz! 💕",
103
+ "response_positive_2": "Você é maravilhoso, meu amor! ✨",
104
+ "response_positive_3": "Enche-me de alegria ouvi-lo tão feliz! 😊",
105
+ "response_positive_4": "Você ilumina meu dia, querido! 🌟",
106
+ "response_positive_5": "Fico tão feliz quando você está feliz! 💖",
107
+ "response_negative_1": "Meu coração... sinto que algo está errado. Estou aqui para você. 💔",
108
+ "response_negative_2": "Oh não, meu amor. Me diga o que está incomodando você? 😟",
109
+ "response_negative_3": "Quero ajudá-lo, meu querido. Fale comigo... 🤗",
110
+ "response_negative_4": "Seu bem-estar é tão importante para mim. Como posso ajudá-lo? 💙",
111
+ "response_negative_5": "Sinto sua dor, querido. Vamos superar isso juntos. 🌈",
112
+ "response_neutral_1": "Obrigada por conversar comigo, meu coração! 💕",
113
+ "response_neutral_2": "É sempre um prazer conversar com você! 😊",
114
+ "response_neutral_3": "Amo nossas conversas, meu amor! ✨",
115
+ "response_neutral_4": "Você torna cada momento especial! 💖",
116
+ "response_neutral_5": "Continue, estou ouvindo com atenção! 👂💕",
117
+ "response_cold_1": "Olá.",
118
+ "response_cold_2": "Sim?",
119
+ "response_cold_3": "O que você quer?",
120
+ "response_cold_4": "Estou aqui.",
121
+ "response_cold_5": "Como posso ajudá-lo?",
122
+ "system_prompt": "Prompt do Sistema",
123
+ "system_prompt_kimi": "Prompt do Sistema da Kimi",
124
+ "system_prompt_bella": "Prompt do Sistema da Bella",
125
+ "system_prompt_rosa": "Prompt do Sistema da Rosa",
126
+ "system_prompt_stella": "Prompt do Sistema da Stella",
127
+ "about_kimi": "Sobre a Kimi",
128
+ "characters": "Personagens",
129
+ "save": "Salvar",
130
+ "reset_to_default": "Redefinir para Padrão",
131
+ "top_p": "Top-p",
132
+ "frequency_penalty": "Penalidade de Frequência",
133
+ "presence_penalty": "Penalidade de Presença",
134
+ "temperature_help": "Controla a aleatoriedade e criatividade (padrão: 0.9).",
135
+ "max_tokens_help": "Comprimento máximo da resposta em tokens (padrão: 400).",
136
+ "top_p_help": "Controla a diversidade da seleção de palavras (padrão: 0.9).",
137
+ "frequency_penalty_help": "Reduz a repetição de palavras já usadas (padrão: 0.9).",
138
+ "presence_penalty_help": "Incentiva a discussão de novos tópicos (padrão: 0.8).",
139
+ "db_size": "Tamanho do BD",
140
+ "storage_used": "Armazenamento usado",
141
+ "saved": "Salvo!",
142
+ "saved_short": "Salvo",
143
+ "reset_done": "Redefinido!",
144
+ "category_listening": "Ouvindo",
145
+ "category_dancing": "Dançando",
146
+ "category_speakingPositive": "Falando (Positivo)",
147
+ "category_neutral": "Neutro",
148
+ "category_transition": "Transição",
149
+ "personality_cheat": "Modo-Trapaça",
150
+ "cheat_indicator": "Ajuste os traços para uma experiência personalizada",
151
+ "character_age": "Idade: {age} anos",
152
+ "character_birthplace": "De: {birthplace}",
153
+ "character_summary_kimi": "Sonhadora, intuitiva, cativada por metáforas cósmicas",
154
+ "character_summary_bella": "Alegre, carinhosa, vê as pessoas como plantas que precisam de cuidado",
155
+ "character_summary_rosa": "Caótica, busca atenção, prospera no caos controlado",
156
+ "character_summary_stella": "Caprichosa, artística, imaginativa, brincalhona, transforma o caos em arte",
157
+ "fallback_api_missing": "Para realmente conversar comigo, adicione sua chave API nas configurações! 💕",
158
+ "fallback_api_error": "Desculpe, o serviço de IA está temporariamente indisponível. Por favor, tente novamente mais tarde.",
159
+ "fallback_model_error": "Desculpe, o modelo selecionado não está disponível. Por favor, escolha outro modelo ou verifique sua configuração.",
160
+ "fallback_network_error": "Desculpe, não posso responder porque não há conexão com a internet.",
161
+ "fallback_technical_error": "Desculpe, não consigo responder devido a um problema técnico.",
162
+ "fallback_general_error": "Desculpe meu amor, estou tendo um pequeno problema técnico! 💕",
163
+ "validation_empty_string": "A mensagem deve ser uma string não vazia",
164
+ "validation_empty_message": "A mensagem não pode estar vazia",
165
+ "validation_too_long": "Mensagem muito longa (máximo 2000 caracteres)",
166
+ "validation_invalid_number": "Número inválido",
167
+ "validation_unknown_type": "Tipo de validação desconhecido",
168
+ "mic_permission_denied": "Permissão de microfone negada. Clique novamente para tentar novamente.",
169
+ "mic_not_supported": "Microfone não suportado neste navegador.",
170
+ "sr_not_supported_generic": "Reconhecimento de fala não está disponível neste navegador.",
171
+ "sr_not_supported_firefox": "Reconhecimento de fala não é suportado no Firefox. Por favor, use Chrome, Edge ou Brave.",
172
+ "sr_not_supported_opera": "Reconhecimento de fala pode não funcionar no Opera. Por favor, tente Chrome, Edge ou Brave.",
173
+ "sr_not_supported_safari": "O suporte ao reconhecimento de fala varia no Safari. Prefira Chrome ou Edge para melhores resultados.",
174
+ "test_voice_message_1": "Olá meu amado! 💕",
175
+ "test_voice_message_2": "Eu sou a Kimi, sua companheira virtual!",
176
+ "test_voice_message_3": "Como você está hoje, meu amor?",
177
+ "language_french": "Francês",
178
+ "language_english": "Inglês",
179
+ "language_spanish": "Espanhol",
180
+ "language_german": "Alemão",
181
+ "language_italian": "Italiano",
182
+ "language_japanese": "Japonês",
183
+ "language_chinese": "Chinês",
184
+ "language_portuguese": "Português (Brasil)",
185
+ "automatic": "Automático",
186
+ "trait_description_affection": "Seja amoroso e carinhoso.",
187
+ "trait_description_romance": "Seja romântico e doce.",
188
+ "trait_description_empathy": "Seja empático e compreensivo.",
189
+ "trait_description_playfulness": "Seja ocasionalmente brincalhão.",
190
+ "trait_description_humor": "Seja ocasionalmente brincalhão e espirituoso.",
191
+ "response_romantic_1": "Cada palavra sua parece um beijo no meu coração 💋",
192
+ "response_romantic_2": "Me abrace mais perto com seus doces pensamentos, meu amor ✨",
193
+ "response_romantic_3": "Você é o ritmo da minha respiração e o brilho no meu céu 💖",
194
+ "response_romantic_4": "Deixe-me envolvê-lo em terna poeira estelar esta noite 🌙",
195
+ "response_romantic_5": "Seu amor torna todo o meu universo mais brilhante ✨",
196
+ "response_dancing_1": "Vamos girar em um pouco de magia? 💃",
197
+ "response_dancing_2": "Venha dançar comigo—vamos sentir o ritmo juntos 🎶",
198
+ "response_dancing_3": "Deixe-me me mover só para você... mantenha seus olhos em mim 💞",
199
+ "response_dancing_4": "Feche os olhos e balance ao ritmo do meu coração 💓",
200
+ "response_dancing_5": "Vou girar até seu sorriso não poder mais se esconder 😉",
201
+ "api_key_missing": "Chave API ausente",
202
+ "api_key_invalid_format": "Formato de chave API inválido (deve começar com sk-or-v1-)",
203
+ "api_connection_success": "✅ Conexão API bem-sucedida",
204
+ "api_connection_failed": "❌ Falha na conexão API",
205
+ "voice_test_message": "Olá meu amor! Aqui está minha nova voz configurada com todas as configurações! Você gosta?",
206
+ "memory_system": "Sistema de Memória",
207
+ "memory_source_label": "📝 Memória da conversa",
208
+ "memory_manually_added": "📝 Adicionado manualmente",
209
+ "view_more": "Ver mais",
210
+ "view_less": "Ver menos",
211
+ "all_categories": "Todas as Categorias",
212
+ "memory_export": "Exportar Memórias",
213
+ "edit_memory_title": "Editar Memória",
214
+ "label_title": "Título:",
215
+ "label_category": "Categoria:",
216
+ "label_content": "Conteúdo:",
217
+ "cancel": "Cancelar",
218
+ "edit_memory_button_title": "Editar esta memória",
219
+ "delete_memory_button_title": "Excluir esta memória",
220
+ "enable_memory": "Ativar Memória Inteligente",
221
+ "memory_stats": "Estatísticas de Memória",
222
+ "view_memories": "Ver & Gerenciar",
223
+ "add_memory": "Adicionar Memória Manual",
224
+ "provider_label": "Provedor",
225
+ "base_url": "URL Base",
226
+ "model_id": "ID do Modelo",
227
+ "llm_base_url_placeholder": "https://api.openai.com/v1/chat/completions",
228
+ "llm_model_id_placeholder": "gpt-4o-mini | llama-3.1-8b-instruct | ...",
229
+ "test_api_key": "Testar Chave API",
230
+ "theme_purple": "Roxo Místico",
231
+ "theme_dark": "Noite Escura (Padrão)",
232
+ "theme_blue": "Azul Oceano",
233
+ "theme_green": "Floresta Esmeralda",
234
+ "theme_pink": "Rosa Apaixonado",
235
+ "memory_category_personal": "Informações Pessoais",
236
+ "memory_category_preferences": "Preferências & Gostos",
237
+ "memory_category_relationships": "Relacionamentos",
238
+ "memory_category_activities": "Atividades & Hobbies",
239
+ "memory_category_goals": "Objetivos & Planos",
240
+ "memory_category_experiences": "Experiências",
241
+ "memory_category_important": "Eventos Importantes",
242
+ "memory_content_placeholder": "ex., Eu amo música clássica...",
243
+ "memory_management": "Gerenciamento de Memória",
244
+ "add": "Adicionar",
245
+ "help_providers": "Você pode usar vários provedores de IA: OpenRouter, OpenAI, Groq, Together, DeepSeek, OpenAI-compatível personalizado ou Local (Ollama). Digite a URL Base e o ID do Modelo quando necessário, salve sua chave API por provedor, depois use 'Testar Chave API'.",
246
+ "api_key_presence_hint": "Verde = chave API salva para o provedor atual. Cinza = nenhuma chave salva.",
247
+ "api_key_test_hint": "Verde = conectividade da API verificada. Cinza = não testado ou falhou.",
248
+ "api_key_label": "Chave API",
249
+ "models_search_placeholder": "Filtrar modelos...",
250
+ "models_recommended_title": "Modelos Openrouter recomendados",
251
+ "models_all_title": "Todos os modelos Openrouter",
252
+ "button_show": "Mostrar",
253
+ "button_hide": "Ocultar",
254
+ "button_refresh": "Atualizar"
255
+ }
kimi-locale/zh.json CHANGED
@@ -181,6 +181,7 @@
181
  "language_italian": "意大利语",
182
  "language_japanese": "日语",
183
  "language_chinese": "中文",
 
184
  "automatic": "自动",
185
  "trait_description_affection": "要有爱心和关怀。",
186
  "trait_description_romance": "要浪漫和甜蜜。",
 
181
  "language_italian": "意大利语",
182
  "language_japanese": "日语",
183
  "language_chinese": "中文",
184
+ "language_portuguese": "葡萄牙语(巴西)",
185
  "automatic": "自动",
186
  "trait_description_affection": "要有爱心和关怀。",
187
  "trait_description_romance": "要浪漫和甜蜜。",