2014-12-02 46 views
0

我有一個Xtext語法和生成的編輯器元素。解析器知道註釋以「 - 」開始,但按Ctrl + 7時插入「//」。此外,評論的綠色,斜體突出顯示只會發生在「//」,而不是「 - 」。我在哪裏可以改變這種行爲?在Xtext編輯器中更改註釋符號

回答

0

,如果你不希望覆蓋SL_COMMENT那麼你有掛接到相應的地方

  • 的高亮:DefaultAntlrTokenToAttributeIdMapper
  • 的切換SL comment動作:ISingleLineCommentHelper.getDefaultPrefixes(ISourceViewer,字符串)
+0

我可以改變規則,但我認爲它是正確的。但我認爲SL_COMMENT規則是可以的,它確實表示「 - 」應該是一個評論。解析器也知道,以 - 開頭的行被正確處理爲註釋;只有ctrl + 7和正確的突出顯示不適用於「 - 」,但使用「//」時。但以「//」開頭的行僅作爲註釋突出顯示,但不會被忽略。如之前所說的, – Kackao 2014-12-03 18:10:23

+0

。有兩種方法可以解決這個問題 - 只需選擇一個 – 2014-12-03 20:10:55

1

你是否重寫了SL_COMMENT規則?

如果要插入「 - 」而不是「//」,「 - 」應該是在SL_COMMENT規則第一種選擇:

terminal SL_COMMENT: 
    ('--'|'//') !('\n'|'\r')* ('\r'? '\n')? 
; 
+0

不,這似乎是解決方案,但我可以在哪裏更改該規則?我應該在生成的文件中這樣做嗎? – Kackao 2014-12-02 13:55:29

+0

你只需要在自己的語法文件中編寫自己的終端SL_COMMENT,它就會覆蓋默認的終端。 – 2014-12-02 13:57:17

+0

在* .xtext中,我找到了這樣一條規則,它確實將「 - 」指定爲註釋,但高亮/ Ctrl + 7無效。解析器工作正常,忽略註釋,只是突出顯示不起作用。 – Kackao 2014-12-02 14:08:50