Skip to content

Commit 8e92d1c

Browse files
authored
Merge pull request #18 from erlang-ls/markdown-comments
Markdown comments
2 parents b6a7360 + fe898be commit 8e92d1c

File tree

4 files changed

+65
-58
lines changed

4 files changed

+65
-58
lines changed

Erlang.plist

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -604,15 +604,13 @@
604604
</dict>
605605
<key>name</key>
606606
<string>meta.directive.doc.erlang</string>
607+
<key>contentName</key>
608+
<string>meta.embedded.block.markdown</string>
607609
<key>patterns</key>
608610
<array>
609611
<dict>
610-
<key>begin</key>
611-
<string>\G</string>
612-
<key>contentName</key>
613-
<string>comment.block.documentation.erlang</string>
614-
<key>while</key>
615-
<string>(^)(?!\s*(\5))</string>
612+
<key>include</key>
613+
<string>text.html.markdown</string>
616614
</dict>
617615
</array>
618616
</dict>

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,16 @@ PowerShell) and all tests will be run. To add more tests you can either add
7575
annotated files to `./tests/` or use the snapshot facility and then tests should
7676
be added to `./test/snap`.
7777

78+
To update the snapshot tests, simply:
79+
80+
```
81+
npx vscode-tmgrammar-snap --updateSnapshot ./tests/snap/*.erl
82+
```
83+
7884
See more:
7985

8086
1. Visual Studio Code [Syntax Highlight Guide](https://code.visualstudio.com/api/language-extensions/syntax-highlight-guide)
8187
2. TextMate [Language Grammars](https://macromates.com/manual/en/language_grammars)
8288
3. [Writing a TextMate Grammar: Some Lessons Learned](https://www.apeth.com/nonblog/stories/textmatebundle.html)
83-
4. [Building a syntax highlighting extension for VS Code](https://dev.to/borama/building-a-syntax-highlighting-extension-for-vs-code-594)
89+
4. [Building a syntax highlighting extension for VS Code](https://dev.to/borama/building-a-syntax-highlighting-extension-for-vs-code-594)
90+
5. [Regular expression editor](https://rubular.com/) to quickly experiment with matches and captures

tests/snap/docstring.erl.snap

Lines changed: 45 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
# ^ source.erlang meta.directive.module.erlang punctuation.definition.parameters.end.erlang
77
# ^ source.erlang meta.directive.module.erlang punctuation.section.directive.end.erlang
88
>-moduledoc """
9-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
10-
# ^^^^^^^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
11-
# ^ source.erlang meta.directive.doc.erlang
12-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
9+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
10+
# ^^^^^^^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
11+
# ^ source.erlang meta.directive.erlang
12+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
1313
>Triple quoted strings examples
14-
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
14+
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang
1515
>""".
16-
#^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
17-
# ^ source.erlang meta.directive.doc.erlang
16+
#^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
17+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
1818
>
1919
>-export([f1/0, f2/0, f3/0, f4/0, f5/0,
2020
#^ source.erlang meta.directive.export.erlang punctuation.section.directive.begin.erlang
@@ -79,16 +79,16 @@
7979
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang comment.line.percentage.erlang
8080
>
8181
>-doc """
82-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
83-
# ^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
84-
# ^ source.erlang meta.directive.doc.erlang
85-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
82+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
83+
# ^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
84+
# ^ source.erlang meta.directive.erlang
85+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
8686
> Docstring examples
87-
#^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
87+
#^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang
8888
> """.
89-
#^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
90-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
91-
# ^ source.erlang meta.directive.doc.erlang
89+
#^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang
90+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
91+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
9292
>f1() ->
9393
#^^ source.erlang meta.function.erlang entity.name.function.definition.erlang
9494
# ^ source.erlang meta.function.erlang meta.expression.parenthesized punctuation.section.expression.begin.erlang
@@ -252,17 +252,19 @@
252252
# ^ source.erlang meta.function.erlang punctuation.terminator.function.erlang
253253
>
254254
>-doc ~s"""""
255-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
256-
# ^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
257-
# ^ source.erlang meta.directive.doc.erlang
258-
# ^^ source.erlang meta.directive.doc.erlang storage.type.string.erlang
259-
# ^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
255+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
256+
# ^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
257+
# ^ source.erlang meta.directive.erlang
258+
# ^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang storage.type.string.erlang
259+
# ^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
260260
> Hello\n
261-
#^^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
261+
#^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang
262+
# ^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang constant.character.escape.erlang punctuation.definition.escape.erlang
263+
# ^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang constant.character.escape.erlang
262264
> """"".
263-
#^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
264-
# ^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
265-
# ^ source.erlang meta.directive.doc.erlang
265+
#^^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.end.erlang
266+
# ^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
267+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
266268
>f2() -> ok.
267269
#^^ source.erlang meta.function.erlang entity.name.function.definition.erlang
268270
# ^ source.erlang meta.function.erlang meta.expression.parenthesized punctuation.section.expression.begin.erlang
@@ -347,17 +349,17 @@
347349
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.erlang comment.line.percentage.erlang
348350
>
349351
>-doc("""
350-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
351-
# ^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
352-
# ^ source.erlang meta.directive.doc.erlang punctuation.definition.parameters.begin.erlang
353-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
352+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
353+
# ^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
354+
# ^ source.erlang meta.directive.erlang punctuation.definition.parameters.begin.erlang
355+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
354356
> Hello\n
355-
#^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
357+
#^^^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang
356358
> """).
357-
#^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
358-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
359-
# ^ source.erlang meta.directive.doc.erlang punctuation.section.directive.end.Erlang
360-
# ^ source.erlang meta.directive.doc.erlang
359+
#^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang
360+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
361+
# ^ source.erlang meta.directive.erlang punctuation.definition.parameters.end.erlang
362+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
361363
>g1() -> ok.
362364
#^^ source.erlang meta.function.erlang entity.name.function.definition.erlang
363365
# ^ source.erlang meta.function.erlang meta.expression.parenthesized punctuation.section.expression.begin.erlang
@@ -370,18 +372,18 @@
370372
# ^ source.erlang meta.function.erlang punctuation.terminator.function.erlang
371373
>
372374
>-doc(~B"""""
373-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
374-
# ^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
375-
# ^ source.erlang meta.directive.doc.erlang punctuation.definition.parameters.begin.erlang
376-
# ^^ source.erlang meta.directive.doc.erlang storage.type.string.erlang
377-
# ^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
375+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
376+
# ^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
377+
# ^ source.erlang meta.directive.erlang punctuation.definition.parameters.begin.erlang
378+
# ^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang storage.type.string.erlang
379+
# ^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
378380
> Hello\n
379-
#^^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
381+
#^^^^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang
380382
> """"").
381-
#^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
382-
# ^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
383-
# ^ source.erlang meta.directive.doc.erlang punctuation.section.directive.end.Erlang
384-
# ^ source.erlang meta.directive.doc.erlang
383+
#^^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.end.erlang
384+
# ^^^^^ source.erlang meta.directive.erlang string.quoted.tripple.sigil.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
385+
# ^ source.erlang meta.directive.erlang punctuation.definition.parameters.end.erlang
386+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
385387
>g2() -> ok.
386388
#^^ source.erlang meta.function.erlang entity.name.function.definition.erlang
387389
# ^ source.erlang meta.function.erlang meta.expression.parenthesized punctuation.section.expression.begin.erlang

tests/snap/sigil.erl.snap

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@
2424
# ^ source.erlang meta.directive.export.erlang punctuation.section.directive.end.erlang
2525
>
2626
>-doc """
27-
#^ source.erlang meta.directive.doc.erlang punctuation.section.directive.begin.erlang
28-
# ^^^ source.erlang meta.directive.doc.erlang keyword.control.directive.doc.erlang
29-
# ^ source.erlang meta.directive.doc.erlang
30-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.begin.erlang
27+
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
28+
# ^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang
29+
# ^ source.erlang meta.directive.erlang
30+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.begin.erlang punctuation.definition.string.begin.erlang
3131
> Sigil examples
32-
#^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
32+
#^^^^^^^^^^^^^^^^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang
3333
> """.
34-
#^^^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang
35-
# ^^^ source.erlang meta.directive.doc.erlang comment.block.documentation.erlang punctuation.definition.string.end.erlang
36-
# ^ source.erlang meta.directive.doc.erlang
34+
#^^^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang
35+
# ^^^ source.erlang meta.directive.erlang string.quoted.triple.erlang meta.string.quoted.triple.end.erlang punctuation.definition.string.end.erlang
36+
# ^ source.erlang meta.directive.erlang punctuation.section.directive.end.erlang
3737
>-spec f() -> ok.
3838
#^ source.erlang meta.directive.erlang punctuation.section.directive.begin.erlang
3939
# ^^^^ source.erlang meta.directive.erlang keyword.control.directive.erlang

0 commit comments

Comments
 (0)