Skip to content

About

Obsidian plugin that links note names and aliases, with Thai and English UI

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

Smart Auto Link

English · ดาวน์โหลดรุ่นล่าสุด

Smart Auto Link สแกนทั้ง Vault และสร้างลิงก์ข้ามโน้ตโดยอัตโนมัติจากชื่อโน้ต aliases และคำสำคัญที่กำหนดด้วย ==ไฮไลต์== หรือ Properties ชื่อ keywords คำที่ตรงกันจะลิงก์ไปยังโน้ตปลายทาง รองรับทุกภาษา

ตัวอย่างที่ตรงกับการใช้งาน

ในโน้ต ภาษี.md เขียน:

==เงินเดือน== ==tax== ==税==

ในโน้ต บันทึก.md มีข้อความ:

วันนี้อ่านเรื่องเงินเดือน tax และ 税

เมื่อเปิด Vault หรือบันทึกโน้ต ระบบจะสร้างใน บันทึก.md อัตโนมัติ:

วันนี้อ่านเรื่อง[[ภาษี|เงินเดือน]] [[ภาษี|tax]] และ [[ภาษี|税]]

ไฮไลต์ใน ภาษี.md ยังคงเดิม ไม่สร้างลิงก์หาโน้ตตัวเอง ส่วน Backlinks ของภาษี.md จะแสดงโน้ตที่ลิงก์เข้ามา

วิธีใช้

  1. เปิดใช้งาน Smart Auto Link ใน Settings → Community plugins
  2. เมื่อเปิด Vault ครั้งถัดไป ปลั๊กอินจะสแกนและลิงก์ทั้ง Vault ให้อัตโนมัติ แล้วลิงก์โน้ตที่เปิดหรือบันทึกภายหลัง
  3. เพิ่มคำเฉพาะเจาะจงด้วย ==คำสำคัญ== หรือ Properties ชื่อ keywords เพื่อกำหนดปลายทางให้แน่นอน คำจากชื่อโน้ตและ aliases ใช้เป็นจุดเชื่อมอัตโนมัติด้วย
  4. เปิด Open graph view เพื่อดูเส้นเชื่อม การสร้างลิงก์ทั้ง Vault ด้วยตนเองยังทำได้จาก Ctrl+P → Smart Auto Link: สร้างลิงก์ทั้ง Vault

โหมดอัตโนมัติเปิดเป็นค่าเริ่มต้น สแกนทั้ง Vault เมื่อเริ่ม Obsidian และลิงก์โน้ตที่เปิดหรือบันทึก รวมถึงอัปเดตโน้ตอื่นเมื่อเพิ่มคำสำคัญใหม่

เพิ่มคำสำคัญโดยไม่ต้องไฮไลต์

เพิ่ม Properties ชื่อ keywords ชนิด List หรือใส่ YAML บนสุดของโน้ตปลายทาง:

---
keywords:
  - เงินเดือน
  - AI
  - 税
  - ضريبة
---

ไม่ต้องมีโน้ตชื่อเงินเดือนหรือ AI เพราะปลายทางคือโน้ตที่ประกาศ keywords เหล่านี้ คำที่ระบุเองไม่ถูกจำกัดด้วยค่า Minimum term length

ติดตั้งหรืออัปเดต

  1. แตก smart-auto-link.zip จาก Releases
  2. นำโฟลเดอร์ smart-auto-link ไปไว้ที่ Vault/.obsidian/plugins/ โดยต้องมี main.js และ manifest.json อยู่ข้างในโดยตรง
  3. ปิด–เปิดสวิตช์ Smart Auto Link ใน Community plugins หรือปิดเปิด Obsidian ใหม่ เพื่อโหลดโค้ดรุ่นใหม่
  4. ดูหมายเลขรุ่นที่ด้านบนหน้าตั้งค่าของปลั๊กอิน

ใช้ได้บน Windows / macOS / Linux โดยไม่ต้องติดตั้ง Node.js เพื่อใช้งาน ตัว manifest อนุญาต mobile แต่ยังไม่ได้ทดสอบบนอุปกรณ์จริง

กติกาการจับคู่

  • ข้อความสำคัญที่กำหนดเองมีลำดับก่อนชื่อโน้ตและคำที่เดาจากชื่อ
  • หากคำเดียวกันถูกไฮไลต์หรือประกาศ keywords ในหลายโน้ต จะข้ามคำนั้นแทนการเลือกปลายทางเอง
  • คงไฮไลต์ต้นฉบับ ลิงก์เดิม โค้ด frontmatter URL และโครงสร้าง Markdown ที่ป้องกันไว้
  • ไม่ดึงคำจากไฮไลต์ในโค้ด ลิงก์ คอมเมนต์ หรือสมการ ใช้ไฮไลต์ที่ครอบข้อความธรรมดา
  • รันซ้ำไม่สร้างลิงก์ซ้อน การเปลี่ยน/ลบคำสำคัญไม่ถอนหรือย้ายลิงก์เก่าที่สร้างไปแล้ว
  • การจับคู่ทั้งคำใช้ Unicode word segmentation ของอุปกรณ์ หากภาษาใดแบ่งคำไม่ตรงที่ต้องการ ปิด Whole word matching เพื่อจับข้อความตรงตัว
  • จับคู่ข้อความที่เขียนเหมือนกัน ไม่แปลคำข้ามภาษาให้เอง เช่น tax กับภาษีเป็นคนละคำ ให้ประกาศทั้งสองคำถ้าต้องการปลายทางเดียวกัน
  • ชื่อเต็มโน้ตและคำหรือวลีที่แยกจากชื่อโน้ต รวมถึง aliases จะใช้สร้างลิงก์โดยอัตโนมัติ คำที่กำกวมหรือพบเป็นคำสำคัญในหลายโน้ตจะถูกข้าม
  • คำหรือชื่อไฟล์ที่มีอักขระพิเศษของ wikilink บางชนิดอาจถูกข้ามเพื่อไม่สร้างลิงก์เสีย

การใช้คำสั่งแก้ Markdown จริง ปลั๊กอินไม่มีระบบ undo ทั้ง Vault ในตัว และไม่ส่งเนื้อหาโน้ตออกเครือข่าย

บันทึกรายการเปลี่ยน (Changelog)

  • v1.5.0 (ล่่าสุด): ดึงคำซ้ำ่จากเนื้่อหาโน้ตมาสร้างลิงก์อัตโนมัติ — สแกนคำท่่ีปรากฏซำ้่ในแต่ละโน้ตแลว้ ใช้เป็็นจุดเชื่่อม ข้ำ่่มคำท่่ีเดิ้่่นเท่่ากัันในหลายโน้ต และหยุดแจ้้งใหเพ่่่ม ==term== เมื่่อโหมดนีเปื่ืด
  • v1.4.0: ลิงก์อัตโนมัติเปิดเป็นค่าเริ่มต้น — สแกนทัง Vault ตอนเริ่ม, สร้างลิงก์เมื่อเปิด/บันทึกโน้ต ใช้วาสชื่อโน้ต, aliases, ==ไฮไลต์== และ keywords เป็นจุดเชื่อมใน Graph การติดตั้งเดิมนั้่งย้ายสู่โหมดอัตโนมัติครั่่งเดิ่ว การตั้งค่าของผู้ใช้อยู่ต่อไปไม่เปลี่ยน
  • v1.3.0: เพิ่่มคำสำคั่ญด้วย ==ไฮไลต์== หรือ Properties ชื่อกีเวิร์ด, ปุ่่มสร้างลิงก์ทัง Vault, จำนวนคำสำคั่ญทีกำหนดไว้, คัมม็อนไม่เปลี่ยนแปลงการจับคู่
  • v1.2.1: คำแจ้้งเมื่อไม่มิลิงก์ใหม่ — ลิงก์เดิมนั้ยังอยู่, ไม่เขียนไฟล์ใหม่
  • v1.2.0: โหมดอัตโนมัติเมื่อเปิด/บันทึกโน้ต (ปิดโดยเดิมนั้) + คำสั่่งแจ้งเมื่อไม่มิตัวที่ตรง
  • v1.1.0: ดึงคำสำคั่ญจากชื่อโน้ตหลายภาษา (การแยกคำ Unicode), UI ไทย/อังกฤษ
  • v1.0: เวอร์ชั่่นแรก — ปลั๊กอินสแกนไฮไลต์/คำสำคั่ญและสรางลิงก์ข้ามโน้ต

พัฒนา

npm ci
npm run typecheck
npm test
npm run build

npm test จะ build ก่อนแล้วทดสอบการลิงก์ Markdown, การดึงไฮไลต์หลายภาษา, การเลือกปลายทาง และ workflow ด้วย vault จำลอง

อ้างอิง API: https://github.com/obsidianmd/obsidian-api

About

Obsidian plugin that links note names and aliases, with Thai and English UI

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages