Problema de MyCode ao importar banco de dados MyBB

Estou no processo de migrar um fórum MyBB para o Discourse.
Percebo que, nas postagens importadas, muitas (mas não todas) contêm tags de formatação MyCode visíveis.

Exemplo (também há aparentes problemas de codificação de caracteres UTF-8, que são objeto de um tópico separado):

TTTThao Nguyen

Jul '18

[quote=“admin, post:4, topic:1297”]

[quote=“Bruce Mitchinson, post:3, topic:1297”]

Contrate um bom arquiteto.
[/quote]

Um pouco duro aí, Bruce?

Dependendo das alturas relativas entre as estruturas, que tal formar uma série de vigas de ligação como uma espécie de pérgula entre elas? E/ou talvez algo com tecido tensionado para que você possa passar de um para o outro sem se molhar?
[/quote]

Obrigado, Paul. Não tenho certeza se isso funcionaria com base na resposta deles abaixo:

[color=#222222][size=medium][size=small][font=Calibri, sans-serif]Não se trata de saber se as escadas são consideradas ou não uma edificação; minha consulta não visa descartar isso, mas sim a natureza da ligação entre as duas edificações para determinar se são uma ou duas.[/font][/size][/size][/color]
[color=#222222][size=medium][size=small][font=Calibri, sans-serif] [/font][/size][/size][/color][color=#222222][size=small][font=Calibri, sans-serif]Não há conexão interna ou acesso entre as duas edificações, portanto não é interpretada como uma única edificação/compartimento contra incêndio.[/font][/size][/color]
[color=#222222][size=medium][size=small][font=Calibri, sans-serif] [/font][/size][/size][/color][color=#222222][size=small][font=Calibri, sans-serif]Portanto, aplica-se o C/AS1 5.1.2[/font][/size][/color]

Então, o “acesso interno” é o fator decisivo… embora eu tenha certeza de ter visto várias garagens etc. anexadas à casa sem acesso interno que não exigem classificação contra incêndio. (Para registro, temos um engenheiro de incêndio neste projeto, mas parece que nem mesmo eles levam em conta o que ele diz!!) Talvez eu precise contratar um bom engenheiro de incêndio também!!! :-/

De qualquer forma, obrigado por sugerir que eu publicasse neste fórum. Agradeço muito o conselho e o apoio!!

Como é possível analisar esses dados para que a formatação pretendida (que parece correta no MyBB), e não as tags de formatação, apareçam no Discourse, na medida do possível?

Estou supondo que o problema seja, pelo menos em parte, que o Discourse não suporta texto com fonte, tamanho e cor selecionados pelo usuário?

[color=#222222][size=medium][size=small][font=Calibri, sans-serif]

Ou o que eu assumo serem quebras de linha forçadas:

[hr]

Não tenho nenhum problema específico com o fato de o Discourse não suportar múltiplas fontes etc. em si, mas seria bom se houvesse uma maneira de filtrar de forma limpa, durante a importação, quaisquer tags de formatação inutilizáveis.

Instalei o GitHub - discourse/discourse-bbcode: vBulletin BBCode plugin · GitHub na esperança de que isso ajudasse, mas parece que esse plugin não está mais funcionando na versão atual do Discourse.

Da mesma forma, quando uma tag MyCode referencia uma imagem anexada (que estava em linha com o texto no original do MyBB), como fazer com que esse anexo apareça em linha com o texto, em vez de aparecer apenas a tag?

Você pode dar uma olhada no importador do vBulletin, que faz várias substituições de tags desse tipo. Também existe um plugin bbcode que suportará muitos deles.

Com as citações, você precisa ter certeza de que há quebras de linha antes da abertura e após o fechamento das tags.

Tive o mesmo problema ao importar um fórum PhpBB muito antigo (2002) e adicionei várias expressões regulares ao importador para remover (ou talvez substituir, em alguns casos) essas tags BBCode. No final, funcionou muito bem.

Também tive o problema com [quotes] quando precisei “mover” eles para sua própria linha para serem exibidos corretamente com markdown.

Encontrei isso em alguns registros pessoais; acredito que seja o que consegui para esse problema específico:

text.gsub!(/(\[\/?quote.*?\])/mi) { |q| "\n#{q}\n" }

Pelo que escrevi na época, funcionou para todas as citações em 150.000 mensagens, exceto… 57 citações por motivos desconhecidos, e um número tão pequeno de citações com falha realmente não importava. Eu poderia até corrigi-las manualmente.

O importador do vBulletin possui várias substituições para diversas versões de citações. Inclui até mesmo uma que obtém o número da postagem para uma referência adequada.