GitHub, Markdown ile şeytani bir şekilde uğraşıyor - 666'yı DCLXVI olarak değiştiriyor


729

GitHub veri havuzumda bir beniokudan başka bir şey yok. Bu benioku, yerel olarak şunu yazdım:

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.

Son hatta vurgu. GitHub'ın göstermeye karar verdiği şey değildi 666 .

dclxvi

DCLXVI666 için Romen Rakamı numarasıdır .

Bu beni gerçekten korkuttu. Yerel dosyam ve ham dosyam gösteriliyor 666.

GitHub ne yapıyor ve numaralandırılmamış listedeki girinti neden berbat? Bu bir Paskalya yumurtası mı yoksa şeytani bir böcek mi?


15
Eğer doğru görürsem - 5. whateverdönüşmesi gerektiğini denedin mi·V whatever
Hans Koch

8
Sadece kendimi test ettim
Noah Cristino

27
@ immibis mermi için tire kullanarak standart işaretleme değil mi?
ESR

16
@EdmundReed İç içe liste gösterimi standart işaretleme de değil mi?
user253751

4
Gerçek Latin numarası için de endişelenmeyin. Bu sayı muhtemelen bir çeviri hatası nedeniyle ortak anlayışın ne olduğu anlamına gelmez.

Yanıtlar:


474

Bunu , sıralı alt listede ondalık sayıların otomatik olarak romen rakamlarına dönüştürdüğü github / işaretleme sorunu 991 izliyor gibi görünüyor .

Sorunun nedenini buldum. CSS

Bu, iç içe sipariş listelerinin HTML'de oluşturulması için beklenen yoldur.

HTML'de bu beklenmiyor. https://jsfiddle.net/tf5jtv8s

Varsayılan HTML davranışında herhangi bir değişiklik yapmıyoruz.

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

CSS bilmiyorum ama benim anlayışım sorunun nedeni bu. CSS'yi devre dışı bırakarak beklenen sonucu elde edebilirim. (Cep telefonumdayım, bu yüzden tarayıcı denetçisini kullanamıyorum)

" GitHub Aromalı Markdown için resmi bir spesifikasyon " bölümünde belirtildiği gibi , GitHub markdown spec GFM: GitHub Flavored Markdown Spec , CommonMark Spec .

Ve Tommi Kaikkonen belirtilen onun cevabı , sıralı liste nedeniyle 666 Bkz aşağıdaki noktanın olduğu GFM Spec bölüm 5.2 .

Bölüm 6.1'de belirtildiği gibi , bu sorunu önlemek için herhangi bir ASCII noktalama işareti ters eğik çizgiden kaçabilir.
Bunun anlamı:

- 666\. ha.

(açıkça görüldüğü gibi ForNeVeR 'ın cevabı )

Bu nedenle, bu 666sayı GitHub işaretlemesinde romen rakamlarıyla değiştirilir README.


Mike Lippert yorum yaptı:

Listedeki ilk öğe, bu nedenle igörünmemelidir dclxvi.
Markdown sıralı listeler, kullanılan gerçek sayıyı ve sırayla sayıyı yok sayar ve bunu değiştirmenin bir yolunu görmedim.

Ancak, no: gösterir dclxvi, çünkü oluşturulan html kodu, GFM özellikleri<ol start="666"> ile tutarlı :

Liste öğesi sipariş edilirse, sipariş edilen liste işaretleyicisine dayalı olarak bir başlangıç ​​numarası da atanır "

(burada, ' 666' sıralı liste işaretleyicisidir)

Mike ekliyor:

@VonC Herkes için VonC'nin doc bağlantısından başka bir yararlı alıntı:

"Sıralı bir listenin başlangıç ​​numarası, ilk liste öğesinin liste numarası ile belirlenir. Sonraki liste öğelerinin sayısı dikkate alınmaz."


Ayrıca, boşluk neden bozuldu? Cevabında bunu yakalamadım

<ol>Sıralanmamış bir liste öğesinde sıralı bir liste alırsınız <li>:

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

GitHub CSS kuralları şunları içerir:

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

Eğer koyarsanız 3em, yerine
doğru dolgu

yanlış dolgu


10
@MDXF Bir noktanın ardından gelen sayı, sıralanmamış liste öğesiyle ('-') aynı satırda sıralı bir listeye dönüştürüldüğünden şüpheleniyorum . Normalde, <li> ve <ol> 'un aynı satırda oluşturulması beklenmemektedir ...
VonC

@ MDXF Cevabı yanlış aralığa neden olan tam CSS kuralıyla düzenledim.
VonC

2
Aslında ben çıktı ya duymadım bir markdown geliştirme ya da bir hata olduğunu düşünüyorum. Evet - 0,666 gibi göstermesi gerekir böylece sıralı bir alt liste, ANCAK, bu listede 1 unsurdur olduğunu ben değil dclxvi . Markdown sıralı listeler, kullanılan gerçek sayıyı ve sırayla sayıyı yok sayar ve bunu değiştirmenin bir yolunu görmedim.
Mike Lippert

2
@MikeLippert no, dclxvi'de gösterilir, çünkü oluşturulan html kodu github.github.com/gfm/#list-items<ol start="666"> ile tutarlıdır : "Liste öğesi sipariş edilirse, ayrıca bir başlangıç ​​numarası atanır, sıralı liste işaretleyicisini temel alan "(burada, '666' sipariş edilen liste işaretleyicisidir)
VonC

2
@VonC Teşekkürler, github aromalı markdown için bu geliştirmeyi bilmiyordum ve yorum yapmadan önce w / hızlı googling bulamadık. Herkes için VonC'nin "Sıralı bir listenin başlangıç ​​numarası, ilk liste öğesinin liste numarası tarafından belirlenir. Sonraki liste öğelerinin sayısı dikkate alınmaz."
Mike Lippert

376

Sonra nokta eklemek sıralı bir liste işaretçisi666 yapar .

GitHub, romen rakamları kullanarak sıralı liste işaretçileri oluşturan CSS bildirir:

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

Nokta ters eğik çizgiyle çıkın ve doğru çıktıyı görmelisiniz.


84

Diğer yanıtlar sorunun nedenini açıklamakta iyi olsa da, size bunu nasıl çözeceğinize dair tam bir örnek vermediler .

Görünüşe göre , metninizi yerine kusurlu bir şekilde çözdünüz .

- `666`. ha.

Normal bir metin gibi görünmesini sağlamak için sayıdan sonra noktadan kaçmak için yaygın bir hile vardır (sıralı bir liste etiketi değil):

- 666\. ha. (this will render as you probably want)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.