Change highlight.js styles?

I have customized the colors of my Discourse instance to use a dark background color, however syntax highlighting does not look good anymore.

What is the easiest way to tell highlight.js to use a different style?

Admin, customize, css

Oh right, thanks Jeff.

Unfortunately it looks like it isn’t working correctly.

I copy/pasted the CSS from the Agate theme to a new section in Admin / Customize / CSS:

However I get the following results:

(Link to the page: Some thoughts on beta 1.4 - appleseed Users Forum)

Notice that the .hljs-string color is #f99 which does not match the declared style of this class in the Agate theme:

.hljs-string,
.hljs-bullet {
  color: #a2fca2;
}

Not sure what I’m doing wrong. Any clue?

Looks like I would need to add !important to each CSS property…

Is anyone aware of a better solution?

Edit: it doesn’t look like the !important solution would even work…

Nope, it’s because the default has a higher specificity - .hljs-tag .hljs-string . You need to replicate the theme’s rule with that selector.

Thanks @riking, I hadn’t seen this.

Unfortunately that means it’s basically impossible to try highlight.js themes (from their demo page) to find one that fits the color palette of my Discourse instance without inspecting and tweaking them, one rule at a time…

So I guess my original question remains: what’s the (second) easiest way to try an highlight.js theme with Discourse?

Solo quiero recordar esto por si alguien más ha encontrado una buena forma de importar estilos más agradables y coloridos para el resaltado de sintaxis del código. Algo que se parezca más a la vista de un editor de código moderno.

El CSS personalizado sería una solución aceptable; me pregunto si alguien ha colocado CSS adecuado en un CDN para importar o si existe un componente de tema.

Estoy de acuerdo, es bastante engorroso sobrescribir lo que tenemos. Resaltar los ships con una gran cantidad de temas en:

Un tema personalizado ciertamente puede darle un aspecto único a un sitio:

@Johani, ¿tal vez deberíamos hacer un howto que explique cómo tomar el CSS de el repositorio oficial, transformarlo y hacerlo funcionar con nuestro CSS?

He creado un componente de tema que permite a los administradores seleccionar un tema de hljs desde un menú desplegable. Más detalles aquí