Symbol Transclusion
เขียน wiki-link ไปยังชื่อฟังก์ชันและเนื้อหาฟังก์ชันจะแสดงในตำแหน่งนั้นพร้อมการเน้นไวยากรณ์ ดึงตรงจากไฟล์ซอร์สของคุณ การแยก AST ทำงานได้กับ 40+ ภาษา: Python, Swift, JavaScript, TypeScript, Go, Rust, Java, C, C++, Ruby, Kotlin และอื่นๆ แก้ไขซอร์ส เอกสารอัปเดต
# ฝังฟังก์ชันด้วยชื่อ
![[auth.py#validate_token]]Ohai แยกฟังก์ชัน validate_token จาก auth.py และแสดงผลแบบอินไลน์พร้อมการเน้นไวยากรณ์ เมื่อฟังก์ชันเปลี่ยน เอกสารจะอัปเดตโดยอัตโนมัติ
ทำไมถึงสำคัญ
เอกสารแบบดั้งเดิมมักล้าสมัย คุณคัดลอกโค้ดวางใน markdown โค้ดพัฒนาต่อไป และทันใดนั้นเอกสารของคุณก็โกหกคุณ Symbol transclusion แก้ปัญหานี้โดยถือว่าไฟล์ซอร์สเป็นแหล่งความจริงเดียว
ต่างจากการอ้างอิงหมายเลขบรรทัดที่พังทุกครั้งที่รีแฟคเตอร์ symbol transclusion ใช้การวิเคราะห์ AST เพื่อค้นหาโค้ดด้วยชื่อจริง—ฟังก์ชัน คลาส struct ค่าคงที่ เปลี่ยนชื่อไฟล์ จัดระเบียบโค้ดใหม่ เพิ่มเมธอดใหม่—ตราบใดที่ชื่อสัญลักษณ์ยังมีอยู่ เอกสารของคุณจะถูกต้องเสมอ
กรณีการใช้งาน
เอกสาร API
อ้างอิงลายเซ็นฟังก์ชันจริงของคุณ ไม่ใช่การประมาณที่พิมพ์ด้วยมือซึ่งไม่ซิงค์กัน
บันทึกการตัดสินใจสถาปัตยกรรม
ฝังโค้ดที่คุณกำลังอภิปรายใน ADR ตัวอย่างจะทันสมัยตามที่โค้ดเบสพัฒนา
คู่มือการเริ่มต้น
แสดงให้นักพัฒนาใหม่เห็นว่าการยืนยันตัวตนทำงานอย่างไรด้วยโค้ดแบบสดที่พวกเขาเชื่อถือได้ว่าตรงกับ repo
การรีวิวโค้ด
ดึงฟังก์ชันเฉพาะเจาะจงมาใส่ในสรุป markdown สำหรับการรีวิวและอภิปรายแบบอะซิงค์
บทเรียน
อธิบายการทำงานจริง ผู้อ่านสามารถเชื่อถือได้ว่าตัวอย่างโค้ดทันสมัยเสมอ
Runbook
ฝังคอนฟิกหรือสคริปต์ที่แน่นอนที่ทีมปฏิบัติการต้องอ้างอิงระหว่างเหตุการณ์
ภาษาที่รองรับ
การวิเคราะห์ AST Tree-sitter สำหรับ Python, Swift, JavaScript, TypeScript, Go, Rust, Java, C, C++, Ruby, Kotlin, PHP, Scala, Haskell, OCaml, Lua, Elixir, Bash และอื่นๆ — รวมถึงตัวแยก path ของรูปแบบข้อมูลสำหรับคีย์ JSON, path YAML, ตาราง TOML, path plist, XML, CSS, SQL และข้อความธรรมดา รวม 40+ รูปแบบ
พร้อมลองเอกสารที่ไม่มีวันล้าสมัยหรือยัง?
ดาวน์โหลดสำหรับ Mac