Plugin multilíngue 🌐

Eu também, minha versão do Discourse é 3.5.0.beta2-dev, discourse-multilingual é a mais recente


Backtrace

app/controllers/extra_locales_controller.rb:39:in `bundle_js_hash'
plugins/discourse-multilingual/extensions/extra_locales_controller.rb:25:in `bundle_js_hash'
app/controllers/extra_locales_controller.rb:44:in `url'
plugins/discourse-multilingual/lib/multilingual/locale_loader.rb:26:in `preload_custom_locale'
plugins/discourse-multilingual/plugin.rb:76:in `block (2 levels) in activate!'
lib/plugin/instance.rb:729:in `block in register_html_builder'
lib/discourse_plugin_registry.rb:230:in `block in build_html'
lib/discourse_plugin_registry.rb:230:in `map'
lib/discourse_plugin_registry.rb:230:in `build_html'
app/helpers/application_helper.rb:572:in `build_plugin_html'
app/views/layouts/application.html.erb:24

Alguém sabe como resolver este problema?

1 curtida

Estou usando o arquivo de configuração custom names.yml para alterar de Einglish (EUA) para Einglish, mas quebrou com o erro Oops. Rastreamento de pilha:

ActionView::Template::Error (Bundle desconhecido: custom-language)
app/controllers/extra_locales_controller.rb:39: in `bundle_js_hash'
app/controllers/extra_locales_controller.rb:44: in `url'
lib/plugin/instance.rb:729: in `block in register_html_builder'
lib/discourse_plugin_registry.rb:230: in `block in build_html'
lib/discourse_plugin_registry.rb:230: in `map'
lib/discourse_plugin_registry.rb:230: in `build_html'
app/helpers/application_helper.rb:572: in `build_plugin_html'
app/views/layouts/application.html.erb:24
lib/topic_list_responder.rb:15: in `block (2 níveis) em respond_with_list'
lib/topic_list_responder.rb:8: in `respond_with_list'
app/controllers/list_controller.rb:347: in `block (2 níveis) em 4class:ListController	'
app/controllers/list_controller.rb:316: in `public_send'
app/controllers/list_controller.rb:316: in `top'
app/controllers/application_controller.rb:427: in `block in with_resolved_locale'
app/controllers/application_controller.rb:427: in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35: in `call'
lib/content_security_policy/middleware.rb:12: in `call'
lib/middleware/anonymous_cache.rb:409: in `call'
lib/middleware/csp_script_nonce_injector.rb:12: in `call'
config/initializers/008-rack-cors.rb:14: in `call'
lib/middleware/default_headers.rb:13: in `call'
config/initializers/100-quiet_logger.rb:20: in `call'
config/initializers/100-silence_logger.rb:29: in `call'
lib/middleware/enforce_hostname.rb:24: in `call'
lib/middleware/processing_request.rb:12: in `call'
lib/middleware/request_tracker.rb:385: in `call'
1 curtida

Após atualizar o Discourse, ele agora exibe um banner com

[Aviso do Administrador] Um dos seus temas ou plugins precisa ser atualizado para compatibilidade com as próximas alterações principais do Discourse. (id:discourse.component-template-overrides) Plugin identificado: ‘discourse-multilingual’

Então, imagino que algumas mudanças técnicas neste plugin serão necessárias antes de junho de 2025.

5 curtidas

Alguma atualização sobre isso dos desenvolvedores?

1 curtida

Alguma ideia do porquê meu Fórum mudou o idioma para inglês quando o plugin multilíngue foi ativado? Desativei o plugin e ele ainda está em inglês

1 curtida

Consegui seguir com sucesso este guia para adicionar traduções para categorias.
Mas não consegui obter traduções para tags.

Aqui está o que tenho em um arquivo tag.ja.yml:

discussions: ディスカッション
questions: 質問
self-intro: 自己紹介
showcase: 作ってみた
other: その他
guidelines: ガイドライン
updates: 新着

E o resultado foi este abaixo ao mudar o idioma da interface para japonês.

Qualquer ajuda seria apreciada, obrigado!

1 curtida

@angus Alguma forma de corrigir as vírgulas duplas? @Arkshine encontrou a correção aqui removendo o CSS antigo:

1 curtida

Meu Discourse está travado no carregamento. Assumo que seja o bug de alterações técnicas?

Post: Discourse Stuck on Loading (Logs) - #6 by joshhabka

1 curtida

@angus Você sabe como remover completamente todos os arquivos/configurações remanescentes deste plugin multilíngue?

1 curtida

@Angus Por favor, veja o novo erro com o plugin: “500” ao salvar uma postagem ao adicionar uma tag de idioma. Obrigado pelo desenvolvimento deste plugin :slight_smile:

1 curtida

Olá,

Tentei instalar o plugin Multilingual no meu fórum Discourse local.
Clonei-o com o seguinte comando na pasta de plugins:

git clone https://github.com/paviliondev/discourse-multilingual

Mas não consigo encontrar a aba Multilingual nas minhas configurações de administrador. Ela aparece apenas no menu de plugins, mas não contém todas as configurações. O que posso fazer?

Ele exibe este aviso de Depreciação:
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_*. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!

log do servidor local
  • Executando tarefa: bin/rake db:create db:migrate

Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!
Banco de dados ‘discourse_development’ já existe

  • O terminal será reutilizado por tarefas, pressione qualquer tecla para fechar.

  • Executando tarefa: bin/ember-cli -u

Escopo: todos os 16 projetos do workspace
Arquivo de bloqueio está atualizado, etapa de resolução é ignorada
Já está atualizado
Concluído em 1.4s usando pnpm v9.15.7
Ember CLI rodando no PID: 57615
I, [2025-04-25T12:45:00.214872 #57627] INFO – : Atualizando lista de Gems
Iniciando observador de alterações de CSS
[ember-cli] A configuração ‘staticAddonTrees’ terá o valor padrão true na próxima versão do Embroider e não poderá ser desativada. Para se preparar para isso, você deve definir ‘staticAddonTrees: true’ em sua configuração do Embroider.
[ember-cli] A configuração ‘staticAddonTestSupportTrees’ terá o valor padrão true na próxima versão do Embroider e não poderá ser desativada. Para se preparar para isso, você deve definir ‘staticAddonTestSupportTrees: true’ em sua configuração do Embroider.
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_
. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Aviso de Depreciação: add_to_serializer não deve ser usado para substituir diretamente os métodos include_*. Use o argumento de palavra-chave include_condition em vez disso
Em /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!
I, [2025-04-25T12:45:03.044278 #57627] INFO – : ouvindo em addr=127.0.0.1:3000 fd=29
[ember-cli] Encaminhando para http://127.0.0.1:3000
[ember-cli] construindo…
I, [2025-04-25T12:45:04.243153 #57627] INFO – : iniciando 1 sidekiqs supervisionados
[ember-cli] …[ConfigLoader]
I, [2025-04-25T12:45:04.554744 #57627] INFO – : processo mestre pronto
I, [2025-04-25T12:45:04.667840 #57910] INFO – : Carregando Sidekiq no id do processo 57910
I, [2025-04-25T12:45:04.680493 #57914] INFO – : worker=0 pronto
I, [2025-04-25T12:45:04.686440 #57919] INFO – : worker=1 pronto
I, [2025-04-25T12:45:04.686445 #57924] INFO – : worker=2 pronto
[ember-cli] …[Babel: discourse-widget-hbs > applyPatches]
[ember-cli] …[Babel: ember-source > applyPatches]
[ember-cli] …[Babel: dialog-holder > applyPatches]
[ember-cli] …[embroider-template-compile-stage1 > applyPatches]
[ember-cli] …[Babel: select-kit > applyPatches]
[ember-cli] …[@embroider/compat/app]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: admin > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[TemplateCompiler > applyPatches]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[TemplateCompiler > applyPatches]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli]
[ember-cli] Construção bem-sucedida (31766ms) – Servindo em http://localhost:4200/
[ember-cli]
[ember-cli] Nós Mais Lentos (totalTime >= 5%) | Total (média)
[ember-cli] -±-
[ember-cli] @embroider/webpack (1) | 21608ms
[ember-cli] Babel: discourse-plugins (29) | 4506ms (155 ms)
[ember-cli] broccoli-persistent-filter:Mapper (36) | 1628ms (45 ms)
[ember-cli]
[ember-cli] (node:57634) [DEP0060] Aviso de Depreciação: A API util._extend está obsoleta. Use Object.assign() em vez disso.
[ember-cli] (Use node --trace-deprecation ... para mostrar onde o aviso foi criado)

2 curtidas

Isso causou um aplicativo corrompido, você deve atualizar para o mais recente:

Tive que desabilitar este plugin devido ao seguinte erro:

ActionView::Template::Error (O asset 'locales/i18n.js' não foi encontrado no load path.)

locales/i18n.js foi removido em PERF: Compile main locale bundles just-in-time (#32335) · discourse/discourse@c62a4a4 · GitHub

2 curtidas

Oi @angus,

Você tem alguma atualização sobre quando uma versão compatível com o Discourse 3.4 estará disponível?

Atualmente, estamos tentando instalar o plugin na nossa instância do Discourse 3.4.3, mas estamos enfrentando vários erros devido a incompatibilidades.

Obrigado antecipadamente pela sua ajuda!

Devido a PERF: Compile main locale bundles just-in-time (#32335) · discourse/discourse@c62a4a4 · GitHub, o discourse-multilingual não pode ser usado. Você tem um plano para corrigir isso?

3 curtidas

Olá - em relação à alteração da interface do usuário de configurações do Admin, onde podemos inserir os arquivos de tradução?

Usei uma tag, em vez deste plugin. Mas está apenas no filtro de tags.

Acho que isso deveria ser um fork para atualizar a origem, o autor está congelado há muito tempo…

Embora este plug-in esteja congelado, vale a pena notar que as versões mais recentes do Discourse permitem a localização de nomes/descrições de categorias, bem como localizações de tópicos individuais como um recurso base do Discourse, incluindo manualmente c:

Como tal, é compreensível que este plug-in não seja mais suportado, pois os recursos que ele trouxe estão quase todos disponíveis por padrão no Discourse.

EDIT: Como um aviso, nem todos os recursos multilíngues atuais estão nativamente disponíveis no Discourse no momento, por exemplo:

  • Você não pode ocultar tópicos nas diferentes páginas de tópicos de categorias de acordo com a configuração Content Languages em qualquer perfil de usuário.

Ainda é um grande avanço em recursos, mas um aviso antes de atualizar sua instância.

4 curtidas