Po zbadaniu sprawy odkryłem, że Mathjax może to zrobić. Ale kiedy piszę przykład w moim pliku przecen, nie pokazuje on poprawnych równań:
Dodałem to w nagłówku pliku przecen:
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>
I wpisz instrukcję mathjax:
(E = mc ^ 2) , $$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}. $$
Ale github nie pokazuje nic dla symboli matematycznych! Proszę, pomóż mi, dzięki! Powiedz mi, jak wyświetlać symbole matematyczne na stronach z rabatami na githubie.
Odpowiedzi:
Analiza cen GitHub jest wykonywana przez bibliotekę SunDown (ex libUpSkirt).
Mottem biblioteki jest „Zgodna ze standardami, szybka, bezpieczna biblioteka do przetwarzania przecen w C” . Ważne słowo jest tam „bezpieczne”, biorąc pod uwagę twoje pytanie :).
Rzeczywiście, zezwolenie na wykonanie javascript byłoby nieco niezgodne ze standardowym kontraktem tekstu na HTML MarkDown.
Co więcej, wszystko, co wygląda jak znacznik HTML, jest usuwane lub usuwane.
Najlepszym rozwiązaniem byłoby znalezienie witryny podobnej do yuml.me, która może generować obrazy w locie, analizując podany adres URL.
Aktualizacja
Znalazłem kilka witryn oferujących użytkownikom taką usługę: codedogs.com ( nie wydaje się już wspierać osadzania ) lub iTex2Img . Możesz je wypróbować. Oczywiście mogą istnieć inne, a niektóre Google-fu pomoże Ci je znaleźć.
biorąc pod uwagę następującą składnię markdown
wyświetli następujący obraz
równanie http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=
Uwaga : aby obraz był prawidłowo wyświetlany, musisz upewnić się, że część adresu URL, w której pojawia się zapytanie, jest zakodowana w procentach . Możesz łatwo znaleźć narzędzia online, które pomogą Ci w tym zadaniu, takie jak www.url-encode-decode.com
źródło
Markdown obsługuje wbudowany HTML. Wbudowany kod HTML może być używany zarówno do szybkich i prostych równań w wierszu, jak i do bardziej złożonego renderowania za pomocą narzędzia zewnętrznego.
Szybki i prosty inline
Aby uzyskać szybkie i proste elementy wbudowane, użyj ampersand kodów jednostek HTML . Przykładem, który łączy tę ideę z tekstem indeksu dolnego w markdown, jest: h θ (x) = θ o x + θ 1 x, kod, który znajduje się poniżej.
Kody HTML ampers i encje dla popularnych symboli matematycznych można znaleźć tutaj . Kody greckich liter tutaj .
Chociaż to podejście ma ograniczenia, działa praktycznie we wszystkich przecenach i nie wymaga żadnych zewnętrznych bibliotek.
Złożone, skalowalne renderowanie liniowe za pomocą LaTeX i Codecogs
Jeśli Twoje potrzeby są większe, użyj zewnętrznego renderera LaTeX, takiego jak CodeCogs. Utwórz równanie za pomocą edytora CodeCogs . Wybierz svg do renderowania i HTML dla kodu osadzania. Svg dobrze renderuje się po zmianie rozmiaru. HTML umożliwia łatwe odczytanie LaTeX-a, gdy patrzysz na źródło. Skopiuj kod do umieszczenia na dole strony i wklej go do swojej promocji.
To łączy tę odpowiedź i tę odpowiedź .
Obsługa GitHub tylko czasami działała przy użyciu powyższej surowej składni html dla czytelnego LaTeX-a. Jeśli powyższe nie działa, inną opcją jest zamiast tego wybranie renderowania z kodowaniem URL i użycie tego wyniku do ręcznego utworzenia łącza, takiego jak:
To ręcznie włącza LaTex do tekstu obrazu alternatywnego i używa zakodowanego adresu URL do renderowania w GitHub.
Renderowanie wieloliniowe
Jeśli potrzebujesz renderowania wieloliniowego, sprawdź tę odpowiedź .
źródło
.md
a równania były zasadniczo wielowierszowym kodem lateksowym.Jeśli chcesz tylko pokazać sobie matematykę w przeglądarce, możesz wypróbować rozszerzenie GitHub do Chrome z MathJaxem . To całkiem wygodne.
źródło
Innym obejściem jest użycie notatników jupyter i użycie trybu przecen w komórkach do renderowania równań.
Wydaje się, że podstawowe rzeczy działają idealnie, jak równania wyśrodkowane
lub równania inline
Chociaż jedną z funkcji, której naprawdę chciałem, w ogóle nie renderowałem na githubie, było
\mbox{}
, co było kłopotem. Ale w sumie to był najbardziej skuteczny sposób renderowania równań na githubie.źródło
readme.md
na GitHub?readme.md
. Jednak zawsze możesz po prostu założyćfile.ipynb
github, a github dobrze to renderuje.Teraz jest rok 2020, pozwolę sobie podsumować postęp w zakresie renderowania formuły matematycznej obsługi hostów repozytoriów kodu źródłowego.
GitHub i Bitbucket
GitHub i Bitbucket nadal nie obsługują renderowania formuł matematycznych, niezależnie od tego, czy są to domyślne separatory, czy inne.
W ostatnich latach GitHub nie zrobił żadnego znaczącego postępu.
GitLab
GitLab jest już obsługiwany, ale nie jest to najpopularniejszy sposób. Używa własnego separatora.
Kto popiera uniwersalne ograniczniki?
Parser Markdown używany przez Hugo
Inne sposoby renderowania
Użyj internetowego interfejsu API, aby renderować zgodnie z hakiem do wyświetlania formuł LaTeX w GitHub przecenach , możesz nawet napisać notatnik jupyter.
readme2tex
źródło
Chociaż GitHub nie zinterpretuje formuł MathJax, możesz automatycznie wygenerować nowy dokument Markdown z formułami zastąpionymi obrazami.
Proponuję spojrzeć na aplikację GitHub TeXify :
Jak to działa (z repozytorium źródłowego ):
źródło
Jest dobre rozwiązanie twojego problemu - użyj wtyczki TeXify github (wspomnianej przez Tom Hale odpowiedź - ale rozwinąłem jego odpowiedź w podanym linku poniżej) - więcej szczegółów na temat tej wtyczki github i wyjaśnienie, dlaczego jest to dobre podejście, możesz znaleźć w tej odpowiedzi .
źródło
Używam poniższego procesu do konwersji równań na przeceny. U mnie to działa bardzo dobrze. To jest bardzo proste!!
Powiedzmy, że chcę przedstawić równanie mnożenia macierzy
Krok 1:
Pobierz skrypt dla swoich formuł stąd - https://csrgxtu.github.io/2015/03/20/Writing-Mathematic-Fomulars-in-Markdown/
Mój przykład: chciałem przedstawić
Z(i,j)=X(i,k) * Y(k, j); k=1 to n
w podsumowaniu formuły. W odniesieniu do strony internetowej potrzebny był skrypt =>Z_i_j=\sum_{k=1}^{10} X_i_k * Y_k_j
Krok 2:
Użyj kodera URL - https://www.urlencoder.org/, aby przekonwertować skrypt na prawidłowy adres URL
Mój przykład:
Krok 3:
Użyj tej witryny, aby wygenerować obraz, kopiując i wklejając wynik z kroku 2 w parametrze żądania „eq” -
http://www.sciweavers.org/tex2img.php?eq=<b><i>paste-output-here</i></b>&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=
- Mój przykład:
http://www.sciweavers.org/tex2img.php?eq=Z_i_j=\sum_{k = 1} ^ {10}% 20X_i_k% 20 *% 20Y_k_j & bc = White & fc = Black & im = jpg & fs = 12 & ff = arev & edit =
Krok 4:
Obraz referencyjny wykorzystujący składnię markdown -
![alt text](enter url here)
- Skopiuj to w swoim Markdown i gotowe:
![Z(i,j)=X(i,k) * Y(k, j); k=1 to n](http://www.sciweavers.org/tex2img.php?eq=Z_i_j%3D%5Csum_%7Bi%3D1%7D%5E%7B10%7D%20X_i_k%20%2A%20Y_k_j&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)
Obraz poniżej przedstawia wynik przeceny. Hurra!!
źródło
Jeśli chodzi o konwersję tex → obrazu, narzędzie LaTeXiT zapewnia znacznie wyższą jakość wydruku. Uważam, że jest to standard w większości dystrybucji TeX, ale z pewnością możesz go znaleźć w Internecie, jeśli jeszcze go nie masz. Wszystko, co musisz zrobić, to umieścić go w TeX-ie, przeciągnąć obraz na pulpit, a następnie przeciągnąć z pulpitu do witryny hostującej obrazy (używam imgur).
źródło
Użyłem następujących w nagłówku pliku przeceny
Następnie wpisałem następującą instrukcję mathjax
$$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}. $$ U
mnie zadziałało
źródło