นี่คืออินเทอร์เฟซบรรทัดคำสั่ง (CLI) สำหรับนางเงือก ใช้ไฟล์นิยามนางเงือกเป็นอินพุตและสร้างไฟล์ SVG/PNG/PDF เป็นเอาต์พุต
npm install -g @mermaid-js/mermaid-cli
แปลงไฟล์ไดอะแกรม MMD MMD เป็น SVG
mmdc -i input.mmd -o output.svg
บันทึก
ดูการติดตั้งทางเลือกหากคุณไม่ต้องการติดตั้งแพ็คเกจทั่วโลก
ค้นหาวิธีเรียก MMDC Executable สำหรับวิธีที่คุณต้องการเช่น Docker, Yarn, NPM, การติดตั้งในพื้นที่ ฯลฯ
mmdc -i input.mmd -o output.png -t dark -b transparent
ตัวเลือก --cssFile
สามารถใช้ในการอินไลน์ CS ที่กำหนดเองบางส่วน
โปรดดู./test-positive/flowchart1.css สำหรับตัวอย่างของไฟล์ CSS ที่มีภาพเคลื่อนไหว
คำเตือน : หากคุณต้องการแทนที่ themeCSS
ของ mermaid
เราขอแนะนำให้เพิ่ม {"themeCSS": "..."})
ให้กับนางเงือกของคุณ --configFile
คุณอาจต้องใช้ !important
ในการแทนที่ themeCSS
ของ Mermiad
คำเตือน : ไฟล์ CSS แบบอินไลน์อาจถูกบล็อกโดยเบราว์เซอร์ของคุณขึ้นอยู่กับส่วนหัวนโยบายความปลอดภัยของเนื้อหา HTTP ของเว็บไซต์ที่โฮสต์ SVG ของคุณ
mmdc --input test-positive/flowchart1.mmd --cssFile test-positive/flowchart1.css -o docs/animated-flowchart.svg
mmdc -i readme.template.md -o readme.md
คำสั่งนี้แปลงไฟล์ Markdown เอง นางเงือก CLI จะพบไดอะแกรมนางเงือกสร้างไฟล์ SVG จากไฟล์เหล่านั้นและอ้างถึงไฟล์ในเอาต์พุต markdown
นี้:
### Some markdown
``` mermaid
graph
[....]
```
### Some more markdown
``` mermaid
sequenceDiagram
[....]
```
### Mermaid with custom title/desc
``` mermaid
graph
accTitle: My title here
accDescr: My description here
A-->B
```
กลายเป็น:
### Some markdown
![ diagram ] ( ./readme-1.svg )
### Some more markdown
![ diagram ] ( ./readme-2.svg )
### Mermaid with custom title/desc
![ My description here ] ( ./readme-3.svg " My title here ")
คุณสามารถท่ออินพุตจาก Stdin ได้อย่างง่ายดาย ตัวอย่างนี้แสดงวิธีใช้ Heredoc เพื่อส่งแผนภาพเป็น stdin ไปยังนางเงือก (MMDC)
cat << EOF | mmdc --input -
graph TD
A[Client] --> B[Load Balancer]
EOF
mmdc -h
docker pull minlag/mermaid-cli
หรือดึงจากรีจิสทรีคอนเทนเนอร์ GitHub
docker pull ghcr.io/mermaid-js/mermaid-cli/mermaid-cli
หรือเช่นเวอร์ชัน 8.8.0
docker pull minlag/mermaid-cli:8.8.0
คอนเทนเนอร์ค้นหาไฟล์อินพุตใน /data
ตัวอย่างเช่นหากคุณมีแผนภาพที่กำหนดไว้ในระบบของคุณใน /path/to/diagrams/diagram.mmd
คุณสามารถใช้คอนเทนเนอร์เพื่อสร้างไฟล์ SVG ดังนี้:
docker run --rm -u ` id -u ` : ` id -g ` -v /path/to/diagrams:/data minlag/mermaid-cli -i diagram.mmd
หรือถ้าใช้ Podman ให้ทำ:
podman run --userns keep-id --user ${UID} --rm -v /path/to/diagrams:/data:z ghcr.io/mermaid-js/mermaid-cli/mermaid-cli -i diagram.mmd
ความแตกต่างของคีย์ในคำสั่ง podman กับคำสั่ง Docker คือ:
--userns keep-id
สิ่งนี้ช่วยให้คอนเทนเนอร์สามารถเก็บ UID เดียวกันกับ UID ของผู้ใช้ปัจจุบันในเนมสเปซคอนเทนเนอร์แทนการแมปกับ subuid เอกสารสามารถพบได้ที่นี่:z
ไปยังจุดสิ้นสุดของการแมปปริมาณ สิ่งนี้สั่งให้ Podman relabel ไฟล์ในระดับเสียงด้วย Selinux Label container_file_t
ซึ่งอนุญาตให้กระบวนการในคอนเทนเนอร์เข้าถึงไฟล์ ดูส่วน "การติดตั้งระดับเสียงติดฉลาก" ที่นี่สำหรับข้อมูลเพิ่มเติม ในเวอร์ชันก่อนหน้าไฟล์อินพุตถูกติดตั้งใน /home/mermaidcli
คุณสามารถกู้คืนพฤติกรรมนี้ด้วยตัวเลือก --workdir
:
docker run [...] --workdir=/home/mermaidcli minlag/mermaid-cli [...]
เป็นไปได้ที่จะเรียก mermaid-cli
ผ่าน node.js API โปรดทราบว่า NodeJS API นั้นไม่ได้อยู่ใน Semver เนื่องจาก mermaid-cli
เป็นไปตามเวอร์ชันของ mermaid
import { run } from "@mermaid-js/mermaid-cli"
await run (
"input.mmd" , "output.svg" , // {optional options},
)
บางคนมีปัญหาในการติดตั้งเครื่องมือนี้ทั่วโลก การติดตั้งในเครื่องเป็นทางเลือกอื่น:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
หรือใช้ NPM:
npm install @mermaid-js/mermaid-cli
./node_modules/.bin/mmdc -h
npx
ติดตั้งโดยค่าเริ่มต้นด้วย NPM มันดาวน์โหลดและเรียกใช้คำสั่งในเวลาเดียวกัน ในการใช้ Mermaid CLI กับ NPX คุณต้องใช้ Flag -p
เนื่องจากชื่อแพ็คเกจแตกต่างจากคำสั่งที่ติดตั้ง ( mmdc
) npx -p @mermaid-js/mermaid-cli mmdc -h
คำเตือน
วิธีการติดตั้งนี้ไม่รองรับอีกต่อไป สำหรับรายละเอียดเพิ่มเติมดูการสนทนา Mermaid-CLI รุ่นเก่าสามารถติดตั้งด้วย Brew
brew install mermaid-cli
ยินดีต้อนรับการมีส่วนร่วม ดูคู่มือการบริจาค