Aby tekst po bloku kodu Markdown nie stał się kodem, usuń początkowy tabulator lub wcięcie z czterech spacji. Jeśli chcesz również uzyskać widoczne wcięcie akapitu w Obsidianie na Macu, pozostaw Markdown bez wcięcia i ustaw odstęp za pomocą CSS.
Dlaczego akapit staje się kolejnym blokiem kodu?
Zamknięcie bloku kodu z ogrodzeniem kończy ten blok, ale nie wyłącza składni wcięć dla tekstu poniżej. Na najwyższym poziomie cztery lub więcej początkowych spacji może rozpocząć osobny blok kodu z wcięciem. Poniższy przykład zawiera więc dwa bloki kodu, mimo że ogrodzenia ma tylko pierwszy. CommonMark: bloki kodu z wcięciem.
```text
Sample output
```
This should be a normal paragraph.
Ważne jest rozróżnienie, czy niechciany tekst należy do pierwotnego bloku z ogrodzeniem, czy rozpoczyna nowy blok. Jeśli zamykające ogrodzenie jest nadal widoczne w kodzie, sprawdź, czy używa tego samego znaku co otwierające i zawiera co najmniej tyle samo znaków backtick lub tyld. W przypadku bloku na najwyższym poziomie umieść oba ogrodzenia przy lewym marginesie, aby ułatwić sprawdzenie. GitHub Flavored Markdown: bloki kodu z ogrodzeniem.
Dodanie pustych wierszy nie neutralizuje wcięcia z czterech spacji. Z kolei tekst z wcięciem, który bezpośrednio następuje po zwykłym akapicie, może pozostać częścią tego akapitu, ponieważ blok kodu z wcięciem nie może go przerywać. To wyjaśnia, dlaczego pozornie podobne wcięcia czasem zachowują się inaczej w innych miejscach notatki. CommonMark: bloki kodu z wcięciem.
Jak przywrócić zwykły akapit na Macu?
W Obsidianie przełącz się na Source mode, aby sprawdzić rzeczywiste ogrodzenia i początkowe białe znaki. Użyj kontrolki trybu edycji na pasku stanu albo wybierz Settings → Editor → Default editing mode → Source mode. Obsidian opisuje ten tryb jako wyświetlanie składni Markdown dokładnie tak, jak została wpisana. Widoki i tryb edycji.
Znajdź pierwszy wiersz tekstu po zamykającym ogrodzeniu. Usuń początkowe spacje lub tabulator, tak aby tekst zaczynał się przy lewym marginesie. Powtórz tę czynność dla kolejnych akapitów, których dotyczy problem. Zachowaj wcięcia wewnątrz właściwego bloku kodu.
Użyj tego kompletnego przykładu Markdown jako wzoru:
```text
Sample output
```
This is a normal paragraph with **bold text**.
This is another normal paragraph.
Pozostaw pusty wiersz po zamykającym ogrodzeniu, aby źródło było czytelne. GitHub wyraźnie zaleca puste wiersze wokół bloków kodu z ogrodzeniem, choć sama składnia ogrodzeń ich nie wymaga. Zewnętrzne ogrodzenia z czterech znaków backtick użyte do wyświetlania przykładów w tym artykule pozwalają zachować widoczność wewnętrznych potrójnych backticków. Tworzenie i wyróżnianie bloków kodu.
Przełącz się na Reading view, aby sprawdzić wynik; w macOS skrót Cmd+E przełącza między widokiem edycji a czytania. Sprawdź, czy objaśnienie ma zwykłe formatowanie akapitu, a pogrubiony tekst jest pogrubiony. Live Preview ukrywa większość składni Markdown i pokazuje ją w pobliżu kursora, dlatego do diagnozy użyj Source mode, a do końcowej kontroli wyglądu — Reading view. Widoki i tryb edycji.
Usunięcie tylko dwóch spacji z wcięcia liczącego cztery spacje może zapobiec interpretacji tekstu jako kodu na najwyższym poziomie, ale nie zapewnia widocznego wcięcia akapitu. Obsidian informuje, że sąsiadujące zwykłe spacje są zwijane podczas renderowania tekstu. Wcięcie w źródle i widoczne wcięcie to dwa różne wymagania. Podstawowa składnia formatowania.
Jak zachować widoczne wcięcie akapitu w Obsidianie?
Aby uzyskać wcięcie pierwszego wiersza, użyj zwykłych akapitów i fragmentu CSS. Dzięki temu struktura akapitu jest oddzielona od jego prezentacji: Markdown pozostaje czytelny, a CSS odpowiada za widoczny odstęp. Obsidian obsługuje własne fragmenty stylów oraz właściwość cssclasses, która pozwala zastosować styl do wybranych notatek. Fragmenty CSS.
Poniższy przykład pokazuje własny styl oparty na udokumentowanym mechanizmie klas Obsidiana i właściwości CSS do wcięcia akapitu. Nie jest to wbudowane polecenie formatowania Obsidiana. Styl dotyczy renderowanych elementów akapitu; sprawdź jego wygląd w Reading view.
Dodaj właściwość notatki i arkusz stylów
Umieść ten blok właściwości na samym początku notatki. Jeśli notatka ma już blok właściwości, dodaj tam cssclasses zamiast tworzyć drugi blok. Pozostaw tekst po bloku kodu bez wcięcia.
---
cssclasses:
- paragraph-indent
---
Utwórz plik zwykłego tekstu o nazwie paragraph-indent.css z następującym kompletnym arkuszem stylów:
.paragraph-indent p {
text-indent: 2em;
}
Selektor p wskazuje akapity wewnątrz własnej klasy notatki. Właściwość text-indent przesuwa pierwszy wiersz do środka, a zawinięte wiersze zachowują zwykłe położenie początkowe. Wartość 2em jest przykładowa i można ją zmienić. Nie wstawia spacji do notatki. MDN: text-indent.
Na Macu użyj edytora zwykłego tekstu do utworzenia arkusza stylów. Jeśli korzystasz z TextEdit, przed zapisem wybierz Format → Make Plain Text. Sprawdź, czy końcowa nazwa pliku to paragraph-indent.css, a nie dokument z formatowaniem tekstu ani plik z rozszerzeniem .css.txt. Apple wyjaśnia, że konwersja do zwykłego tekstu usuwa formatowanie dokumentu i zwykle zapisuje plik z rozszerzeniem .txt. Tworzenie, otwieranie i konwertowanie dokumentów w TextEdit na Macu.
- W Obsidianie otwórz
Settings → Appearance → CSS snippets. - Wybierz
Open snippets folderi umieść tamparagraph-indent.css. - Jeśli plik nie jest na liście, wybierz
Reload snippets. - Włącz przełącznik fragmentu, a następnie sprawdź notatkę w
Reading view. Fragmenty CSS.
Ten szeroki przykład dodaje wcięcie do każdego renderowanego akapitu pasującego w wybranej notatce, także akapitów wewnątrz innych struktur. Nie ogranicza działania do akapitu bezpośrednio po bloku kodu. Aby cofnąć stylowanie, wyłącz fragment albo usuń klasę paragraph-indent z notatki.
Arkusz stylów nie naprawia tekstu, który nadal jest interpretowany jako kod: jego selektor dotyczy akapitów. Najpierw popraw białe znaki. Ponadto ten selektor akapitu nie jest kompletnym stylem edytora Live Preview; nie oczekuj identycznego wyglądu w edytorze i widoku czytania.
Co zmienia się wewnątrz listy lub na GitHubie?
Wcięcia wewnątrz listy określają przynależność do elementu listy. Nie usuwaj ich bez namysłu. W tym kompletnym przykładzie ogrodzenie i objaśnienie mają trzy początkowe spacje, co wyrównuje je z treścią po 1. . Objaśnienie pozostaje akapitem w obrębie tego elementu. GitHub Flavored Markdown: elementy listy.
1. Review the sample.
```text
Sample output
```
This explanation belongs to the same list item.
W przypadku innych znaczników listy oblicz wcięcie kontynuacji na podstawie znacznika i następujących po nim odstępów. Ogólne zalecenie, aby usunąć wszystkie wcięcia, uszkodziłoby zamierzoną strukturę. Jeśli objaśnienie ma znaleźć się poza listą, przenieś je z powrotem do lewego marginesu. GitHub Flavored Markdown: elementy listy.
Obsidian dokumentuje obsługę CommonMark i GitHub Flavored Markdown, a także własnych rozszerzeń. Nie oznacza to, że fragment CSS Obsidiana jest przenośnym formatowaniem Markdown: fragment konfiguruje się osobno w Obsidianie. Przy przenoszeniu notatki sprawdź docelowy renderer. Obsidian informuje również, że Markdown wewnątrz elementów HTML nie jest przetwarzany, więc użycie opakowania HTML zmienia warunki formatowania, zamiast zapewniać uniwersalne rozwiązanie. Markdown w wersji Obsidiana.
Które rozwiązanie wybrać?
Wybierz najmniejszą zmianę, która zapewni oczekiwany efekt:
- Zwykły tekst po kodzie: usuń początkowy tabulator lub wcięcie z czterech spacji z akapitu.
- Akapit wewnątrz elementu listy: zachowaj wcięcie potrzebne dla treści tego elementu.
- Widoczne wcięcie pierwszego wiersza w Obsidianie: użyj tekstu bez wcięcia i przykładowego stylu CSS z określonym zakresem.
- Dokument wyświetlany w kilku aplikacjach: zachowaj czytelną strukturę Markdown i osobno sprawdź prezentację w każdej z nich.
Sprawdzając gotową notatkę, zadaj sobie dwa pytania: czy tekst jest interpretowany jako akapit i czy akapit ma żądany odstęp? Najpierw popraw strukturę Markdown. Następnie zastosuj wizualne wcięcie tam, gdzie obsługuje je renderer, pozostawiając arkusz stylów oddzielnie od tekstu.
Źródła
- Specyfikacja CommonMark — bloki kodu z wcięciem — CommonMark.
- Specyfikacja GitHub Flavored Markdown — GitHub.
- Tworzenie i wyróżnianie bloków kodu — dokumentacja GitHub.
- Podstawowa składnia formatowania — pomoc Obsidiana.
- Widoki i tryb edycji — pomoc Obsidiana.
- Fragmenty CSS — pomoc Obsidiana.
- Markdown w wersji Obsidiana — pomoc Obsidiana.
- text-indent — MDN Web Docs.
- Tworzenie, otwieranie i konwertowanie dokumentów w TextEdit na Macu — pomoc Apple.