Cómo aplicar color al texto en Markdown
Quiero usar Markdown para almacenar información textual. Pero una búsqueda rápida en Google dice que Markdown no admite color. Además, Stack Overflow no admite color. Igual que en el caso de la rebaja de GitHub.
¿Existe algún tipo de rebajas que permita texto en color?
TL;DR
Markdown no admite color, pero puede insertar HTML dentro de Markdown, por ejemplo:
<span style="color:blue">some *blue* text</span>.
respuesta más larga
Como establecen las reglas de sintaxis originales/oficiales (énfasis añadido):
La sintaxis de Markdown tiene un propósito: usarse como formato de escritura para la web.
Markdown no reemplaza a HTML, ni siquiera se acerca a él. Su sintaxis es muy pequeña y corresponde sólo a un subconjunto muy pequeño de etiquetas HTML. La idea no es crear una sintaxis que facilite la inserción de etiquetas HTML. En mi opinión, las etiquetas HTML ya son fáciles de insertar. La idea de Markdown es facilitar la lectura, escritura y edición de prosa. HTML es un formato de publicación; Markdown es un formato de escritura. Por lo tanto, la sintaxis de formato de Markdown solo aborda cuestiones que pueden transmitirse en texto plano .
Para cualquier marcado que no esté cubierto por la sintaxis de Markdown, simplemente use HTML.
Como no es un "formato de publicación", proporcionar una forma de colorear el texto está fuera del alcance de Markdown. Dicho esto, no es imposible ya que puedes incluir HTML sin formato (y HTML es un formato de publicación). Por ejemplo, el siguiente texto de Markdown (como lo sugiere @scoa en un comentario):
Some Markdown text with <span style="color:blue">some *blue* text</span>.
Resultaría en el siguiente HTML:
<p>Some Markdown text with <span style="color:blue">some <em>blue</em> text</span>.</p>
Ahora, StackOverflow (y probablemente GitHub) eliminará el HTML sin formato (como medida de seguridad) para que pierda el color aquí, pero debería funcionar en cualquier implementación estándar de Markdown.
Otra posibilidad es utilizar las Listas de Atributos no estándar introducidas originalmente por la implementación Markuru de Markdown y luego adoptadas por algunos otros ( puede haber más implementaciones, o ligeramente diferentes, de la misma idea, como los atributos div y span en pandoc ). En ese caso, podría asignar una clase a un párrafo o elemento en línea y luego usar CSS para definir un color para una clase. Sin embargo, es absolutamente necesario que esté utilizando una de las pocas implementaciones que realmente admitan la función no estándar y sus documentos ya no serán portátiles a otros sistemas.
Cuando quieras usar Markdown puro (sin HTML anidado), puedes usar Emojis para llamar la atención sobre algún fragmento del archivo, es decir, ⚠️ ADVERTENCIA ⚠️, 🔴 IMPORTANTE ❗🔴 o 🔥 NUEVO 🔥.
Comencé a usar Markdown para publicar algunos de mis documentos en un sitio web interno para usuarios internos. Es una manera fácil de compartir un documento pero el espectador no puede editarlo.
Entonces, esta marca de texto en color es "Excelente". He usado varios como este y funciona de maravilla.
<span style="color:blue">some *This is Blue italic.* text</span>
Se convierte en Esto es azul en cursiva.
Y
<span style="color:red">some **This is Red Bold.** text</span>
Se convierte en Esto es rojo negrita.
Me encanta la flexibilidad y facilidad de uso.
Me gusta la idea de redefinir las etiquetas existentes si no se utilizan debido al hecho de que el texto está más limpio, a expensas de las etiquetas existentes. El estilo en línea funciona pero crea mucho ruido al leer el texto sin formato.
Usando VSCode descubrí que las etiquetas personalizadas de una sola letra, respaldadas por una pequeña <style>
sección en la parte superior, funcionan bien con un mínimo de ruido, especialmente para colores planos, por ejemplo.
<style>
r { color: Red }
o { color: Orange }
g { color: Green }
</style>
# TODOs:
- <r>TODO:</r> Important thing to do
- <o>TODO:</o> Less important thing to do
- <g>DONE:</g> Breath deeply and improve karma
Mi caso de uso es la toma de notas en la aplicación en modo org durante el desarrollo, pero supongo que podría funcionar en otros lugares.
Si bien Markdown no admite colores, si no necesita demasiados, siempre puede sacrificar algunos de los estilos admitidos y redefinir la etiqueta relacionada usando CSS para darle color y también eliminar el formato, o no.
Ejemplo:
// resets
s { text-decoration:none; } //strike-through
em { font-style: normal; font-weight: bold; } //italic emphasis
// colors
s { color: green }
em { color: blue }
Ver también: Cómo cambiar el estilo de la etiqueta em para que esté en negrita en lugar de cursiva
Luego en su texto de rebajas
~~This is green~~
_this is blue_