# Realce automático de código quebrado na visualização de código em tela cheia

**URL:** <https://meta.discourse.org/t/automatic-code-highlighting-broken-in-fullscreen-code-view/304879>\
**Category:** Bug\
**Created:** [22 Abril , 2024 09:52 UTC](https://meta.discourse.org/t/automatic-code-highlighting-broken-in-fullscreen-code-view/304879 "2024-04-22T09:52:20Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)\
**Post date:** [22 Abril , 2024 13:27 UTC](https://meta.discourse.org/t/automatic-code-highlighting-broken-in-fullscreen-code-view/304879/3 "2024-04-22T13:27:37Z")

</div>

Acho que o problema está aqui 🤔 :

[https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/lib/highlight-syntax.js#L36-L52](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/lib/highlight-syntax.js#L36-L52)

Você tem o nome da classe `lang-auto` aplicado com código markdown e removido automaticamente aqui para que a biblioteca possa adivinhar o idioma.

No entanto, quando você entra em tela cheia, `lang-auto` não está mais no elemento, e você tem apenas o nome da classe `language-<idioma-detectado-aqui>`. Assim, `lang` é indefinido.

Uma possível correção poderia ser aqui – se `lang-auto` não for encontrado, procure por `language-<...>`.

`const m = className.match(/^lang-(.+)$/);`  
 →   
`const m = className.match(/^`(?:lang|language)-(.+)$/);`

---

_[View the full topic](https://meta.discourse.org/t/automatic-code-highlighting-broken-in-fullscreen-code-view/304879)._
