Ok, trước khi tôi bắt đầu, tôi nhận ra rằng có rất nhiều tài liệu về chủ đề này nhưng tôi đã thất bại đến mức không thể làm việc cho VS2010.Visual studio 2010 colourizers, intellisense và phần còn lại. Bắt đầu từ đâu!
Mục tiêu của tôi là chỉ cần đến điểm tôi có thể mở tài liệu và mọi thứ có màu đỏ, từ đây tôi có thể triển khai logic phân tích cú pháp có liên quan.
Dưới đây là những gì tôi đã cố gắng/tìm thấy:
1) Downloaded tất cả các có liên quan SDK và such- Tìm thấy mẫu ook (http://code.msdn.microsoft.com/ookLanguage) - không xây dựng, không làm việc.
2) Biết gần như không có gì về MEF đọc qua "Thực hiện một dịch vụ Language Bởi Sử dụng khung Package được quản lý" - http://msdn.microsoft.com/en-us/library/bb166533(v=VS.100).aspx
này đã được khá nhiều bản sao và dán tất cả các nội dung cơ bản ở đây, và cũng cập nhật một số tài liệu tham khảo đã lỗi thời với mẫu, xem: http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/a310fe67-afd2-4592-b295-3fc86fec7996
Bây giờ, tôi đã đến thời điểm khi chạy gói MEF dường như đã kết nối đúng cách (Tôi biết điều này vì với trình gỡ rối đang mở, tôi có thể thấy rằng các gói khởi tạo và các phương thức FDoIdle đang bị tấn công).
Khi tôi mở tệp của tiện ích mở rộng, tôi đã đăng ký với ProvisionLanguageExtensionAttribute mọi thứ chết như thể trong vòng lặp vô tận, nhưng chưa có biểu tượng gỡ lỗi nào (mặc dù chúng được tải).
Nhìn vào mẫu ook và các ví dụ MEF chúng dường như là các cách tiếp cận hoàn toàn khác nhau cho cùng một vấn đề. Trong mẫu ook có các khái niệm về bộ điều khiển Clasifications và Completion không được đề cập trong ví dụ MEF. Ngoài ra, họ dường như không tạo ra một gói hoặc dịch vụ ngôn ngữ, vì vậy tôi không có ý tưởng làm thế nào nó nên làm việc?
Với ví dụ MEF, giả định của tôi là tôi cần phải móc vào "IScanner.ScanTokenAndProvideInfoAboutIt" để cung cấp đánh dấu cú pháp? Sẽ ổn nếu tôi có thể nhấn phương pháp này.
Vì vậy, câu hỏi đầu tiên của tôi, tôi đoán là tôi nên sử dụng phương pháp nào ở đây? Hay cả hai bằng cách nào đó liên kết với nhau?
Câu hỏi thứ hai của tôi là, tôi có thể tìm thấy một dự án cơ bản hoàn toàn làm việc thực hiện việc đánh dấu cú pháp cơ bản chuẩn và intellisense hoặc VS2010 ở đâu?
Thứ ba, trong ví dụ MEF khi tôi tạo Gói, có một loạt các dự án thử nghiệm được tạo cho tôi. Tôi xuất hiện rằng các thử nghiệm tích hợp khởi động giàn khoan thử nghiệm VS2010 bằng cách nào đó, nhưng thử nghiệm không thành công. Nó sẽ là tốt để viết dịch vụ của tôi với các bài kiểm tra nhưng tôi không có ý tưởng gì/làm thế nào tôi có thể kiểm tra mỗi tương tác vì vậy bất kỳ tài liệu tham khảo để kiểm tra dịch vụ ngôn ngữ sẽ hữu ích.
Cuối cùng, hãy ném mọi liên kết tài nguyên/sách của tôi theo cách mà tôi có thể thấy hữu ích.
Chúc mừng, Chris.
N.B. Xin lỗi tôi nhận ra đây là một phần câu hỏi rant, nhưng tôi chưa bao giờ quá bối rối.
Cảm ơn bạn đã cập nhật, tôi sẽ gửi cho bạn một email với các vấn đề tôi đang gặp phải với ook! dung dịch. Tôi cũng nhận thấy rằng tôi KHÔNG có mẫu dự án trình phân loại Editor có sẵn trong tab Mở rộng, điều này khiến tôi tự hỏi liệu mình đã cài đặt SDK không chính xác hay có phiên bản cũ hơn đang chạy trên máy của mình. – Owen
Ngẫu nhiên Noah, bạn đã buộc tôi phải đọc về MEF và những thứ khá thú vị của nó. Tôi thực sự không hiểu nó như bất cứ thứ gì hơn là một container IoC cho đến khi tôi đào sâu hơn một chút. Bây giờ tôi hiểu cách VS có thể tận dụng điều này. Có lẽ nó là giá trị tôi đọc nhiều hơn một chút trước khi đăng/ranting đây :-). – Owen
Ok, vì vậy tôi đã tìm hiểu lý do tại sao tôi không thể xây dựng Ook! mẫu - Tôi chỉ cài đặt SDK beta. Ngoài ra, tôi không thể bắt đầu các mẫu với vỏ kiểm tra VS như các thuộc tính gỡ lỗi xác định để chạy VS đã mất tích nhưng tôi đã thêm những điều này, và tất cả là tốt. Cảm ơn bạn đã giúp đỡ. – Owen