Closed mbottini closed 9 months ago
(Sorry, completely new to this)
It looks like this should be two separate bugs, since the rules are handled in completely different parts of the grammar. The comment block bug is, I think, due to the regex that the grammar uses to detect endCapture
here: https://github.com/ionide/ionide-fsgrammar/blob/master/grammars/fsharp.json#L559C40-L559C40
(\\*+\\))
This should match iff
I need to figure out a development environment for iterating on my machine to confirm - regexes are finicky and easy to get wrong.
@mbottini thanks for reporting and considering contributing! There are instructions to debug the changes in CONTRIBUTING.md - it should just be F5'ing in the repo. There's a dummy extension that loads your changes.
This part should be resolved by the pull request. I'm going to split off the other issue (the infix multiplication operator itself) into another issue.
Describe the bug Inside of a block comment, the infix multiplication operator
(*)
is treated as the terminator of a block comment. This is not correct; F# tokenizes keywords inside of comments, and since(*)
is a keyword, it and the*)
inside it is discarded.To Reproduce Steps to reproduce the behaviour:
Type the following expression:
Expected behaviour The syntax highlighter should associate the closing paren of the infix operator with its opening paren and not be associated with the paren that came before it.
Screenshot
Environment (please complete the following information):