Om du vill förenkla ett Mermaid-tillståndsdiagram i Obsidian på en Mac ska du behålla varje giltig övergång explicit, korta ned etiketterna och testa läsriktningen. Jämför källan, målet och övergångstexten innan du godkänner resultatet.

Den här genomgången använder fyra syntetiska tillstånd, A till och med D. Uppgiften är att göra ett diagram lättare att läsa samtidigt som dess direkta övergångar, returvägar samt start- och slutmarkörer bevaras. Övergångstabellen ger ett konkret sätt att kontrollera att detta har bevarats, oberoende av hur renderaren placerar pilarna.

Vad måste förbli oförändrat när du förenklar diagrammet?

Börja med att skilja presentationsändringar från ändringar av modellen. Kortare visningsetiketter och en annan läsriktning kan förbättra läsbarheten. Om du tar bort en pil ändras mängden direkta övergångar, även om en annan väg fortfarande leder till samma mål.

Anta till exempel att det finns både en direkt övergång från A till C och en väg via B. Om du tar bort den direkta övergången måste läsaren dra slutsatsen att ett mellanliggande besök i B sker. Nåbarheten bevaras, men en giltig övergång i ett enda steg går förlorad. För den här uppgiften räcker det inte att så småningom nå samma mål.

Använd följande övergångsförteckning som originalspecifikation. Etiketterna är syntetiska händelsenamn; de har en betydelse i det här exemplet och måste förbli kopplade till sina ursprungliga pilar.

Källa Mål Övergångstext
Start A Ingen
A B step
A C alternate
B C next
B A reset
C B back
C A reset
C D finish
D Slut Ingen

Det finns nio övergångar, inklusive start och slut. Två pilar har samma etikett, reset, men utgår från olika tillstånd. Behåll båda. På samma sätt har pilarna mellan B och C olika riktningar och olika etiketter; de är separata övergångar.

För ett större diagram bör du anteckna varje övergång som en kombination av källa, mål och text innan du redigerar. Om originaltexten innehåller villkor eller åtgärder ska även de bevaras. Att bara jämföra det totala antalet pilar kan inte upptäcka en pil vars mål eller etikett har ändrats.

Kontrollera vilken renderare din installerade Obsidian-version använder

Öppna Settings på din Mac via kugghjulet i sidofältet och välj sedan General. Anteckna den aktuella programversionen och installationsversionen som visas högst upp. Använd programversionen när du söker efter relevanta versionsnyheter. Dessa platser beskrivs i Obsidians hjälp om inställningar.

Gränsen mellan renderare spelar roll. Obsidians Desktop-version 1.15.0 för tidig åtkomst, daterad 22 oktober 2026, byter diagramrendering till Pele och anger kompatibilitet med Mermaid-syntax 12.1.0. I versionsnyheterna står det också att den här versionen inte längre innehåller Mermaid-biblioteket. Det påståendet gäller den angivna versionen; det identifierar inte renderaren i alla installerade Obsidian-versioner. Se versionsnyheterna för Obsidian 1.15.0 Desktop.

Behandla syntaxkompatibilitet och visuellt utseende som separata kontroller. Ett diagram som accepteras av en annan editor är en användbar jämförelse, men den installerade appen är fortfarande platsen där du ska verifiera slutresultatet. Utgå inte från att en layoutinställning uppströms eller ett nyare dokumentationsexempel fungerar likadant i din lokala renderare.

Exemplet nedan undviker medvetet renderarkonfiguration, temainställningar och formatering. Om du redan har ett fungerande diagram kan du börja med dess befintliga diagramdeklaration och ändra en presentationsdetalj i taget. Det behövs ingen uppgradering bara för att göra övergångsförteckningen och etikettändringarna som beskrivs här.

Skapa en kompakt version med explicita övergångar

Det fullständiga exemplet nedan motsvarar alla nio rader i förteckningen. De synliga tillståndsnamnen är avsiktligt korta. Tillståndet A är startpunkten, B och C har returvägar, och endast D har en övergång till slutmarkören.

Mermaid dokumenterar tillståndsalias, märkta övergångar, start- och slutmarkörer samt riktningsangivelsen i sin referens för tillståndsdiagram. Obsidians dokumenterade metod för att infoga diagram är ett kodblock med syntaxmarkering och språköhänvisningen mermaid, vilket förklaras i Avancerad formateringssyntax.

```mermaid
stateDiagram-v2
    direction LR

    state "Stage A" as A
    state "Stage B" as B
    state "Stage C" as C
    state "Stage D" as D

    [*] --> A

    A --> B : step
    A --> C : alternate

    B --> A : reset
    B --> C : next

    C --> A : reset
    C --> B : back
    C --> D : finish

    D --> [*]
```

Klistra in hela Markdown-exemplet, inklusive de inledande och avslutande raderna med tre backtick-tecken, i en anteckning. Den yttre avgränsningen med fyra backtick-tecken visas bara för att återge exemplet i den här artikeln; den ingår inte i anteckningens innehåll.

Om du vill granska den exakta texten använder du Source mode. Om du vill granska det renderade resultatet växlar du till Reading view; i macOS växlar Cmd+E mellan läs- och redigeringsvyer. Obsidian beskriver dessa kontroller i Vyer och redigeringsläge.

Övergångsangivelserna grupperas efter källtillstånd, så att varje tillstånds utgående alternativ kan granskas tillsammans. Den här organiseringen underlättar underhållet av källtexten; den garanterar inte var renderaren placerar varje tillstånd.

Prova exemplet med den bredd på anteckningar som du normalt använder. Ta sedan bort endast raden direction LR och jämför resultatet. Behåll den presentation som gör förgreningarna och returvägarna lättast att följa. Ett diagram från vänster till höger kan kräva mer utrymme i sidled, så bedöm resultatet i den faktiska anteckningspanelen.

Korta bara ned etiketterna så långt som betydelsen tillåter. I det här syntetiska exemplet behöver Stage B ingen ytterligare förklaring. I ditt eget diagram bör du behålla all text som skiljer två tillstånd åt. Om en längre förklaring behövs kan du lägga den i ett intilliggande stycke och behålla en tydlig koppling till tillståndets identifierare.

Vilka genvägar kan ändra modellen?

Upprepade pilar kan locka dig att införa en gemensam mellannod. Innan du gör det bör du fråga dig vad noden representerar och om de ursprungliga direkta övergångarna fortfarande finns kvar.

En gemensam återställningsnod ändrar de direkta vägarna

I förteckningen går B och C var för sig direkt till A vid reset. Om du ersätter dessa pilar med vägar via ett nytt tillstånd med namnet R skapas ett mellantillstånd och de ursprungliga direkta kanterna tas bort. Läsaren kan fortfarande följa en väg till A, men diagrammet beskriver nu andra steg.

För att få exakt det resultat som artikeln beskriver ska du behålla de två återställningspilarna. Upprepningen visar två giltiga startvillkor för samma händelse. Det är bara användbart att minska deras visuella utrymme om betydelsen bevaras.

Ett val eller en förgrening kräver stöd i modellen

Mermaid dokumenterar <<choice>> för förgrening mellan vägar och <<fork>> och <<join>> för förgrenings- och sammanslagningsstrukturer. Det är olika diagramkonstruktioner i referensen för tillståndsdiagram.

Inför inte någon av dem enbart för att samla flera röriga pilar i en gemensam kopplingspunkt. I det här exemplet är uppgiften att behålla direkta övergångar mellan tillstånd. Om du lägger till en mellankonstruktion måste du separat förklara hur dess vägar motsvarar originalmodellen. Med explicita pilar blir kopplingen omedelbart tydlig.

Sammansatta tillstånd har en dokumenterad begränsning

Mermaid har stöd för sammansatta tillstånd, men dokumentationen förbjuder uttryckligen övergångar mellan interna tillstånd som tillhör olika sammansatta tillstånd. Se Sammansatta tillstånd.

Om en gruppering av dina noder leder till en sådan situation bör du hålla de sammankopplade tillstånden på samma nivå i den här uppgiften. Om du flyttar en pil till det yttre sammansatta tillståndet ändras dess slutpunkt; det är inte automatiskt en likvärdig ersättning. Använd en hierarki när den motsvarar modellens faktiska struktur och du kan förklara dess in- och utgångsbeteende.

För exemplet med fyra tillstånd tillför nästling inte mycket. Den användbara förenklingen är kortare etiketter och tydligare presentation samtidigt som övergångsstrukturen lämnas intakt.

Verifiera både övergångarna och det renderade resultatet

Gör två genomgångar innan du ersätter originaldiagrammet. Den första kontrollerar modellen; den andra kontrollerar om den valda presentationen är användbar.

  1. Jämför varje rad i förteckningen med en övergångsangivelse. Bekräfta båda ändpunkterna och hela etiketten.
  2. Jämför varje övergångsangivelse mot förteckningen. Det upptäcker både extra och saknade pilar.
  3. Kontrollera start och slut separat. Här leder start endast till A, och endast D leder till slut.
  4. Granska det renderade diagrammet så att etiketterna är läsbara och pilspetsarna går att skilja åt.
  5. Följ returvägarna från B och C, eftersom de är lätta att missa om man bara granskar förloppet framåt.

Prova tre läskontroller för det här exemplet: start till A, sedan C, därefter D och sedan slut; start till A, sedan B och därefter återställning till A; och start till A, sedan C och därefter tillbaka till B. Dessa kontroller prövar den alternativa vägen, återställningen och den omvända kopplingen. De kompletterar jämförelsen rad för rad men ersätter den inte.

En deterministisk textjämförelse bekräftade att de nio övergångsangivelserna i exemplet stämmer med förteckningen, inklusive etiketterna. Exemplet renderades inte i en installerad Obsidian-app under förberedelserna, så du behöver fortfarande kontrollera det slutliga avståndet och pilarnas dragning i din lokala version.

Om anteckningen visar koden som vanlig text bör du först kontrollera att du visar den i Reading view och att den inledande kodstängslet anger mermaid. Om du får ett tolkningsfel efter redigering ska du gå tillbaka till hela exemplet och göra om en ändring i taget. Om bara layouten är besvärlig kan du bevara övergångarna och jämföra etikettlängd, riktning och tillgänglig bredd i panelen.

Behåll den version vars etiketter och vägar är lättast att läsa när jämförelsen mot förteckningen har godkänts. En lyckad förenkling gör det enklare för läsaren att följa samma giltiga övergångar, samtidigt som källan förblir lätt att granska och underhålla.

Källor