asciidoc top-level property
Language
asciidoc
final
Implementation
final asciidoc = Language(
id: "asciidoc",
refs: {},
name: "AsciiDoc",
aliases: ["adoc"],
contains: [
Mode(
scope: "comment",
begin: "^/{4,}\\n",
end: "\\n/{4,}\$",
contains: [
Mode(
scope: "doctag",
begin: "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",
end: "(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",
excludeBegin: true,
relevance: 0,
),
Mode(
begin:
"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
),
],
relevance: 10,
),
Mode(
scope: "comment",
begin: "^//",
end: "\$",
contains: [
Mode(
scope: "doctag",
begin: "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",
end: "(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",
excludeBegin: true,
relevance: 0,
),
Mode(
begin:
"[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}",
),
],
relevance: 0,
),
Mode(
className: "title",
begin: "^\\.\\w.*\$",
),
Mode(
begin: "^[=\\*]{4,}\\n",
end: "\\n^[=\\*]{4,}\$",
relevance: 10,
),
Mode(
className: "section",
relevance: 10,
variants: [
Mode(
begin: "^(={1,6})[ \t].+?([ \t]\\1)?\$",
),
Mode(
begin: "^[^\\[\\]\\n]+?\\n[=\\-\\x7e\\^\\+]{2,}\$",
),
],
),
Mode(
className: "meta",
begin: "^:.+?:",
end: "\\s",
excludeEnd: true,
relevance: 10,
),
Mode(
className: "meta",
begin: "^\\[.+?\\]\$",
relevance: 0,
),
Mode(
className: "quote",
begin: "^_{4,}\\n",
end: "\\n_{4,}\$",
relevance: 10,
),
Mode(
className: "code",
begin: "^[\\-\\.]{4,}\\n",
end: "\\n[\\-\\.]{4,}\$",
relevance: 10,
),
Mode(
begin: "^\\+{4,}\\n",
end: "\\n\\+{4,}\$",
contains: [
Mode(
begin: "<",
end: ">",
subLanguage: ["xml"],
relevance: 0,
),
],
relevance: 10,
),
Mode(
className: "bullet",
begin: "^(\\*+|-+|\\.+|[^\\n]+?::)\\s+",
),
Mode(
className: "symbol",
begin: "^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",
relevance: 10,
),
Mode(
begin: "\\\\[*_`]",
),
Mode(
begin: "\\\\\\\\\\*{2}[^\\n]*?\\*{2}",
),
Mode(
begin: "\\\\\\\\_{2}[^\\n]*_{2}",
),
Mode(
begin: "\\\\\\\\`{2}[^\\n]*`{2}",
),
Mode(
begin: "[:;}][*_`](?![*_`])",
),
Mode(
className: "strong",
begin: "\\*{2}([^\\n]+?)\\*{2}",
),
Mode(
className: "strong",
begin:
"\\*\\*((\\*(?!\\*)|\\\\[^\\n]|[^*\\n\\\\])+\\n)+(\\*(?!\\*)|\\\\[^\\n]|[^*\\n\\\\])*\\*\\*",
relevance: 0,
),
Mode(
className: "strong",
begin: "\\B\\*(\\S|\\S[^\\n]*?\\S)\\*(?!\\w)",
),
Mode(
className: "strong",
begin: "\\*[^\\s]([^\\n]+\\n)+([^\\n]+)\\*",
),
Mode(
className: "emphasis",
begin: "_{2}([^\\n]+?)_{2}",
),
Mode(
className: "emphasis",
begin:
"__((_(?!_)|\\\\[^\\n]|[^_\\n\\\\])+\\n)+(_(?!_)|\\\\[^\\n]|[^_\\n\\\\])*__",
relevance: 0,
),
Mode(
className: "emphasis",
begin: "\\b_(\\S|\\S[^\\n]*?\\S)_(?!\\w)",
),
Mode(
className: "emphasis",
begin: "_[^\\s]([^\\n]+\\n)+([^\\n]+)_",
),
Mode(
className: "emphasis",
begin: "\\B'(?!['\\s])",
end: "(\\n{2}|')",
contains: [
Mode(
begin: "\\\\'\\w",
relevance: 0,
),
],
relevance: 0,
),
Mode(
className: "string",
variants: [
Mode(
begin: "``.+?''",
),
Mode(
begin: "`.+?'",
),
],
),
Mode(
className: "code",
begin: "`{2}",
end: "(\\n{2}|`{2})",
),
Mode(
className: "code",
begin: "(`.+?`|\\+.+?\\+)",
relevance: 0,
),
Mode(
className: "code",
begin: "^[ \\t]",
end: "\$",
relevance: 0,
),
Mode(
begin: "^'{3,}[ \\t]*\$",
relevance: 10,
),
Mode(
begin: "(link:)?(http|https|ftp|file|irc|image:?):\\S+?\\[[^[]*?\\]",
returnBegin: true,
contains: [
Mode(
begin: "(link|image:?):",
relevance: 0,
),
Mode(
className: "link",
begin: "\\w",
end: "[^\\[]+",
relevance: 0,
),
Mode(
className: "string",
begin: "\\[",
end: "\\]",
excludeBegin: true,
excludeEnd: true,
relevance: 0,
),
],
relevance: 10,
),
],
);