Pregunta GitHub satánicamente jugando con Markdown: cambia 666 a DCLXVI


Mi repositorio de GitHub no tiene nada más que un archivo Léame. En este archivo Léame, localmente escribí esto:

Factoids:
 - There are about six different ways to do everything in Forked.
 - There are actually six different ways to enter loops.
 - There are six directionals and six I/O commands.
 - 666. ha.

Énfasis en la última línea. Lo que GitHub decidió mostrar fue no  666.

dclxvi

DCLXVI es el número Numeral Romano para 666.

Esto realmente me asustaba. Mi archivo local y el archivo raw ambos muestran 666.

¿Qué está haciendo GitHub y por qué la sangría en la lista no numerada está mal? ¿Es esto un huevo de Pascua, o algún insecto satánico?


584
2018-06-18 20:18


origen


Respuestas:


Esto parece ser seguido por github / markup issue 991, donde en la sublista ordenada, los numerales decimales se convierten automáticamente en números romanos.

He encontrado la causa del problema. Es CSS

Esta es la forma esperada para que las listas ordenadas anidadas se procesen en HTML.

Esto no se espera en HTML. https://jsfiddle.net/tf5jtv8s

No hacemos ninguna modificación al comportamiento HTML predeterminado.

ol ol,ul ol{list-style-type:lower-roman}

No sé CSS, pero tengo entendido que esta es la causa del problema. Puedo obtener el resultado esperado al deshabilitar CSS. (Soy de mi celular, así que no puedo usar el inspector del navegador)

Como se menciona en "Una especificación formal para GitHub Flavoured Markdown", Especificación de reducción de GitHub GFM: GitHub Flavoured Markdown Spec está construido en la parte superior de la CommonMark Spec.

Y como Tommi Kaikkonen mencionado en su respuesta, la lista ordenada se debe al punto que sigue a 666. Ver Especificación GFM sección 5.2.

Como se menciona en sección 6.1, cualquier caracter de puntuación ASCII puede tener una barra invertida escapada, para evitar este problema.
Eso significa:

- 666\. ha.

(como se muestra explícitamente en Para nuncaes responder)

Es por eso que 666 el número se cambia a números romanos en un GitHub README reducción.


Mike Lippert comentado:

el primer elemento en esa lista, por lo que debe mostrar como i no dclxvi.
  Las listas ordenadas de rebajas ignoran el número real utilizado y el número secuencialmente, y no he visto una forma de cambiar eso.

Sin embargo, no: muestra dclxvi, porque el código html generado es <ol start="666">, que es consistente con las especificaciones GFM:

Si el elemento de la lista está ordenado, también se le asigna un número de inicio, en función del marcador de la lista ordenada "

(aquí, '666'es el marcador de la lista ordenada)

Mike agrega:

@VonC Para cualquier otra persona aquí hay otro fragmento útil del enlace de documentación de VonC:

"El número de inicio de una lista ordenada está determinado por el número de lista de su elemento de lista inicial. Los números de elementos de lista subsiguientes no se tienen en cuenta".


Además, ¿por qué se espacia el espaciado? No entendí eso en tu respuesta

Obtienes una lista ordenada <ol> dentro de una lista no ordenada ít  <li>:

<ul>
  <li>
    <ol start="666">
      <li>ha.</li>
    </ol>
  </li>
</ul>

Las reglas de GitHub CSS incluyen:

.markdown-body ol {
    padding-left: 2em;
}

Si pones 3em, obtendrías
correct padding
en lugar de
wrong padding


384
2018-06-18 20:31



Agregar un período después 666 lo hace un marcador de lista ordenada.

GitHub declara CSS que representa marcadores de lista ordenados usando números romanos:

ol ol,ul ol {
    list-style-type: lower-roman
}

Escape el período con una barra diagonal inversa, y debería ver la salida correcta.


356
2018-06-18 20:34



Mientras que otras respuestas son buenas para explicar por qué usted tiene el problema, no le han dado un ejemplo exacto de cómo fijar ese.

Y parece que ya lo has resuelto de manera imperfecta, reemplazando su texto con

- `666`. ha.

Hay un truco común para escapar del punto después del número para que parezca un texto normal (y no una etiqueta de lista ordenada):

- 666\. ha. (this will render as you probably want)

67
2018-06-19 06:46