|
|
|
|
|
by sramam
649 days ago
|
|
This is so cool. Question (caveat: first export to treesitter and tools like this):
Is there a reason the example demonstrates the use of depth as a variable
instead of it being built in? Nesting level of a particular "type" is general enough that it might be included OOTB.
What you want to do with this might be generalizable -
for example instead of ``` enter section {
depth += 1;
}
leave section {
depth -= 1;
}
enter atx_heading {
print("<h");
print(depth);
print(">");
}
leave atx_heading {
print("</h");
print(depth);
print(">\n");
}
```It could simply be: ``` enter atx_heading {
print("<h");
print(depth);
print(">");
}
leave atx_heading {
print("</h");
print(depth);
print(">\n");
}
```So depth is always of the nested levels of the same node type, but available out of the box.
For markdown, it's headings, sections and lists come to mind - but I might be wrong. In any event, this looks really well thought-out and now to checkout the other tools mentioned in the comments..... |
|