ฉันต้องการเขียนภาษาเทมเพลตใหม่และฉันต้องการให้ Visual Studio "สนับสนุน" สิ่งที่ฉันต้องรู้คือ:
- ฉันจะแยกวิเคราะห์ภาษาใหม่ของฉันได้อย่างไร
ด้วยภาษาเทมเพลตใหม่ของฉันฉันจะแปลเป็น HTML ได้อย่างไร ตอนนี้ฉันกำลังใช้นิพจน์ทั่วไปเพื่อแยกวิเคราะห์โทเค็นด้วยโทเค็น แต่ฉันไม่คิดว่าสิ่งนี้จะปรับขนาดได้ดีนักเพราะภาษาซับซ้อนขึ้นและไม่มีการตรวจสอบข้อผิดพลาด ฉันเคยได้ยินเกี่ยวกับ ANTLR แต่ไม่เคยใช้เลย นั่นจะเป็นเครื่องมือที่เหมาะสมสำหรับงานนี้หรืออาจจะมีอะไรที่ง่ายกว่านี้? ตามหลักการแล้วฉันต้องการส่งข้อผิดพลาดทางไวยากรณ์ไปยังหน้าต่างข้อผิดพลาดพร้อมข้อมูลให้มากที่สุด (บรรทัด # ประเภทของข้อผิดพลาด) เหมือนกับภาษาอื่น ๆ - ฉันจะสร้างประเภทไฟล์ใหม่สำหรับ Visual Studio ได้อย่างไร
- ฉันจะเน้นไวยากรณ์ได้อย่างไร
ฉันสามารถใช้ตัวแยกวิเคราะห์เดียวกันกับที่ฉันสร้างในขั้นตอนที่ 1 ได้หรือไม่หรือสิ่งนี้แตกต่างอย่างสิ้นเชิง - ฉันจะรับ Intellisense ได้อย่างไร?
ฉันต้องการเขียนโปรแกรมแยกวิเคราะห์ของฉันใน C #