Macros Plugin Environment¶
General List¶
All available variables and filters within the macros plugin:
Variable | Type | Content |
---|---|---|
extra | dict | feature [dict], social = [{'icon': 'fontawesome/solid/globe', 'link': 'https://www.voronenko.info'}, {'icon': 'fontawesome/brands/github-alt', 'link': 'https://github.com/voronenko'}, {'icon': 'fontawesome/brands/twitter', 'link': 'https://twitter.com/slavko'}, {'icon': 'fontawesome/brands/linkedin', 'link': 'https://www.linkedin.com/in/voronenkovyacheslav/'}] |
config | MkDocsConfig | {'config_file_path': '/home/runner/work/voronenko/voronenko/mkdocs.yml', 'site_name': "Vyacheslav's notes", 'nav': None, 'pages': None, 'site_url': None, 'site_description': None, 'site_author': None, 'theme': Theme(name='material', dirs=['/home/runner/work/voronenko/voronenko/theme_overrides', '/home/runner/.local/share/virtualenvs/voronenko-t-UW-ESv/lib/python3.9/site-packages/material', '/home/runner/.local/share/virtualenvs/voronenko-t-UW-ESv/lib/python3.9/site-packages/mkdocs/templates'], static_templates=['sitemap.xml', '404.html'], name='material', locale=Locale(language='en', territory=''), language='en', direction=None, features=[], palette={'primary': 'blue-grey', 'accent': 'light-blue'}, font={'text': 'Ubuntu', 'code': 'Ubuntu Mono'}, icon=None, favicon='assets/images/favicon.png', include_search_page=False, search_index_only=True), 'docs_dir': '/home/runner/work/voronenko/voronenko/docs', 'site_dir': '/home/runner/work/voronenko/voronenko/site', 'copyright': None, 'google_analytics': None, 'dev_addr': _IpAddressValue(host='127.0.0.1', port=8000), 'use_directory_urls': True, 'repo_url': None, 'repo_name': None, 'edit_uri_template': None, 'edit_uri': None, 'extra_css': ['css/ansi-colours.css', 'css/jupyter-cells.css', 'css/pandas-dataframe.css'], 'extra_javascript': [], 'extra_templates': [], 'markdown_extensions': ['toc', 'tables', 'fenced_code', 'admonition', 'fontawesome_markdown', 'plantuml_markdown', 'codehilite', 'markdown.extensions.admonition', 'markdown.extensions.codehilite', 'markdown.extensions.def_list', 'markdown.extensions.footnotes', 'markdown.extensions.meta', 'markdown.extensions.toc', 'nl2br', 'pymdownx.arithmatex', 'pymdownx.betterem', 'pymdownx.caret', 'pymdownx.critic', 'pymdownx.emoji', 'pymdownx.inlinehilite', 'pymdownx.magiclink', 'pymdownx.mark', 'pymdownx.smartsymbols', 'pymdownx.superfences', 'pymdownx.tasklist', 'pymdownx.tilde'], 'mdx_configs': {'markdown.extensions.codehilite': {'guess_lang': False}, 'markdown.extensions.toc': {'permalink': True}, 'pymdownx.betterem': {'smart_enable': 'all'}, 'pymdownx.emoji': {'emoji_generator': |
environment | dict | system = 'Linux', system_version = '5.15.0-1023-azure', python_version = '3.9.15', mkdocs_version = '1.4.2', macros_plugin_version = '0.7.0', jinja2_version = '3.1.2' |
plugin | LegacyConfig | {'module_name': 'main', 'modules': [], 'include_dir': '', 'include_yaml': [], 'j2_block_start_string': '', 'j2_block_end_string': '', 'j2_variable_start_string': '', 'j2_variable_end_string': '', 'on_undefined': 'keep', 'on_error_fail': False, 'verbose': False} |
git | dict | status = True, date [datetime], short_commit = '7cda481', commit = '7cda481c02ad65d0bdca1c7e92f185e6fcfbedff', tag = '', author = 'Vyacheslav Voronenko', author_email = '[email protected]', committer = 'Vyacheslav Voronenko', committer_email = '[email protected]', date_ISO = 'Tue Dec 6 15:21:09 2022 +0100', message = 'improve(versions) synced to runbooks project', raw = 'commit 7cda481c02ad65d0bdca1c7e92f185e6fcfbedff\nAuthor: Vyacheslav Voronenko |
feature | dict | tabs = False |
social | list | [{'icon': 'fontawesome/solid/globe', 'link': 'https://www.voronenko.info'}, {'icon': 'fontawesome/brands/github-alt', 'link': 'https://github.com/voronenko'}, {'icon': 'fontawesome/brands/twitter', 'link': 'https://twitter.com/slavko'}, {'icon': 'fontawesome/brands/linkedin', 'link': 'https://www.linkedin.com/in/voronenkovyacheslav/'}] |
hello | str | 'hello' |
baz | str | 'buz' |
macros | SuperDict | context [function], macros_info [function], now [function], fix_url [function] |
filters | dict | pretty [function] |
filters_builtin | dict | abs [builtin_function_or_method], attr [function], batch [function], capitalize [function], center [function], count [builtin_function_or_method], d [function], default [function], dictsort [function], e [builtin_function_or_method], escape [builtin_function_or_method], filesizeformat [function], first [function], float [function], forceescape [function], format [function], groupby [function], indent [function], int [function], join [function], last [function], length [builtin_function_or_method], list [function], lower [function], items [function], map [function], min [function], max [function], pprint [function], random [function], reject [function], rejectattr [function], replace [function], reverse [function], round [function], safe [function], select [function], selectattr [function], slice [function], sort [function], string [builtin_function_or_method], striptags [function], sum [function], title [function], trim [function], truncate [function], unique [function], upper [function], urlencode [function], urlize [function], wordcount [function], wordwrap [function], xmlattr [function], tojson [function] |
navigation | Navigation | Page(title='Home', url='./') Page(title='Short time consulting', url='short-time-consulting/') Section(title='Debug') Page(title='Admonition', url='debug/admonition/') Page(title='CodeHilite', url='debug/codehilite/') Page(title='Debug', url='debug/debug/') Page(title=[blank], url='debug/footnotes/') Page(title=[blank], url='debug/metadata/') Page(title=[blank], url='debug/permalinks/') Page(title=[blank], url='debug/pymdown/') Section(title='Toolsets') Page(title=[blank], url='toolsets/chrome-flags/') Page(title=[blank], url='toolsets/diagrams-as-code/') Section(title='Unsorted notes') Page(title=[blank], url='unsorted-notes/acme_sh/') Page(title=[blank], url='unsorted-notes/circleci/') Page(title=[blank], url='unsorted-notes/exsi/') Page(title=[blank], url='unsorted-notes/golang/') Page(title=[blank], url='unsorted-notes/ignite/') Page(title=[blank], url='unsorted-notes/jetbrains/') Page(title=[blank], url='unsorted-notes/jsonnet/') Page(title=[blank], url='unsorted-notes/letsencrypt_acme/') Page(title=[blank], url='unsorted-notes/maven/') Page(title=[blank], url='unsorted-notes/openshift/') Page(title=[blank], url='unsorted-notes/openvpn/') Page(title=[blank], url='unsorted-notes/postgres/') Page(title=[blank], url='unsorted-notes/privacy-straisend/') Page(title=[blank], url='unsorted-notes/scripts_shell/') Page(title=[blank], url='unsorted-notes/ssh_keys/') Page(title=[blank], url='unsorted-notes/ubuntu/') Section(title='Aws') Page(title=[blank], url='unsorted-notes/aws/aws/') Page(title=[blank], url='unsorted-notes/aws/security-tools/') Section(title='Azure') Page(title=[blank], url='unsorted-notes/azure/azure_intro/') Section(title='Dotnet') Page(title=[blank], url='unsorted-notes/dotnet/core/') Page(title=[blank], url='unsorted-notes/dotnet/environment_vars_in_apppools/') Section(title='Frontend') Page(title=[blank], url='unsorted-notes/frontend/sass/') Section(title='Github') Page(title=[blank], url='unsorted-notes/github/actions/') Page(title=[blank], url='unsorted-notes/github/official/') Section(title='Kong') Page(title=[blank], url='unsorted-notes/kong/auth0/') Section(title='Kubernetes') Page(title=[blank], url='unsorted-notes/kubernetes/StaticIP/') Page(title=[blank], url='unsorted-notes/kubernetes/basic_commands_2_2/') Page(title=[blank], url='unsorted-notes/kubernetes/helm/') Page(title=[blank], url='unsorted-notes/kubernetes/letsencrypt/') Page(title=[blank], url='unsorted-notes/kubernetes/pods/') Section(title='Mikrotik') Page(title=[blank], url='unsorted-notes/mikrotik/gns3/') Page(title=[blank], url='unsorted-notes/mikrotik/openvpn/') Page(title=[blank], url='unsorted-notes/mikrotik/routing-list/') Section(title='Pm templates') Page(title=[blank], url='unsorted-notes/pm-templates/code-reviews/') Section(title='Security tools') Page(title=[blank], url='unsorted-notes/security-tools/owasp_zap/') Section(title='Terraform') Page(title=[blank], url='unsorted-notes/terraform/Terraform-companion-blast-radius/') Section(title='Categories') Page(title=[blank], url='categories/') Section(title='Blog') Page(title='AWS Community Nordics community day 2020 (05/21/20)', url='blog/2020/05/21/community-days-nordic-2020/') |
files | Files | |
page | Page | Page(title='Debug', url='debug/debug/') |
Config Information¶
Standard MkDocs configuration information. Do not try to modify.
e.g. {{ config.docs_dir }}
See also the MkDocs documentation on the config object.
Variable | Type | Content |
---|---|---|
config_file_path | str | '/home/runner/work/voronenko/voronenko/mkdocs.yml' |
site_name | str | "Vyacheslav's notes" |
nav | NoneType | None |
pages | NoneType | None |
site_url | NoneType | None |
site_description | NoneType | None |
site_author | NoneType | None |
theme | Theme | Theme(name='material', dirs=['/home/runner/work/voronenko/voronenko/theme_overrides', '/home/runner/.local/share/virtualenvs/voronenko-t-UW-ESv/lib/python3.9/site-packages/material', '/home/runner/.local/share/virtualenvs/voronenko-t-UW-ESv/lib/python3.9/site-packages/mkdocs/templates'], static_templates=['sitemap.xml', '404.html'], name='material', locale=Locale(language='en', territory=''), language='en', direction=None, features=[], palette={'primary': 'blue-grey', 'accent': 'light-blue'}, font={'text': 'Ubuntu', 'code': 'Ubuntu Mono'}, icon=None, favicon='assets/images/favicon.png', include_search_page=False, search_index_only=True) |
docs_dir | str | '/home/runner/work/voronenko/voronenko/docs' |
site_dir | str | '/home/runner/work/voronenko/voronenko/site' |
copyright | NoneType | None |
google_analytics | NoneType | None |
dev_addr | _IpAddressValue | _IpAddressValue(host='127.0.0.1', port=8000) |
use_directory_urls | bool | True |
repo_url | NoneType | None |
repo_name | NoneType | None |
edit_uri_template | NoneType | None |
edit_uri | NoneType | None |
extra_css | list | ['css/ansi-colours.css', 'css/jupyter-cells.css', 'css/pandas-dataframe.css'] |
extra_javascript | list | [] |
extra_templates | list | [] |
markdown_extensions | list | ['toc', 'tables', 'fenced_code', 'admonition', 'fontawesome_markdown', 'plantuml_markdown', 'codehilite', 'markdown.extensions.admonition', 'markdown.extensions.codehilite', 'markdown.extensions.def_list', 'markdown.extensions.footnotes', 'markdown.extensions.meta', 'markdown.extensions.toc', 'nl2br', 'pymdownx.arithmatex', 'pymdownx.betterem', 'pymdownx.caret', 'pymdownx.critic', 'pymdownx.emoji', 'pymdownx.inlinehilite', 'pymdownx.magiclink', 'pymdownx.mark', 'pymdownx.smartsymbols', 'pymdownx.superfences', 'pymdownx.tasklist', 'pymdownx.tilde'] |
mdx_configs | dict | markdown.extensions.codehilite [dict], markdown.extensions.toc [dict], pymdownx.betterem [dict], pymdownx.emoji [dict], pymdownx.tasklist [dict], toc [dict] |
strict | bool | False |
remote_branch | str | 'gh-pages' |
remote_name | str | 'origin' |
extra | LegacyConfig | {'feature': {'tabs': False}, 'social': [{'icon': 'fontawesome/solid/globe', 'link': 'https://www.voronenko.info'}, {'icon': 'fontawesome/brands/github-alt', 'link': 'https://github.com/voronenko'}, {'icon': 'fontawesome/brands/twitter', 'link': 'https://twitter.com/slavko'}, {'icon': 'fontawesome/brands/linkedin', 'link': 'https://www.linkedin.com/in/voronenkovyacheslav/'}]} |
plugins | PluginCollection | build_plantuml [BuildPlantumlPlugin], exclude [Exclude], table-reader [TableReaderPlugin], macros [MacrosPlugin], mknotebooks [Plugin], autolinks [AutoLinksPlugin], redirects [RedirectPlugin], blog [Blog], mkdocs-simple-hooks [SimpleHooksPlugin], tags [TagsPlugin], categories [CategoriesPlugin] |
hooks | dict | |
watch | list | [] |
Macros¶
These macros have been defined programmatically for this environment
(module or pluglets).
Variable | Type | Content |
---|---|---|
context | function | (obj, e) Default mkdocs_macro List the defined variables |
macros_info | function | () Test/debug function: list useful documentation on the mkdocs_macro environment. |
now | function | () Get the current time (returns a datetime object). Used alone, it provides a timestamp. To get the year use |
fix_url | function | (url, r) If url is relative, fix it so that it points to the docs diretory. This is necessary because relative links in markdown must be adapted in html ('img/foo.png' => '../img/img.png'). |
Git Information¶
Information available on the last commit and the git repository containing the
documentation project:
e.g. {{ git.message }}
Variable | Type | Content |
---|---|---|
status | bool | True |
date | datetime | datetime.datetime(2022, 12, 6, 15, 21, 9, tzinfo=tzoffset(None, 3600)) |
short_commit | str | '7cda481' |
commit | str | '7cda481c02ad65d0bdca1c7e92f185e6fcfbedff' |
tag | str | '' |
author | str | 'Vyacheslav Voronenko' |
author_email | str | '[email protected]' |
committer | str | 'Vyacheslav Voronenko' |
committer_email | str | '[email protected]' |
date_ISO | str | 'Tue Dec 6 15:21:09 2022 +0100' |
message | str | 'improve(versions) synced to runbooks project' |
raw | str | 'commit 7cda481c02ad65d0bdca1c7e92f185e6fcfbedff\nAuthor: Vyacheslav Voronenko |
root_dir | str | '/home/runner/work/voronenko/voronenko' |
Page Attributes¶
Provided by MkDocs. These attributes change for every page
(the attributes shown are for this page).
e.g. {{ page.title }}
See also the MkDocs documentation on the page object.
Variable | Type | Content |
---|---|---|
file | File | page [Page], src_uri = 'debug/debug.md', abs_src_path = '/home/runner/work/voronenko/voronenko/docs/debug/debug.md', name = 'debug', dest_uri = 'debug/debug/index.html', abs_dest_path = '/home/runner/work/voronenko/voronenko/site/debug/debug/index.html', url = 'debug/debug/' |
title | str | 'Debug' |
parent | Section | title = 'Debug', children = [Page(title='Admonition', url='debug/admonition/'), Page(title='CodeHilite', url='debug/codehilite/'), Page(title='Debug', url='debug/debug/'), Page(title=[blank], url='debug/footnotes/'), Page(title=[blank], url='debug/metadata/'), Page(title=[blank], url='debug/permalinks/'), Page(title=[blank], url='debug/pymdown/')], parent [NoneType], _Section__active = False |
children | NoneType | None |
previous_page | Page | Page(title='CodeHilite', url='debug/codehilite/') |
next_page | Page | Page(title=[blank], url='debug/footnotes/') |
_Page__active | bool | False |
update_date | str | '2022-12-06' |
canonical_url | NoneType | None |
abs_url | NoneType | None |
edit_url | NoneType | None |
markdown | str | '{{ macros_info() }}\n' |
content | NoneType | None |
toc | list | [] |
meta | dict |
To have all titles of all pages, use:
{% for page in navigation.pages %}
- {{ page.title }}
{% endfor %}
Plugin Filters¶
These filters are provided as a standard by the macros plugin.
Variable | Type | Content |
---|---|---|
pretty | function | (var_list, rows, header, e) Default mkdocs_macro Prettify a dictionary or object (used for environment documentation, or debugging). |
Builtin Jinja2 Filters¶
These filters are provided by Jinja2 as a standard.
See also the Jinja2 documentation on builtin filters).
Variable | Type | Content |
---|---|---|
abs | builtin_function_or_method | Return the absolute value of the argument. |
attr | function | (environment, obj, name, value) Get an attribute of an object. |
batch | function | (value, linecount, fill_with, tmp, item) A filter that batches items. It works pretty much like |
capitalize | function | (s) Capitalize a value. The first character will be uppercase, all others lowercase. |
center | function | (value, width) Centers the value in a field of a given width. |
count | builtin_function_or_method | Return the number of items in a container. |
d | function | (value, default_value, boolean) If the value is undefined it will return the passed default value, otherwise the value of the variable. |
default | function | (value, default_value, boolean) If the value is undefined it will return the passed default value, otherwise the value of the variable. |
dictsort | function | (value, case_sensitive, by, reverse, sort_func) Sort a dict and yield (key, value) pairs. Python dicts may not be in the order you want to display them in, so sort them first. |
e | builtin_function_or_method | Replace the characters |
escape | builtin_function_or_method | Replace the characters |
filesizeformat | function | (value, binary, bytes, base, prefixes, i, prefix, unit) Format the value like a 'human-readable' file size (i.e. 13 kB, 4.1 MB, 102 Bytes, etc). Per default decimal prefixes are used (Mega, Giga, etc.), if the second parameter is set to |
first | function | (args, kwargs, b) Return the first item of a sequence. |
float | function | (value, default) Convert the value into a floating point number. If the conversion doesn't work it will return |
forceescape | function | (value) Enforce HTML escaping. This will probably double escape variables. |
format | function | (value, args, kwargs) Apply the given values to a |
groupby | function | (args, kwargs, b) Group a sequence of objects by an attribute using Python's :func: |
indent | function | (s, width, first, blank, newline, rv, lines) Return a copy of the string with each line indented by 4 spaces. The first line and blank lines are not indented by default. |
int | function | (value, default, base) Convert the value into an integer. If the conversion doesn't work it will return |
join | function | (args, kwargs, b) Return a string which is the concatenation of the strings in the sequence. The separator between elements is an empty string per default, you can define it with the optional parameter. |
last | function | (environment, seq) Return the last item of a sequence. |
length | builtin_function_or_method | Return the number of items in a container. |
list | function | (args, kwargs, b) Convert the value into a list. If it was a string the returned list will be a list of characters. |
lower | function | (s) Convert a value to lowercase. |
items | function | (value) Return an iterator over the |
map | function | (args, kwargs, b) Applies a filter on a sequence of objects or looks up an attribute. This is useful when dealing with lists of objects but you are really only interested in a certain value of it. |
min | function | (environment, value, case_sensitive, attribute) Return the smallest item from the sequence. |
max | function | (environment, value, case_sensitive, attribute) Return the largest item from the sequence. |
pprint | function | (value) Pretty print a variable. Useful for debugging. |
random | function | (context, seq) Return a random item from the sequence. |
reject | function | (args, kwargs, b) Filters a sequence of objects by applying a test to each object, and rejecting the objects with the test succeeding. |
rejectattr | function | (args, kwargs, b) Filters a sequence of objects by applying a test to the specified attribute of each object, and rejecting the objects with the test succeeding. |
replace | function | (eval_ctx, s, old, new, count) Return a copy of the value with all occurrences of a substring replaced with a new one. The first argument is the substring that should be replaced, the second is the replacement string. If the optional third argument |
reverse | function | (value, rv, e) Reverse the object or return an iterator that iterates over it the other way round. |
round | function | (value, precision, method, func) Round the number to a given precision. The first parameter specifies the precision (default is |
safe | function | (value) Mark the value as safe which means that in an environment with automatic escaping enabled this variable will not be escaped. |
select | function | (args, kwargs, b) Filters a sequence of objects by applying a test to each object, and only selecting the objects with the test succeeding. |
selectattr | function | (args, kwargs, b) Filters a sequence of objects by applying a test to the specified attribute of each object, and only selecting the objects with the test succeeding. |
slice | function | (args, kwargs, b) Slice an iterator and return a list of lists containing those items. Useful if you want to create a div containing three ul tags that represent columns. |
sort | function | (environment, value, reverse, case_sensitive, attribute, key_func) Sort an iterable using Python's :func: |
string | builtin_function_or_method | Convert an object to a string if it isn't already. This preserves a :class: |
striptags | function | (value) Strip SGML/XML tags and replace adjacent whitespace by one space. |
sum | function | (args, kwargs, b) Returns the sum of a sequence of numbers plus the value of parameter 'start' (which defaults to 0). When the sequence is empty it returns start. |
title | function | (s) Return a titlecased version of the value. I.e. words will start with uppercase letters, all remaining characters are lowercase. |
trim | function | (value, chars) Strip leading and trailing characters, by default whitespace. |
truncate | function | (env, s, length, killwords, end, leeway, result) Return a truncated copy of the string. The length is specified with the first parameter which defaults to |
unique | function | (environment, value, case_sensitive, attribute, getter, seen, item, key) Returns a list of unique items from the given iterable. |
upper | function | (s) Convert a value to uppercase. |
urlencode | function | (value, items) Quote data for use in a URL path or query using UTF-8. |
urlize | function | (eval_ctx, value, trim_url_limit, nofollow, target, rel, extra_schemes, policies, rel_parts, scheme, rv) Convert URLs in text into clickable links. |
wordcount | function | (s) Count the words in that string. |
wordwrap | function | (environment, s, width, break_long_words, wrapstring, break_on_hyphens) Wrap a string to the given width. Existing newlines are treated as paragraphs to be wrapped separately. |
xmlattr | function | (eval_ctx, d, autospace, rv) Create an SGML/XML attribute string based on the items in a dict. All values that are neither |
tojson | function | (eval_ctx, value, indent, policies, dumps, kwargs) Serialize an object to a string of JSON, and mark it safe to render in HTML. This filter is only for use in HTML documents. |