Nowy parser markdown

5

Ponieważ z obecną biblioteką do markdown są cały czas problemy i nie jest ona zbyt aktywnie rozwijana, to wkrótce zostanie ona zastąpiona inną: zdecydowanie lepiej napisaną oraz przetestowaną.

Na serwerze testowym (http://4programmers.dev) są widoczne już moje zmiany. Muszę jeszcze dopracować rozwiązanie (np. nie działa parsowanie linków youtube) ale wkrótce będzie na produkcji i co mam nadzieje - rozwiąże niektóre bugi.

1

Skoro mowa o Youtube, to będzie rozwiązane tak jak teraz? Tzn. teraz linki do Youtube są podmieniane na iframe.

2

A czy adresy mogą nie być podmieniane na iframe, jeśli znajdują się w znacznikach dla linków, czyli w []()?

2
furious programming napisał(a):

A czy adresy mogą nie być podmieniane na iframe, jeśli znajdują się w znacznikach dla linków, czyli w []()?

Też mi się podoba takie rozwiązanie.

0

Tak to działa obecnie:

[test](https://youtu.be/enOjqwOE1ec)

Warunkiem jest to, aby URL oraz etykieta linku była inna.

2

Zrobione (mimo, że nie jest jeszcze na produkcji).

  1. Nowy parser markdown potrafi usuwać również niechciane znaczniki HTML z tekstu. Bardzo fajnie. Myślałem, że dzięki temu będzie mogli pozbyć się biblioteki purifier. Niestety nie potrafi jednak usuwać niechcianych atrybutów HTML z tekstu. HTML Purifier jest pod tym względem o wiele bardziej zaawansowany i dlatego zostawiłem :(

  2. Nowy parser markdown jest o wiele wolniejszy od starego, ale za to super napisany. Dlatego cachowanie tekstu pozostawiłem tak jak obecnie.

  3. Obecnie przed parsowaniem - np. linków - tymczasowo usuwamy z tekstu niechciane znaczniki - np. <code>. Nowy parser tego nie potrafi przez co linki mogą być parsowane wewnątrz tego znacznika. Niemniej jednak i tak używamy markdown zamiast tagów HTML więc nie powinno to nas dotknąć. W razie czego jest możliwość aby przywrócić poprzednie działanie (tzn. ukryć z tekstu niechciane znaczniki przed parsowaniem markdown), ale zobaczymy czy to w ogóle będzie jakiś problem.

2

Na plus, że w końcu link https://4programmers.net/Forum/C_i_.NET/358551-wpf_budowa_kontrolki_typu_datamatrix?p=1824559#id1824559 będzie prawidłowy i _ w URL nie zepsuje formatowania.

2

Czy poza monopolistycznym YouTube mogłoby też wyświetlać filmiki z Vimeo?

2

Nowy parser wdrożony. Cache wyczyszczony. Wyraźnie wolniejszy jest ten nowy parser. Jest to zauważalne gdy treść nie znajduje się w cachu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1