2013-08-14 56 views
14

Tôi đã tạo tệp .tmLanuage cho ngôn ngữ tùy chỉnh trong Văn bản tuyệt vời. Mọi thứ đều hoạt động tốt, ngoại trừ việc tôi không thể nhận được nhận xét tự động để làm việc. Tôi dường như không thể tìm thấy bất kỳ điều gì trong tài liệu Văn bản tuyệt vời hoặc trên Google về cách thực hiện điều này, nhưng có lẽ điều này là do tôi không sử dụng đúng từ khóa.Bật tính năng nhận xét tự động trong Văn bản tuyệt vời cho cú pháp tùy chỉnh

Để tôi giải thích ý tôi là gì. Hãy nói rằng tôi có mã C sau:

int i = 1; 
i += 2; 

Nếu tôi làm nổi bật này trong văn bản Sublime và nhấn ctrl+/, nó được thay đổi để

// int i = 1; 
// i += 2; 

Tương tự như vậy, đối với mã Python:

i = 1 
i += 2 

sẽ trở thành

# i = 1 
# i += 2 

Văn bản rõ ràng tuyệt vời phải biết về cú pháp ngôn ngữ để chọn ký tự nhận xét thích hợp, đó là lý do tại sao tôi giả sử tôi cần phải thêm một cái gì đó vào tệp .tmLanguage của tôi để làm việc này. Tôi đã xem qua các tệp C.tmLanguage và Python.tmLanguage đi kèm với Sublime Text, và không có gì nhảy ra khỏi tôi như là mã thực hiện nhận xét tự động này.

Tôi phải thêm gì vào tệp .tmLanguage của tôi để bật tính năng này trong Văn bản siêu việt? Hoặc, có một số tệp khác mà tôi phải thêm/sửa đổi để bật tính năng này không?

Trả lời

15

Hãy xem "Nhận xét (C++). TmPreferences" và bạn sẽ có thể tìm ra cách chỉnh sửa nó cho cú pháp của bạn. .

  • Thêm của cú pháp của bạn "scopeName" với phạm vi
  • TM_COMMENT_START = dòng bình luận của
  • TM_COMMENT_START_2/TM_COMMENT_END_2 = khối comments

Comments (C++) tmPreferences:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>name</key> 
    <string>Comments</string> 
    <key>scope</key> 
    <string>source.your_syntax</string> 
    <key>settings</key> 
    <dict> 
     <key>shellVariables</key> 
     <array> 
      <dict> 
       <key>name</key> 
       <string>TM_COMMENT_START</string> 
       <key>value</key> 
       <string>// </string> 
      </dict> 
      <dict> 
       <key>name</key> 
        <string>TM_COMMENT_START_2</string> 
       <key>value</key> 
       <string>/*</string> 
      </dict> 
      <dict> 
       <key>name</key> 
       <string>TM_COMMENT_END_2</string> 
       <key>value</key> 
       <string>*/</string> 
      </dict> 
      <dict> 
       <key>name</key> 
       <string>TM_COMMENT_DISABLE_INDENT_2</string> 
       <key>value</key> 
       <string>yes</string> 
      </dict> 
     </array> 
    </dict> 

+0

Cảm ơn! Vấn đề của tôi rõ ràng là tôi đã tìm kiếm trong các tập tin sai cho các ví dụ. – SethMMorton

+0

Cảm ơn AGS về chỉnh sửa, tôi đoán bạn phải sử dụng các tab cứng cho mã xml. –