mkdocs-material/docs/schema/plugins/blog.json
2023-11-26 15:33:54 +01:00

450 lines
18 KiB
JSON

{
"$schema": "https://json-schema.org/draft-07/schema",
"title": "Built-in blog plugin",
"oneOf": [
{
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/",
"const": "blog"
},
{
"type": "object",
"properties": {
"blog": {
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/",
"type": "object",
"properties": {
"enabled": {
"title": "Enable plugin",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.enabled",
"type": "boolean",
"default": true
},
"blog_dir": {
"title": "Blog directory",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.blog_dir",
"type": "string",
"default": "blog"
},
"blog_toc": {
"title": "Table of contents",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.blog_toc",
"type": "boolean",
"default": false
},
"post_dir": {
"title": "Post directory",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_dir",
"type": "string",
"default": "\"{blog\\}/posts\""
},
"post_date_format": {
"title": "Format string for post dates",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_date_format",
"default": "long",
"oneOf": [
{
"enum": [
"full",
"long",
"medium",
"short"
]
},
{
"type": "string"
}
]
},
"post_url_date_format": {
"title": "Format string for post dates in URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_url_date_format",
"oneOf": [
{
"enum": [
"yyyy",
"yyyy/MM",
"yyyy/MM/dd"
]
},
{
"type": "string"
}
],
"default": "yyyy"
},
"post_url_format": {
"title": "Format string for post URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_url_format",
"oneOf": [
{
"enum": [
"\"{date}/{file}\"",
"\"{date}/{slug}\"",
"\"{file}\"",
"\"{slug}\""
]
},
{
"type": "string"
}
]
},
"post_url_max_categories": {
"title": "Number of categories in post URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_url_max_categories",
"type": "number",
"default": 1
},
"post_slugify": {
"title": "Post slugify function",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_slugify",
"default": "!!python/object/apply:pymdownx.slugs.slugify {kwds: {case: lower}}"
},
"post_slugify_separator": {
"title": "Post slugify separator",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_slugify_separator",
"type": "string",
"default": "\"-\""
},
"post_excerpt": {
"title": "Post excerpts",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_excerpt",
"oneOf": [
{
"title": "Post excerpts are optional",
"const": "optional"
},
{
"title": "Post excerpts are required, thus the build will fail",
"const": "required"
}
],
"default": "optional"
},
"post_excerpt_max_authors": {
"title": "Number of authors to render in post excerpts",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_excerpt_max_authors",
"type": "number",
"default": 1
},
"post_excerpt_max_categories": {
"title": "Number of categories to render in post excerpts",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_excerpt_max_categories",
"type": "number",
"default": 5
},
"post_excerpt_separator": {
"title": "Post excerpt separator",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_excerpt_separator",
"type": "string",
"default": "<!-- more -->"
},
"post_readtime": {
"title": "Post reading time computation",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_readtime",
"type": "boolean",
"default": true
},
"post_readtime_words_per_minute": {
"title": "Post reading time words per minute",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.post_readtime_words_per_minute",
"type": "number",
"default": 265
},
"archive": {
"title": "Archive",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive",
"type": "boolean",
"default": true
},
"archive_name": {
"title": "Archive name",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_name",
"type": "string",
"default": "Archive"
},
"archive_date_format": {
"title": "Format string for archive dates",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_date_format",
"oneOf": [
{
"enum": [
"yyyy",
"MMMM yyyy"
]
},
{
"type": "string"
}
],
"default": "yyyy"
},
"archive_url_date_format": {
"title": "Format string for archive dates in URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_url_date_format",
"oneOf": [
{
"enum": [
"yyyy",
"yyyy/MM"
]
},
{
"type": "string"
}
],
"default": "yyyy"
},
"archive_url_format": {
"title": "Format string for archive URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_url_format",
"oneOf": [
{
"enum": [
"\"archive/{date}\""
]
},
{
"type": "string"
}
]
},
"archive_pagination": {
"title": "Pagination for archive",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_pagination",
"type": "boolean",
"default": true
},
"archive_pagination_per_page": {
"title": "Posts per page for archive",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_pagination_per_page",
"type": "number",
"default": 10
},
"archive_toc": {
"title": "Table of contents for archive",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.archive_toc",
"type": "boolean",
"default": false
},
"categories": {
"title": "Categories",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories",
"type": "boolean",
"default": true
},
"categories_name": {
"title": "Categories name",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_name",
"type": "string",
"default": "Categories"
},
"categories_url_format": {
"title": "Format string for category URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_url_format",
"oneOf": [
{
"enum": [
"\"category/{slug}\"",
"\"{slug}\""
]
},
{
"type": "string"
}
]
},
"categories_slugify": {
"title": "Categories slugify function",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_slugify",
"default": "!!python/object/apply:pymdownx.slugs.slugify {kwds: {case: lower}}"
},
"categories_slugify_separator": {
"title": "Categories slugify separator",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_slugify_separator",
"type": "string",
"default": "\"-\""
},
"categories_sort_by": {
"title": "Sort categories by this function",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_sort_by",
"default": "!!python/name:material.plugins.blog.view_name",
"oneOf": [
{
"type": "string"
},
{
"enum": [
"!!python/name:material.plugins.blog.view_name",
"!!python/name:material.plugins.blog.view_post_count"
]
}
]
},
"categories_sort_reverse": {
"title": "Soft categories in reverse",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_sort_reverse",
"default": false
},
"categories_allowed": {
"title": "Allowed categories",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_allowed",
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"default": []
},
"categories_pagination": {
"title": "Pagination for categories",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_pagination",
"type": "boolean",
"default": true
},
"categories_pagination_per_page": {
"title": "Posts per page for categories",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_pagination_per_page",
"type": "number",
"default": 10
},
"categories_toc": {
"title": "Table of contents for categories",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.categories_toc",
"type": "boolean",
"default": false
},
"authors": {
"title": "Author info",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors",
"type": "boolean",
"default": true
},
"authors_file": {
"title": "Authors file",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_file",
"type": "string",
"default": "\"{blog}/.authors.yml\""
},
"authors_profiles": {
"title": "Author profiles",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles",
"type": "boolean",
"default": false
},
"authors_profiles_name": {
"title": "Authors profiles name",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles_name",
"type": "string",
"default": "Authors"
},
"authors_profiles_url_format": {
"title": "Format string for author profile URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles_url_format",
"oneOf": [
{
"enum": [
"\"author/{slug}\"",
"\"{slug}\""
]
},
{
"type": "string"
}
]
},
"authors_profiles_pagination": {
"title": "Pagination for author profiles",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles_pagination",
"type": "boolean",
"default": true
},
"authors_profiles_pagination_per_page": {
"title": "Posts per page for author profiles",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles_pagination_per_page",
"type": "number",
"default": 10
},
"authors_profiles_toc": {
"title": "Table of contents for author profiles",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.authors_profiles_toc",
"type": "boolean",
"default": false
},
"pagination": {
"title": "Pagination",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.pagination",
"type": "boolean",
"default": true
},
"pagination_per_page": {
"title": "Posts per page",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.pagination_per_page",
"type": "number",
"default": 10
},
"pagination_url_format": {
"title": "Format string for pagination URLs",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.pagination_url_format",
"oneOf": [
{
"enum": [
"\"page/{page}\"",
"\"{page}\""
]
},
{
"type": "string"
}
]
},
"pagination_template": {
"title": "Template string for pagination",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.pagination_template",
"oneOf": [
{
"enum": [
"~2~",
"$link_first $link_previous ~2~ $link_next $link_last",
"$link_previous $page $link_next"
]
},
{
"type": "string"
}
],
"default": "~2~"
},
"pagination_keep_content": {
"title": "Paginated indexes inherit content",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.pagination_keep_content",
"type": "boolean",
"default": false
},
"draft": {
"title": "Render posts marked as drafts",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.draft",
"type": "boolean",
"default": false
},
"draft_on_serve": {
"title": "Render posts marked as drafts when previewing",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.draft_on_serve",
"type": "boolean",
"default": true
},
"draft_if_future_date": {
"title": "Automatically mark posts with future dates as drafts",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/plugins/blog/#config.draft_if_future_date",
"type": "boolean",
"default": false
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
]
}