Comments (3)
I created that schema because the VS Code extension vscode-markdownlint
can use it to provide syntax highlighting in the editor (i.e., warning). How are you thinking to use the schema with markdownlint
? Would you want to throw an exception if the user provides a config that isn't valid? My worry about that would be that it is too restrictive (i.e., error). For example, note that I use the unsupported comment
key to add information to the sample styles: https://github.com/DavidAnson/markdownlint/blob/master/style/relaxed.json
I don't think I would want to block a valid user just because they had extra content in their JSON.
from markdownlint.
For example, note that I use the unsupported comment key to add information to the sample styles: https://github.com/DavidAnson/markdownlint/blob/master/style/relaxed.json
In this case, json schema permits additional properties on default. So, this is not problem.
However, there might be problems in other cases.
Yet, I think the rules structure of markdownlint
are more complexity than other linter config.
For markdownlint developers, we should provide validations.
json-schema is flexible and has many supports. For example, we can nest such as:
{
"type": "object",
"properties": {
"rules": {
"$ref": "rules.schema.json"
}
}
}
ref: https://spacetelescope.github.io/understanding-json-schema/structuring.html
And, related writers can choose best library that suits them from many libraries.
- https://github.com/geraintluff/tv4
- https://github.com/epoberezkin/ajv
- https://github.com/tdegrunt/jsonschema
- etc.
I think providing json schema, providing cost saving and flexible validations for markdownlint tool writers.
from markdownlint.
I think this could work as a new validateSchema
option - if true
, an exception is thrown for an invalid schema. I use tv4
in vscode-markdownlint
, so it would be fairly straightforward to add.
However, I'm reluctant to introduce a new dependencies
for something non-essential like this. :( (There's currently just one and it's the Markdown parser!) I'd worry less about using devDependencies
, but I'm not sure that works for the scenario you have in mind.
I may need to think about this more.
from markdownlint.
Related Issues (20)
- No bare-urls when using _redirects file HOT 1
- MD033 - Inline HTML Not ignoring custom HTML tags, but recognizing them as tags HOT 2
- MD033: Organizing information with collapsed sections HOT 7
- MD045: no-alt-text triggered even though html alt-text is specified HOT 2
- QUESTION: Is it possible to write custom linting rules, including Quick Fix information, for frontmatter? HOT 2
- Copyright HOT 1
- MD056/table-column-count counts pipes inside backticks as column separators HOT 2
- MD014 only considers the `$` sign, is this intentional? HOT 2
- Umlauts like Ä, Ö, Ü in Mailadresses/URLs are not detected as normal letters HOT 5
- HTML disable/enables comments triggered when inside Markdown inline code HOT 4
- Frontmatter interpreted as top-level heading HOT 8
- `markdownlint-disable-next-line` should apply to the next non-empty line HOT 1
- MD045 shown when image has alt text in the optional title HOT 3
- MD029/ol-prefix: Continuous list with more than 10 elements HOT 1
- Include additional schema/types for strict rule name verification HOT 2
- Diabling rules from the front matter? HOT 2
- 11 12 14 16 HOT 3
- Reference links are lost between dollar signs HOT 7
- Feature Request: Recognize `markdownlint-*` configuration comments in "non-HTML comments" (unused link reference definitions) HOT 1
- MD036: doesn't fire when any HTML comment is present on the same line.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from markdownlint.