Syntax-highlighting Code Block (with Server-side Rendering)

Descripción

Este plugin extiende el bloque de código del núcleo de WordPress para agregar resaltado de sintaxis que se renderiza en el servidor. Los bloques de código preexistentes en un sitio se extienden automáticamente para incluir el resaltado de sintaxis. Realizar el resaltado de sintaxis en el servidor elimina la necesidad de cargar cualquier JavaScript en el frontend (por ejemplo, Highlight.js o Prism.js), lo que garantiza que no haya un flash de código sin resaltar (¿FOUC?). Reducir los scripts en el frontend mejora el rendimiento del mismo y también permite que el código con resaltado de sintaxis aparezca correctamente en las páginas AMP, tal como las renderiza el plugin oficial de AMP (consulta también ampproject/amp-wp#972), o cuando el JavaScript está desactivado en el navegador.

Este bloque de código extendido utiliza la detección automática de lenguaje para agregar resaltado de sintaxis, pero puedes sobrescribir el lenguaje en la barra lateral de configuración del bloque. (Actualmente, no hay resaltado de sintaxis del bloque de código en el editor, pero consulta el problema #8.) El plugin es compatible con todos los lenguajes de programación que soporta highlight.php (una adaptación de highlight.js). El bloque de código también se extiende para permitir especificar líneas a resaltar, que se marcan con elementos mark (incluido en feeds RSS). Además, hay una casilla de verificación para mostrar u ocultar los números de línea en el frontend (los números no son seleccionables). Por último, dado que hay inconsistencias entre temas en cuanto a si las líneas de un bloque de código deben envolverse, este plugin agrega estilos para evitar el ajuste de línea por defecto, con una casilla de verificación para activar el ajuste cuando se desee.

Para uso avanzado, por favor ve la wiki del plugin.

Este plugin se desarrolla en GitHub. Consulta la lista de problemas actuales del plugin. Siéntete libre de reportar cualquier problema adicional o solicitud que encuentres. Las pull requests son bienvenidas. Consulta la información para contribuir.

Créditos

Este es un fork de Code Syntax Block de Marcus Kazmierczak (mkaz), que también está disponible en WordPress.org. Copyright (c) 2018 Marcus Kazmierczak. Licenciado bajo GPL 2.0 o posterior.

highlight.php es lanzado bajo la licencia BSD 3-Clause. Copyright © 2006-2013, Ivan Sagalaev (maniac@softwaremaniacs.org), highlight.js (autor original). Copyright © 2013, Geert Bergman (geert@scrivo.nl), highlight.php

Capturas

  • Los bloques de código se pueden agregar del modo usual, anulando opcionalmente el idioma auto-detectado. También especifica cualquier línea que deba ser destacada, si se deben mostrar los números de las línea, y que líneas deben ser cerradas.
  • El bloque de código se renderiza con resaltado de sintaxis en el frontend sin necesidad de cargar ningún JavaScript. Las hojas de estilo se añaden solo cuando el bloque está presente en la página.

Reseñas

3 de junio de 2023 1 respuesta
missed just a download and/or copy button. also for theme, maybe is best to update “usage instruction”! only after some search I understood can be changed via customized menu. anyway, looks so good. ty.
13 de julio de 2022 1 respuesta
I confess, I’ve been a happy user of Code Syntax Block for quite a while — a plugin which the author, Weston Router, clearly states that Syntax Highlighting (Code Block) is based upon. Alas, however, all the pages I had with the older plugin would suffer from an inevitable rendering slowdown — there is so much Javascript on web pages these days that such a slowdown is inevitable, and this is especially true to those scripts that attempt to recognise the language automatically — something that will consume plenty of CPU cycles on the browser. Parsing the language is also no mean feature by itself (I know, I’ve been doing some experiments for some code editors, and, believe me, it’s tough!). So why force the end-user to bear the burden of all that work? It makes much more sense to pre-render everything on the server, and then let the web server send the already-parsed HTML from its cache. That way, the end-user will already have everything on their browser, no need to wait for parsing! Also, if you ‘forget’ to set the language that your code is in (it happens…), the auto-detecting feature will only run on the server, and just once, when you save the post you’re writing. Even if it takes a fraction of a second more to save, think of how much time all those users will save when they get the already-rendered page! So, this plugin is definitely recommended. As a bonus: if you are already using some sort of code block on your WP setup, once you turn off whatever plugin you were using, Syntax Highlighting (Code Block) will immediately pick it up and start its magic (you might need to open and save all the pages you’ve got code on, though — I’m not quite sure if that’s really the case). That means zero effort (beyond saving) — what you already had will continue to work. And, naturally enough, when you disable this plugin, your code block will just revert to the internal WP code block instead — nothing will be ‘lost’ that way! If you’re still hesitant and reading this to the end… while you wasted your time here, think of how many of your users would have saved their time if you already had this plugin installed 🙂
19 de abril de 2022
No agrega bloques nuevos a WordPress, ya que potencia el bloque de código existente. Soporta gran cantidad de Lenguajes, puedes mostrar líneas y marcar ciertas partes del código. ¡Vaya todo lo que necesito! Y no hay que configurar nada!
Leer todas las 26 reseñas

Colaboradores y desarrolladores

«Syntax-highlighting Code Block (with Server-side Rendering)» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Syntax-highlighting Code Block (with Server-side Rendering)» ha sido traducido a 8 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce «Syntax-highlighting Code Block (with Server-side Rendering)» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

Para la bitácora de cambios del plugin, por favor, consulta la página de versiones en GitHub.