Markdown na Facebooku 1

Markdown na Facebooku

Jakiś czas temu odkryłem zupełnie przypadkiem, że Messenger na Facebooku potrafi renderować niektóre ze znaczników Markdown. O ile dla zwykłego użytkownika komunikatora jest to raczej wiedza zbędna, tak dla programistów może okazać się całkiem przydatna.

Dostępne znaczniki

Osobiście udało mi się naliczyć siedem znaczników, które działają w Messengerze. Być może jest ich więcej, być może w przyszłości zostaną dodane kolejne. Jeśli uda mi się coś odkryć to na pewno zaktualizuję treść tego wpisu.

Pogrubienie, kursywa i przekreślenie

Messenger wspiera 3 podstawowe operacje formatowania tekstu: pogrubienie, kursywę i przekreślenie. Nie udało mi się odnaleźć znacznika odpowiedzialnego za podkreślenie, więc niestety muszę założyć że nie ma takiej opcji.

Cztery bąbelki wiadomości z komunikatora Messenger, które ukazują porównanie podstawowego tekstu z pogrubionym, napisanym kursywą i przekreślonym tekstem.
Podstawowy, pogrubiony, napisany kursywą i przekreślony tekst

Można także łączyć ze sobą te znaczniki, dzięki czemu wyświetlimy np. pogrubiony i napisany kursywą tekst.

Pogrubienie*Lorem ipsum*
Kursywa_Lorem ipsum_
Przekreślenie~Lorem ipsum~

Preformatowany tekst i kod

Do celów programistycznych zdecydowanie bardziej przydadzą się dwa kolejne znaczniki. Preformatowany kod pozwala na umieszczenie dowolnego tekstu, który nie zostanie sformatowany. Dodatkowo będzie on wyświetlony fontem w stylu monospace.

Dwa bąbelki wiadomości z komunikatora Messenger, które ukazują porównanie podstawowego tekstu z preformatowanym tekstem.
Podstawowy i preformatowany tekst
Preformatowany tekst`Lorem ipsum`

Dodatkowo można przesłać cały blok kodu. Jeśli trochę pogimnastykujemy się ze skrótami klawiszowymi to pojawi się szykownie sformatowany blok, z zupełnie innym kolorem tła a nawet kolorowaniem składni!

Bąbelek wiadomości z komunikatora Messenger, w którym znajduje się sformatowany kod PHP wraz z kolorowaniem składni.
Blok kodu w Messengerze

Niestety ograniczenia Gutenberga (😉) nie pozwalają na umieszczenie znacznika odpowiedzialnego za kod, więc posłużę się zdjęciem.

Treść wiadomości pozwalająca na umieszczanie sformatowanego kodu PHP w komunikatorze Messenger.
Składnia do umieszczenia sformatowanego, pokolorowanego kodu w Messengerze

Do stworzenia takiej ściany tekstu pomoże znajomość skrótu Shift + Enter, dzięki której można przejść do następnej linii. Również istotne jest umieszczenie php za trzema początkowymi „backtickami”. Pozwala to na określenie sposobu kolorowania składni.

Pozostałe znaczniki

Istnieją jeszcze dwa znaczniki, których nie mam jak skategoryzować. Pierwszym z nich jest cytat umożliwiający na swego rodzaju wyróżnienie tekstu.

Bąbelek wiadomości z komunikatora Messenger przedstawiający sposób formatowania cytatu.
Cytat w Messengerze

Drugim, dosyć nietypowym, jest wyświetlanie składni LaTeX. Nie wiem na ile skomplikowane wyrażenia matematyczne można tworzyć, jednak te podstawowe są bardzo dobrze obsługiwane.

Bąbelek wiadomości z komunikatora Messenger przedstawiający sposób formatowania wyrażenia matematycznego y = ax+b zapisanego za pomocą LaTeX.
Cytat> Lorem ipsum
LaTeX\(y = ax +b\)

Gdzie to działa?

Na dzień dzisiejszy (07.02.2019r.) znaczniki te na pewno działają na przeglądarkowej, desktopowej wersji Facebooka. W mobilnej aplikacji Messenger na Androida niestety znaczniki te nie są renderowane – są wyświetlane jako zwykły tekst. Innych platform do testowania nie posiadam, z tego też powodu nie mam jak ich zweryfikować.

Cztery bąbelki wiadomości z komunikatora Messenger przedstawiające brak renderowania kodu Markdown w aplikacji mobilnej Messenger na Androida.
Znaczniki Markdown w mobilnej aplikacji Messenger na Androida

Po internecie krążą informacje na temat innych miejsc na Facebooku w których Markdown również działa (WorkPlace czy też wpisy na stronach), jednak weryfikację tego zostawiam tym bardziej dociekliwym ode mnie.

Ciekawym rozwiązaniem byłoby zezwolenie na formatowanie treści komentarzy, zwłaszcza w grupach. Wielokrotnie musiałem korzystać z pomocy zewnętrznych serwisów aby przesłać komuś kilka linijek kodu. Dodanie obsługi Markdowna w komentarzach rozwiązałoby (po części) ten problem i umożliwiałoby na szybszy podgląd proponowanej pomocy.

Autorem logo Markdown jest Dustin Curtis. Logo udostępniane na licencji CC0 1.0.


Autor

Krzysztof Grabania

Programista z zawodu oraz z zamiłowania. Na co dzień pracuje z Laravelem, WordPressem i Vue.js. Nie boi poznawać się nowych technologii i narzędzi. W wolnych chwilach tłumaczy WordPressa i jego wtyczki na język polski. Amator elektroniki oraz Raspberry Pi.