jekyll-theme-modootoday 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -3
- data/README.ko.md +3 -3
- data/README.md +3 -3
- data/RULES.md +4 -4
- data/_includes/modootoday/config.html +2 -2
- data/_includes/modootoday/i18n/ar.html +1 -1
- data/_includes/modootoday/i18n/de.html +1 -1
- data/_includes/modootoday/i18n/el.html +1 -1
- data/_includes/modootoday/i18n/es.html +1 -1
- data/_includes/modootoday/i18n/fa.html +1 -1
- data/_includes/modootoday/i18n/fr.html +1 -1
- data/_includes/modootoday/i18n/id.html +1 -1
- data/_includes/modootoday/i18n/it.html +1 -1
- data/_includes/modootoday/i18n/ja.html +1 -1
- data/_includes/modootoday/i18n/ko.html +1 -1
- data/_includes/modootoday/i18n/ml.html +1 -1
- data/_includes/modootoday/i18n/pl.html +1 -1
- data/_includes/modootoday/i18n/pt-BR.html +1 -1
- data/_includes/modootoday/i18n/ro.html +1 -1
- data/_includes/modootoday/i18n/ru.html +1 -1
- data/_includes/modootoday/i18n/th.html +1 -1
- data/_includes/modootoday/i18n/tr.html +1 -1
- data/_includes/modootoday/i18n/uk.html +1 -1
- data/_includes/modootoday/i18n/ur-Latn.html +1 -1
- data/_includes/modootoday/i18n/vi.html +1 -1
- data/_includes/modootoday/i18n/zh-CN.html +1 -1
- data/_includes/modootoday/i18n/zh-TW.html +1 -1
- data/_includes/modootoday/i18n.html +115 -114
- data/_includes/modootoday/markdown/components.html +8 -1
- data/_includes/modootoday/render/asset.html +21 -0
- data/_includes/modootoday/render/math.html +34 -0
- data/_includes/modootoday/render/mermaid.html +19 -0
- data/_includes/modootoday/stylesheets.html +1 -0
- data/_includes/modootoday/t.html +1 -1
- data/_layouts/default.html +3 -1
- data/_sass/modootoday/base/_prose.scss +1 -2
- data/_sass/modootoday/components/figure/_figure-svg.scss +14 -0
- data/_sass/modootoday/components/section/showcase/_card.scss +2 -0
- data/assets/css/modootoday/figure.scss +8 -0
- data/assets/js/modootoday/scroll-region.js +1 -1
- data/assets/js/modootoday-math.js +19 -0
- data/assets/js/modootoday-mermaid.js +39 -0
- data/i18n/ar.yml +1 -0
- data/i18n/de.yml +1 -0
- data/i18n/el.yml +1 -0
- data/i18n/en.yml +1 -0
- data/i18n/es.yml +1 -0
- data/i18n/fa.yml +1 -0
- data/i18n/fr.yml +1 -0
- data/i18n/id.yml +1 -0
- data/i18n/it.yml +1 -0
- data/i18n/ja.yml +1 -0
- data/i18n/ko.yml +1 -0
- data/i18n/ml.yml +1 -0
- data/i18n/pl.yml +1 -0
- data/i18n/pt-BR.yml +1 -0
- data/i18n/ro.yml +1 -0
- data/i18n/ru.yml +1 -0
- data/i18n/th.yml +1 -0
- data/i18n/tr.yml +1 -0
- data/i18n/uk.yml +1 -0
- data/i18n/ur-Latn.yml +1 -0
- data/i18n/vi.yml +1 -0
- data/i18n/zh-CN.yml +1 -0
- data/i18n/zh-TW.yml +1 -0
- data/lib/modootoday/check/cli.rb +1 -1
- data/lib/modootoday/check/page_syntax.rb +3 -1
- data/lib/modootoday/check/renderers.rb +128 -0
- data/lib/modootoday/check.rb +1 -0
- metadata +9 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
{%- assign _tl = include.lang | default: page.lang | default: site.lang | default: "en" -%}
|
|
6
6
|
{%- unless mt_t_lang == _tl -%}
|
|
7
7
|
{%- assign mt_t_lang = _tl -%}
|
|
8
|
-
{%- capture _tc -%}Skip to contentopens in a new windowOpen in new windowNoteTipImportantWarningCautionAvailablePartialPlannedDoneOpenOptionsOn this pageDark modeDocsPage actionsCopy pageCopy for AIView as MarkdownSourceBreadcrumbMainBack to topPagesPreviousNextCopyCopiedCodeFileTableSearchEdit this pageLast updatedLanguages%Y-%m-%dAbout the authorRelated postsShareThis page is not translated yet, so it is shown in English.YearsTagsCategoriespostsNo posts yet.FeaturedRead more[n] min readByUpdatedNewer postsOlder postsRelated postsSeriesPart [n] of [total]Copy linkLink copiedFeedLatestBreakingLiveCorrectionSourcesMore in [section]AuthorsFile treeCloseEmbedded contentRecommendedAnnouncementBack to referenceProgressEmail addressSubscribeRequiredLoading…Page not foundThe page you asked for does not exist or has moved.Page removedThis page was removed on purpose and will not come back.Something went wrongThe server could not show this page. Please try again in a moment.Go to the home pageThis page has moved.Continue to the new pageType at least two letters to search.AllFilter byRoleClientYearToolsLinksLocationEmployment typeSalaryPostedApply byApplyStartsEndsVenueOnlineAgendaGet ticketsAdd to calendarEpisode [n]Season [n]DurationListenTranscriptMonthlyYearlyBilling periodMost popularDownloadVersionColorsAssetsSendNameEmailMessageContactAddedChangedFixedRemovedSecurityNowNextLaterJump to letterLessons[n] minModule [n]Chapter [n]EffectiveExperienceEducationSkillsPresentLoading…Contents{%- endcapture -%}{%- assign _te = _tc | split: "" -%}
|
|
8
|
+
{%- capture _tc -%}Skip to contentopens in a new windowOpen in new windowNoteTipImportantWarningCautionAvailablePartialPlannedDoneOpenOptionsOn this pageDark modeDocsPage actionsCopy pageCopy for AIView as MarkdownSourceBreadcrumbMainBack to topPagesPreviousNextCopyCopiedCodeFileTableDiagramSearchEdit this pageLast updatedLanguages%Y-%m-%dAbout the authorRelated postsShareThis page is not translated yet, so it is shown in English.YearsTagsCategoriespostsNo posts yet.FeaturedRead more[n] min readByUpdatedNewer postsOlder postsRelated postsSeriesPart [n] of [total]Copy linkLink copiedFeedLatestBreakingLiveCorrectionSourcesMore in [section]AuthorsFile treeCloseEmbedded contentRecommendedAnnouncementBack to referenceProgressEmail addressSubscribeRequiredLoading…Page not foundThe page you asked for does not exist or has moved.Page removedThis page was removed on purpose and will not come back.Something went wrongThe server could not show this page. Please try again in a moment.Go to the home pageThis page has moved.Continue to the new pageType at least two letters to search.AllFilter byRoleClientYearToolsLinksLocationEmployment typeSalaryPostedApply byApplyStartsEndsVenueOnlineAgendaGet ticketsAdd to calendarEpisode [n]Season [n]DurationListenTranscriptMonthlyYearlyBilling periodMost popularDownloadVersionColorsAssetsSendNameEmailMessageContactAddedChangedFixedRemovedSecurityNowNextLaterJump to letterLessons[n] minModule [n]Chapter [n]EffectiveExperienceEducationSkillsPresentLoading…Contents{%- endcapture -%}{%- assign _te = _tc | split: "" -%}
|
|
9
9
|
{%- assign _tx = nil -%}{%- assign _tdir = nil -%}{%- assign _tf = nil -%}
|
|
10
10
|
{%- assign _tb = _tl | split: "-" | first -%}
|
|
11
11
|
{%- assign _tk = " " | append: _tl | append: " " -%}{%- assign _tbk = " " | append: _tb | append: " " -%}
|
|
@@ -46,118 +46,119 @@
|
|
|
46
46
|
{%- assign mt_t_code_label = _ts.code.label | default: _tx[30] | default: _te[30] -%}
|
|
47
47
|
{%- assign mt_t_code_file = _ts.code.file | default: _tx[31] | default: _te[31] -%}
|
|
48
48
|
{%- assign mt_t_table_label = _ts.table.label | default: _tx[32] | default: _te[32] -%}
|
|
49
|
-
{%- assign
|
|
50
|
-
{%- assign
|
|
51
|
-
{%- assign
|
|
52
|
-
{%- assign
|
|
53
|
-
{%- assign
|
|
54
|
-
{%- assign
|
|
55
|
-
{%- assign
|
|
56
|
-
{%- assign
|
|
57
|
-
{%- assign
|
|
58
|
-
{%- assign
|
|
59
|
-
{%- assign
|
|
60
|
-
{%- assign
|
|
61
|
-
{%- assign
|
|
62
|
-
{%- assign
|
|
63
|
-
{%- assign
|
|
64
|
-
{%- assign
|
|
65
|
-
{%- assign
|
|
66
|
-
{%- assign
|
|
67
|
-
{%- assign
|
|
68
|
-
{%- assign
|
|
69
|
-
{%- assign
|
|
70
|
-
{%- assign
|
|
71
|
-
{%- assign
|
|
72
|
-
{%- assign
|
|
73
|
-
{%- assign
|
|
74
|
-
{%- assign
|
|
75
|
-
{%- assign
|
|
76
|
-
{%- assign
|
|
77
|
-
{%- assign
|
|
78
|
-
{%- assign
|
|
79
|
-
{%- assign
|
|
80
|
-
{%- assign
|
|
81
|
-
{%- assign
|
|
82
|
-
{%- assign
|
|
83
|
-
{%- assign
|
|
84
|
-
{%- assign
|
|
85
|
-
{%- assign
|
|
86
|
-
{%- assign
|
|
87
|
-
{%- assign
|
|
88
|
-
{%- assign
|
|
89
|
-
{%- assign
|
|
90
|
-
{%- assign
|
|
91
|
-
{%- assign
|
|
92
|
-
{%- assign
|
|
93
|
-
{%- assign
|
|
94
|
-
{%- assign
|
|
95
|
-
{%- assign
|
|
96
|
-
{%- assign
|
|
97
|
-
{%- assign
|
|
98
|
-
{%- assign
|
|
99
|
-
{%- assign
|
|
100
|
-
{%- assign
|
|
101
|
-
{%- assign
|
|
102
|
-
{%- assign
|
|
103
|
-
{%- assign
|
|
104
|
-
{%- assign
|
|
105
|
-
{%- assign
|
|
106
|
-
{%- assign
|
|
107
|
-
{%- assign
|
|
108
|
-
{%- assign
|
|
109
|
-
{%- assign
|
|
110
|
-
{%- assign
|
|
111
|
-
{%- assign
|
|
112
|
-
{%- assign
|
|
113
|
-
{%- assign
|
|
114
|
-
{%- assign
|
|
115
|
-
{%- assign
|
|
116
|
-
{%- assign
|
|
117
|
-
{%- assign
|
|
118
|
-
{%- assign
|
|
119
|
-
{%- assign
|
|
120
|
-
{%- assign
|
|
121
|
-
{%- assign
|
|
122
|
-
{%- assign
|
|
123
|
-
{%- assign
|
|
124
|
-
{%- assign
|
|
125
|
-
{%- assign
|
|
126
|
-
{%- assign
|
|
127
|
-
{%- assign
|
|
128
|
-
{%- assign
|
|
129
|
-
{%- assign
|
|
130
|
-
{%- assign
|
|
131
|
-
{%- assign
|
|
132
|
-
{%- assign
|
|
133
|
-
{%- assign
|
|
134
|
-
{%- assign
|
|
135
|
-
{%- assign
|
|
136
|
-
{%- assign
|
|
137
|
-
{%- assign
|
|
138
|
-
{%- assign
|
|
139
|
-
{%- assign
|
|
140
|
-
{%- assign
|
|
141
|
-
{%- assign
|
|
142
|
-
{%- assign
|
|
143
|
-
{%- assign
|
|
144
|
-
{%- assign
|
|
145
|
-
{%- assign
|
|
146
|
-
{%- assign
|
|
147
|
-
{%- assign
|
|
148
|
-
{%- assign
|
|
149
|
-
{%- assign
|
|
150
|
-
{%- assign
|
|
151
|
-
{%- assign
|
|
152
|
-
{%- assign
|
|
153
|
-
{%- assign
|
|
154
|
-
{%- assign
|
|
155
|
-
{%- assign
|
|
156
|
-
{%- assign
|
|
157
|
-
{%- assign
|
|
158
|
-
{%- assign
|
|
159
|
-
{%- assign
|
|
160
|
-
{%- assign
|
|
161
|
-
{%- assign
|
|
49
|
+
{%- assign mt_t_diagram_label = _ts.diagram.label | default: _tx[33] | default: _te[33] -%}
|
|
50
|
+
{%- assign mt_t_search_label = _ts.search.label | default: _tx[34] | default: _te[34] -%}
|
|
51
|
+
{%- assign mt_t_page_edit = _ts.page.edit | default: _tx[35] | default: _te[35] -%}
|
|
52
|
+
{%- assign mt_t_page_updated = _ts.page.updated | default: _tx[36] | default: _te[36] -%}
|
|
53
|
+
{%- assign mt_t_languages_label = _ts.languages.label | default: _tx[37] | default: _te[37] -%}
|
|
54
|
+
{%- assign mt_t_post_date_format = _ts.post.date_format | default: _tx[38] | default: _te[38] -%}
|
|
55
|
+
{%- assign mt_t_post_author = _ts.post.author | default: _tx[39] | default: _te[39] -%}
|
|
56
|
+
{%- assign mt_t_post_related = _ts.post.related | default: _tx[40] | default: _te[40] -%}
|
|
57
|
+
{%- assign mt_t_post_share = _ts.post.share | default: _tx[41] | default: _te[41] -%}
|
|
58
|
+
{%- assign mt_t_fallback_notice = _ts.fallback.notice | default: _tx[42] | default: _te[42] -%}
|
|
59
|
+
{%- assign mt_t_archive_years = _ts.archive.years | default: _tx[43] | default: _te[43] -%}
|
|
60
|
+
{%- assign mt_t_archive_tags = _ts.archive.tags | default: _tx[44] | default: _te[44] -%}
|
|
61
|
+
{%- assign mt_t_archive_categories = _ts.archive.categories | default: _tx[45] | default: _te[45] -%}
|
|
62
|
+
{%- assign mt_t_archive_posts = _ts.archive.posts | default: _tx[46] | default: _te[46] -%}
|
|
63
|
+
{%- assign mt_t_archive_empty = _ts.archive.empty | default: _tx[47] | default: _te[47] -%}
|
|
64
|
+
{%- assign mt_t_blog_featured = _ts.blog.featured | default: _tx[48] | default: _te[48] -%}
|
|
65
|
+
{%- assign mt_t_blog_read_more = _ts.blog.read_more | default: _tx[49] | default: _te[49] -%}
|
|
66
|
+
{%- assign mt_t_blog_reading_time = _ts.blog.reading_time | default: _tx[50] | default: _te[50] -%}
|
|
67
|
+
{%- assign mt_t_blog_by = _ts.blog.by | default: _tx[51] | default: _te[51] -%}
|
|
68
|
+
{%- assign mt_t_blog_updated = _ts.blog.updated | default: _tx[52] | default: _te[52] -%}
|
|
69
|
+
{%- assign mt_t_blog_newer = _ts.blog.newer | default: _tx[53] | default: _te[53] -%}
|
|
70
|
+
{%- assign mt_t_blog_older = _ts.blog.older | default: _tx[54] | default: _te[54] -%}
|
|
71
|
+
{%- assign mt_t_blog_related = _ts.blog.related | default: _tx[55] | default: _te[55] -%}
|
|
72
|
+
{%- assign mt_t_blog_series = _ts.blog.series | default: _tx[56] | default: _te[56] -%}
|
|
73
|
+
{%- assign mt_t_blog_series_part = _ts.blog.series_part | default: _tx[57] | default: _te[57] -%}
|
|
74
|
+
{%- assign mt_t_blog_share = _ts.blog.share | default: _tx[58] | default: _te[58] -%}
|
|
75
|
+
{%- assign mt_t_blog_copied = _ts.blog.copied | default: _tx[59] | default: _te[59] -%}
|
|
76
|
+
{%- assign mt_t_blog_feed = _ts.blog.feed | default: _tx[60] | default: _te[60] -%}
|
|
77
|
+
{%- assign mt_t_blog_latest = _ts.blog.latest | default: _tx[61] | default: _te[61] -%}
|
|
78
|
+
{%- assign mt_t_blog_breaking = _ts.blog.breaking | default: _tx[62] | default: _te[62] -%}
|
|
79
|
+
{%- assign mt_t_blog_live = _ts.blog.live | default: _tx[63] | default: _te[63] -%}
|
|
80
|
+
{%- assign mt_t_blog_correction = _ts.blog.correction | default: _tx[64] | default: _te[64] -%}
|
|
81
|
+
{%- assign mt_t_blog_sources = _ts.blog.sources | default: _tx[65] | default: _te[65] -%}
|
|
82
|
+
{%- assign mt_t_blog_more = _ts.blog.more | default: _tx[66] | default: _te[66] -%}
|
|
83
|
+
{%- assign mt_t_blog_authors = _ts.blog.authors | default: _tx[67] | default: _te[67] -%}
|
|
84
|
+
{%- assign mt_t_filetree_label = _ts.filetree.label | default: _tx[68] | default: _te[68] -%}
|
|
85
|
+
{%- assign mt_t_gallery_close = _ts.gallery.close | default: _tx[69] | default: _te[69] -%}
|
|
86
|
+
{%- assign mt_t_embed_title = _ts.embed.title | default: _tx[70] | default: _te[70] -%}
|
|
87
|
+
{%- assign mt_t_pricing_recommended = _ts.pricing.recommended | default: _tx[71] | default: _te[71] -%}
|
|
88
|
+
{%- assign mt_t_banner_label = _ts.banner.label | default: _tx[72] | default: _te[72] -%}
|
|
89
|
+
{%- assign mt_t_footnote_back = _ts.footnote.back | default: _tx[73] | default: _te[73] -%}
|
|
90
|
+
{%- assign mt_t_progress_label = _ts.progress.label | default: _tx[74] | default: _te[74] -%}
|
|
91
|
+
{%- assign mt_t_subscribe_email = _ts.subscribe.email | default: _tx[75] | default: _te[75] -%}
|
|
92
|
+
{%- assign mt_t_subscribe_submit = _ts.subscribe.submit | default: _tx[76] | default: _te[76] -%}
|
|
93
|
+
{%- assign mt_t_params_required = _ts.params.required | default: _tx[77] | default: _te[77] -%}
|
|
94
|
+
{%- assign mt_t_loading_label = _ts.loading.label | default: _tx[78] | default: _te[78] -%}
|
|
95
|
+
{%- assign mt_t_pages_not_found = _ts.pages.not_found | default: _tx[79] | default: _te[79] -%}
|
|
96
|
+
{%- assign mt_t_pages_not_found_text = _ts.pages.not_found_text | default: _tx[80] | default: _te[80] -%}
|
|
97
|
+
{%- assign mt_t_pages_gone = _ts.pages.gone | default: _tx[81] | default: _te[81] -%}
|
|
98
|
+
{%- assign mt_t_pages_gone_text = _ts.pages.gone_text | default: _tx[82] | default: _te[82] -%}
|
|
99
|
+
{%- assign mt_t_pages_error = _ts.pages.error | default: _tx[83] | default: _te[83] -%}
|
|
100
|
+
{%- assign mt_t_pages_error_text = _ts.pages.error_text | default: _tx[84] | default: _te[84] -%}
|
|
101
|
+
{%- assign mt_t_pages_home = _ts.pages.home | default: _tx[85] | default: _te[85] -%}
|
|
102
|
+
{%- assign mt_t_pages_moved = _ts.pages.moved | default: _tx[86] | default: _te[86] -%}
|
|
103
|
+
{%- assign mt_t_pages_moved_link = _ts.pages.moved_link | default: _tx[87] | default: _te[87] -%}
|
|
104
|
+
{%- assign mt_t_pages_search_hint = _ts.pages.search_hint | default: _tx[88] | default: _te[88] -%}
|
|
105
|
+
{%- assign mt_t_layouts_all = _ts.layouts.all | default: _tx[89] | default: _te[89] -%}
|
|
106
|
+
{%- assign mt_t_layouts_filter = _ts.layouts.filter | default: _tx[90] | default: _te[90] -%}
|
|
107
|
+
{%- assign mt_t_layouts_role = _ts.layouts.role | default: _tx[91] | default: _te[91] -%}
|
|
108
|
+
{%- assign mt_t_layouts_client = _ts.layouts.client | default: _tx[92] | default: _te[92] -%}
|
|
109
|
+
{%- assign mt_t_layouts_year = _ts.layouts.year | default: _tx[93] | default: _te[93] -%}
|
|
110
|
+
{%- assign mt_t_layouts_stack = _ts.layouts.stack | default: _tx[94] | default: _te[94] -%}
|
|
111
|
+
{%- assign mt_t_layouts_links = _ts.layouts.links | default: _tx[95] | default: _te[95] -%}
|
|
112
|
+
{%- assign mt_t_layouts_location = _ts.layouts.location | default: _tx[96] | default: _te[96] -%}
|
|
113
|
+
{%- assign mt_t_layouts_employment = _ts.layouts.employment | default: _tx[97] | default: _te[97] -%}
|
|
114
|
+
{%- assign mt_t_layouts_salary = _ts.layouts.salary | default: _tx[98] | default: _te[98] -%}
|
|
115
|
+
{%- assign mt_t_layouts_posted = _ts.layouts.posted | default: _tx[99] | default: _te[99] -%}
|
|
116
|
+
{%- assign mt_t_layouts_deadline = _ts.layouts.deadline | default: _tx[100] | default: _te[100] -%}
|
|
117
|
+
{%- assign mt_t_layouts_apply = _ts.layouts.apply | default: _tx[101] | default: _te[101] -%}
|
|
118
|
+
{%- assign mt_t_layouts_starts = _ts.layouts.starts | default: _tx[102] | default: _te[102] -%}
|
|
119
|
+
{%- assign mt_t_layouts_ends = _ts.layouts.ends | default: _tx[103] | default: _te[103] -%}
|
|
120
|
+
{%- assign mt_t_layouts_venue = _ts.layouts.venue | default: _tx[104] | default: _te[104] -%}
|
|
121
|
+
{%- assign mt_t_layouts_online = _ts.layouts.online | default: _tx[105] | default: _te[105] -%}
|
|
122
|
+
{%- assign mt_t_layouts_agenda = _ts.layouts.agenda | default: _tx[106] | default: _te[106] -%}
|
|
123
|
+
{%- assign mt_t_layouts_tickets = _ts.layouts.tickets | default: _tx[107] | default: _te[107] -%}
|
|
124
|
+
{%- assign mt_t_layouts_calendar = _ts.layouts.calendar | default: _tx[108] | default: _te[108] -%}
|
|
125
|
+
{%- assign mt_t_layouts_episode = _ts.layouts.episode | default: _tx[109] | default: _te[109] -%}
|
|
126
|
+
{%- assign mt_t_layouts_season = _ts.layouts.season | default: _tx[110] | default: _te[110] -%}
|
|
127
|
+
{%- assign mt_t_layouts_duration = _ts.layouts.duration | default: _tx[111] | default: _te[111] -%}
|
|
128
|
+
{%- assign mt_t_layouts_listen = _ts.layouts.listen | default: _tx[112] | default: _te[112] -%}
|
|
129
|
+
{%- assign mt_t_layouts_transcript = _ts.layouts.transcript | default: _tx[113] | default: _te[113] -%}
|
|
130
|
+
{%- assign mt_t_layouts_monthly = _ts.layouts.monthly | default: _tx[114] | default: _te[114] -%}
|
|
131
|
+
{%- assign mt_t_layouts_yearly = _ts.layouts.yearly | default: _tx[115] | default: _te[115] -%}
|
|
132
|
+
{%- assign mt_t_layouts_billing = _ts.layouts.billing | default: _tx[116] | default: _te[116] -%}
|
|
133
|
+
{%- assign mt_t_layouts_popular = _ts.layouts.popular | default: _tx[117] | default: _te[117] -%}
|
|
134
|
+
{%- assign mt_t_layouts_download = _ts.layouts.download | default: _tx[118] | default: _te[118] -%}
|
|
135
|
+
{%- assign mt_t_layouts_version = _ts.layouts.version | default: _tx[119] | default: _te[119] -%}
|
|
136
|
+
{%- assign mt_t_layouts_colors = _ts.layouts.colors | default: _tx[120] | default: _te[120] -%}
|
|
137
|
+
{%- assign mt_t_layouts_assets = _ts.layouts.assets | default: _tx[121] | default: _te[121] -%}
|
|
138
|
+
{%- assign mt_t_layouts_send = _ts.layouts.send | default: _tx[122] | default: _te[122] -%}
|
|
139
|
+
{%- assign mt_t_layouts_name = _ts.layouts.name | default: _tx[123] | default: _te[123] -%}
|
|
140
|
+
{%- assign mt_t_layouts_email = _ts.layouts.email | default: _tx[124] | default: _te[124] -%}
|
|
141
|
+
{%- assign mt_t_layouts_message = _ts.layouts.message | default: _tx[125] | default: _te[125] -%}
|
|
142
|
+
{%- assign mt_t_layouts_contact = _ts.layouts.contact | default: _tx[126] | default: _te[126] -%}
|
|
143
|
+
{%- assign mt_t_layouts_added = _ts.layouts.added | default: _tx[127] | default: _te[127] -%}
|
|
144
|
+
{%- assign mt_t_layouts_changed = _ts.layouts.changed | default: _tx[128] | default: _te[128] -%}
|
|
145
|
+
{%- assign mt_t_layouts_fixed = _ts.layouts.fixed | default: _tx[129] | default: _te[129] -%}
|
|
146
|
+
{%- assign mt_t_layouts_removed = _ts.layouts.removed | default: _tx[130] | default: _te[130] -%}
|
|
147
|
+
{%- assign mt_t_layouts_security = _ts.layouts.security | default: _tx[131] | default: _te[131] -%}
|
|
148
|
+
{%- assign mt_t_layouts_now = _ts.layouts.now | default: _tx[132] | default: _te[132] -%}
|
|
149
|
+
{%- assign mt_t_layouts_next = _ts.layouts.next | default: _tx[133] | default: _te[133] -%}
|
|
150
|
+
{%- assign mt_t_layouts_later = _ts.layouts.later | default: _tx[134] | default: _te[134] -%}
|
|
151
|
+
{%- assign mt_t_layouts_letters = _ts.layouts.letters | default: _tx[135] | default: _te[135] -%}
|
|
152
|
+
{%- assign mt_t_layouts_lessons = _ts.layouts.lessons | default: _tx[136] | default: _te[136] -%}
|
|
153
|
+
{%- assign mt_t_layouts_minutes = _ts.layouts.minutes | default: _tx[137] | default: _te[137] -%}
|
|
154
|
+
{%- assign mt_t_layouts_module = _ts.layouts.module | default: _tx[138] | default: _te[138] -%}
|
|
155
|
+
{%- assign mt_t_layouts_chapter = _ts.layouts.chapter | default: _tx[139] | default: _te[139] -%}
|
|
156
|
+
{%- assign mt_t_layouts_effective = _ts.layouts.effective | default: _tx[140] | default: _te[140] -%}
|
|
157
|
+
{%- assign mt_t_layouts_experience = _ts.layouts.experience | default: _tx[141] | default: _te[141] -%}
|
|
158
|
+
{%- assign mt_t_layouts_education = _ts.layouts.education | default: _tx[142] | default: _te[142] -%}
|
|
159
|
+
{%- assign mt_t_layouts_skills = _ts.layouts.skills | default: _tx[143] | default: _te[143] -%}
|
|
160
|
+
{%- assign mt_t_layouts_present = _ts.layouts.present | default: _tx[144] | default: _te[144] -%}
|
|
161
|
+
{%- assign mt_t_layouts_loading = _ts.layouts.loading | default: _tx[145] | default: _te[145] -%}
|
|
162
|
+
{%- assign mt_t_layouts_contents = _ts.layouts.contents | default: _tx[146] | default: _te[146] -%}
|
|
162
163
|
{%- assign mt_t_direction = _ts.direction | default: _tdir -%}
|
|
163
164
|
{%- endunless -%}
|
|
@@ -11,7 +11,8 @@ Usage: {% include modootoday/markdown/components.html content=content lang=page.
|
|
|
11
11
|
Also `tag:<word>` → span.mt-badge.mt-badge-tag; values must be one token (checker: [A-Za-z0-9._-]+).
|
|
12
12
|
`since:` is not rendered in 1.0 (checker error).
|
|
13
13
|
3) figure=true: a paragraph that is only an image, followed by a paragraph that is only *emphasis*
|
|
14
|
-
→ figure.mt-figure with figcaption. Images need alt text (checker).
|
|
14
|
+
→ figure.mt-figure with figcaption. Images need alt text (checker). An .svg image (a diagram) becomes
|
|
15
|
+
figure.mt-figure-svg with a focusable, labelled div.mt-figure-scroll (figure sheet: dark tone, horizontal scroll).
|
|
15
16
|
4) Always: `file:`, `progress:`, `embed:` and footnote labels (modootoday/markdown/inline.html).
|
|
16
17
|
Titles/labels: modootoday/i18n.html (site _data/i18n, theme catalog, English).
|
|
17
18
|
{%- endcomment -%}
|
|
@@ -100,7 +101,13 @@ Titles/labels: modootoday/i18n.html (site _data/i18n, theme catalog, English).
|
|
|
100
101
|
{%- endif -%}
|
|
101
102
|
{%- endif -%}
|
|
102
103
|
{%- if _cap != "" -%}{%- assign _rest = _a2 | remove_first: "<p><em>" | remove_first: _cap | remove_first: "</em></p>" -%}
|
|
104
|
+
{%- assign _src = _im | split: 'src="' | last | split: '"' | first | split: "?" | first | split: "#" | first | downcase -%}
|
|
105
|
+
{%- assign _ext = _src | slice: -4, 4 -%}
|
|
106
|
+
{%- if _ext == ".svg" -%}{%- assign _alt = _im | split: 'alt="' | last | split: '"' | first -%}{%- if _im contains 'alt="' -%}{%- else -%}{%- assign _alt = _cap | strip_html -%}{%- endif -%}
|
|
107
|
+
<figure class="mt-figure mt-figure-svg"><div class="mt-figure-scroll" tabindex="0" role="region" aria-label="{{ _alt | default: mt_t_diagram_label }}"><img {{ _im }}</div><figcaption>{{ _cap }}</figcaption></figure>{{ _rest }}
|
|
108
|
+
{%- else -%}
|
|
103
109
|
<figure class="mt-figure"><img {{ _im }}<figcaption>{{ _cap }}</figcaption></figure>{{ _rest }}
|
|
110
|
+
{%- endif -%}
|
|
104
111
|
{%- else -%}<p><img {{ _b }}{%- endif -%}
|
|
105
112
|
{%- endfor -%}{%- endcapture -%}
|
|
106
113
|
{%- endif -%}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{%- comment -%}
|
|
2
|
+
Sets mt_asset_tag to a <script defer> (include.kind script) or <link rel=stylesheet> (kind css) for include.src, or false:
|
|
3
|
+
an https URL needs include.integrity (then integrity + crossorigin="anonymous"); a site path (/…) may add integrity.
|
|
4
|
+
Anything else (http://, //host, a relative path) sets false, so nothing loads.
|
|
5
|
+
{%- endcomment -%}
|
|
6
|
+
{%- assign mt_asset_tag = false -%}
|
|
7
|
+
{%- assign _au = include.src | append: "" | strip -%}{%- assign _as = include.integrity | append: "" | strip | escape -%}
|
|
8
|
+
{%- assign _a8 = _au | slice: 0, 8 -%}{%- assign _a2 = _au | slice: 0, 2 -%}{%- assign _a1 = _au | slice: 0, 1 -%}
|
|
9
|
+
{%- assign _ah = false -%}
|
|
10
|
+
{%- if _a8 == "https://" and _as != "" -%}
|
|
11
|
+
{%- assign _ah = _au | escape -%}{%- capture _aa %} integrity="{{ _as }}" crossorigin="anonymous"{% endcapture -%}
|
|
12
|
+
{%- elsif _a1 == "/" and _a2 != "//" -%}
|
|
13
|
+
{%- assign _ah = _au | relative_url | escape -%}{%- capture _aa %}{% if _as != "" %} integrity="{{ _as }}"{% endif %}{% endcapture -%}
|
|
14
|
+
{%- endif -%}
|
|
15
|
+
{%- if _ah -%}
|
|
16
|
+
{%- if include.kind == "css" -%}
|
|
17
|
+
{%- capture mt_asset_tag %}<link rel="stylesheet" href="{{ _ah }}"{{ _aa }}>{% endcapture -%}
|
|
18
|
+
{%- else -%}
|
|
19
|
+
{%- capture mt_asset_tag %}<script src="{{ _ah }}"{{ _aa }} defer></script>{% endcapture -%}
|
|
20
|
+
{%- endif -%}
|
|
21
|
+
{%- endif -%}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{%- comment -%}
|
|
2
|
+
Optional math renderer: site.modootoday.math (off by default). Needs the page body (content) first.
|
|
3
|
+
enabled true turns it on; engine: katex (the only engine)
|
|
4
|
+
src, css katex.min.js and katex.min.css: pinned, versioned https URLs (with integrity), or site paths (/assets/…)
|
|
5
|
+
integrity {js: sha384-…, css: sha384-…}; required for https URLs, optional for site paths
|
|
6
|
+
auto_render_src KaTeX auto-render (contrib/auto-render.min.js) for $$ blocks; auto_render_integrity is its SRI hash
|
|
7
|
+
inline true also renders inline $…$ (default false: only ```math fences and $$ blocks)
|
|
8
|
+
Loads only on pages whose body has a ```math fence, or (with auto_render_src) a $$ block, which kramdown prints as \[ … \]
|
|
9
|
+
or \( … \); with inline: true also on pages with a $. Front matter math: false opts a page out.
|
|
10
|
+
If any declared URL cannot load (an https URL without integrity), nothing loads. Without JavaScript the TeX source stays.
|
|
11
|
+
{%- endcomment -%}
|
|
12
|
+
{%- assign _mx = site.modootoday.math -%}
|
|
13
|
+
{%- if _mx.enabled == true and page.math != false and _mx.src and _mx.css -%}
|
|
14
|
+
{%- assign _mx_hit = false -%}
|
|
15
|
+
{%- if content contains '<code class="language-math"' or content contains 'class="language-math highlighter-rouge"' -%}{%- assign _mx_hit = true -%}{%- endif -%}
|
|
16
|
+
{%- if _mx.auto_render_src -%}
|
|
17
|
+
{%- if content contains '\[' or content contains '\(' -%}{%- assign _mx_hit = true -%}{%- endif -%}
|
|
18
|
+
{%- if _mx.inline == true and content contains '$' -%}{%- assign _mx_hit = true -%}{%- endif -%}
|
|
19
|
+
{%- endif -%}
|
|
20
|
+
{%- if _mx_hit -%}
|
|
21
|
+
{%- include modootoday/render/asset.html kind="css" src=_mx.css integrity=_mx.integrity.css -%}{%- assign _mx_css = mt_asset_tag -%}
|
|
22
|
+
{%- include modootoday/render/asset.html src=_mx.src integrity=_mx.integrity.js -%}{%- assign _mx_js = mt_asset_tag -%}
|
|
23
|
+
{%- assign _mx_ar = "" -%}
|
|
24
|
+
{%- if _mx.auto_render_src -%}{%- include modootoday/render/asset.html src=_mx.auto_render_src integrity=_mx.auto_render_integrity -%}{%- assign _mx_ar = mt_asset_tag -%}{%- endif -%}
|
|
25
|
+
{%- if _mx_css and _mx_js and _mx_ar %}
|
|
26
|
+
{{ _mx_css }}
|
|
27
|
+
{{ _mx_js }}
|
|
28
|
+
{%- if _mx_ar != "" %}
|
|
29
|
+
{{ _mx_ar }}
|
|
30
|
+
{%- endif %}
|
|
31
|
+
<script src="{{ '/assets/js/modootoday-math.js' | relative_url }}" data-mt-inline="{% if _mx.inline == true %}true{% else %}false{% endif %}" defer></script>
|
|
32
|
+
{%- endif -%}
|
|
33
|
+
{%- endif -%}
|
|
34
|
+
{%- endif -%}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{%- comment -%}
|
|
2
|
+
Optional Mermaid renderer: site.modootoday.mermaid (off by default). Needs the page body (content) first.
|
|
3
|
+
enabled true turns it on
|
|
4
|
+
src a pinned, versioned https URL (with integrity), or a site path such as /assets/mermaid/mermaid.min.js
|
|
5
|
+
integrity SRI hash (sha256-/sha384-/sha512-…); required for an https src, optional for a site path
|
|
6
|
+
theme auto (follows prefers-color-scheme and the theme toggle) | default | dark | neutral | forest
|
|
7
|
+
Loads only on pages whose body has a ```mermaid fence; front matter mermaid: false opts a page out.
|
|
8
|
+
An https src without integrity loads nothing (modootoday-check reports it). Without JavaScript the fence stays a code block.
|
|
9
|
+
{%- endcomment -%}
|
|
10
|
+
{%- assign _mm = site.modootoday.mermaid -%}{%- assign _mm_tag = false -%}
|
|
11
|
+
{%- if _mm.enabled == true and page.mermaid != false and _mm.src -%}
|
|
12
|
+
{%- if content contains '<code class="language-mermaid"' or content contains 'class="language-mermaid highlighter-rouge"' -%}
|
|
13
|
+
{%- include modootoday/render/asset.html src=_mm.src integrity=_mm.integrity -%}{%- assign _mm_tag = mt_asset_tag -%}
|
|
14
|
+
{%- if _mm_tag %}
|
|
15
|
+
{{ _mm_tag }}
|
|
16
|
+
<script src="{{ '/assets/js/modootoday-mermaid.js' | relative_url }}" data-mt-theme="{{ _mm.theme | default: 'auto' | escape }}" defer></script>
|
|
17
|
+
{%- endif -%}
|
|
18
|
+
{%- endif -%}
|
|
19
|
+
{%- endif -%}
|
|
@@ -9,6 +9,7 @@ Stylesheet links (needs modootoday/config.html first). Sets mt_page_c ("|tabs|fa
|
|
|
9
9
|
{%- assign mt_search_index = site.pages | where: "url", "/search.json" | first -%}
|
|
10
10
|
{%- if mt_components contains "search" and mt_search_index -%}{%- assign mt_page_c = mt_page_c | append: "search|" -%}{%- endif -%}
|
|
11
11
|
{%- if site.modootoday.loading or content contains 'class="mt-spinner' or content contains 'class="mt-skeleton' or content contains 'class="mt-topbar' -%}{%- assign mt_page_c = mt_page_c | append: "loading|" -%}{%- endif -%}
|
|
12
|
+
{%- if content contains 'class="mt-figure mt-figure-svg' -%}{%- assign mt_page_c = mt_page_c | append: "figure|" -%}{%- endif -%}
|
|
12
13
|
{%- for _x in layout.mt_css -%}{%- assign mt_page_c = mt_page_c | append: _x | append: "|" -%}{%- endfor -%}
|
|
13
14
|
{%- for _x in page.css -%}{%- assign mt_page_c = mt_page_c | append: _x | append: "|" -%}{%- endfor %}
|
|
14
15
|
{%- comment -%}Blog, news and archive layouts add the separate blog sheet (both modes); front matter blog_css: true opts any page in.{%- endcomment -%}
|
data/_includes/modootoday/t.html
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{%- comment -%}Theme string by key: {% include modootoday/t.html key="nav.label" %} (optional n= / name= fill %{n} / %{name}).
|
|
2
2
|
Resolution: site _data/i18n/<lang>.yml, then the theme catalog for the language, then English. Generated by script/i18n-build.{%- endcomment -%}
|
|
3
3
|
{%- include modootoday/i18n.html -%}
|
|
4
|
-
{%- case include.key -%}{%- when "direction" -%}{%- assign _tv = mt_t_direction -%}{%- when "skip" -%}{%- assign _tv = mt_t_skip -%}{%- when "new_window.hint" -%}{%- assign _tv = mt_t_new_window_hint -%}{%- when "new_window.open" -%}{%- assign _tv = mt_t_new_window_open -%}{%- when "callout.note" -%}{%- assign _tv = mt_t_callout_note -%}{%- when "callout.tip" -%}{%- assign _tv = mt_t_callout_tip -%}{%- when "callout.important" -%}{%- assign _tv = mt_t_callout_important -%}{%- when "callout.warning" -%}{%- assign _tv = mt_t_callout_warning -%}{%- when "callout.caution" -%}{%- assign _tv = mt_t_callout_caution -%}{%- when "status.available" -%}{%- assign _tv = mt_t_status_available -%}{%- when "status.partial" -%}{%- assign _tv = mt_t_status_partial -%}{%- when "status.planned" -%}{%- assign _tv = mt_t_status_planned -%}{%- when "task.done" -%}{%- assign _tv = mt_t_task_done -%}{%- when "task.open" -%}{%- assign _tv = mt_t_task_open -%}{%- when "tabs.label" -%}{%- assign _tv = mt_t_tabs_label -%}{%- when "toc.label" -%}{%- assign _tv = mt_t_toc_label -%}{%- when "theme.toggle" -%}{%- assign _tv = mt_t_theme_toggle -%}{%- when "sidebar.label" -%}{%- assign _tv = mt_t_sidebar_label -%}{%- when "page_actions.label" -%}{%- assign _tv = mt_t_page_actions_label -%}{%- when "page_actions.copy" -%}{%- assign _tv = mt_t_page_actions_copy -%}{%- when "page_actions.copy_ai" -%}{%- assign _tv = mt_t_page_actions_copy_ai -%}{%- when "page_actions.view" -%}{%- assign _tv = mt_t_page_actions_view -%}{%- when "page_actions.source" -%}{%- assign _tv = mt_t_page_actions_source -%}{%- when "breadcrumb.label" -%}{%- assign _tv = mt_t_breadcrumb_label -%}{%- when "nav.label" -%}{%- assign _tv = mt_t_nav_label -%}{%- when "nav.back_to_top" -%}{%- assign _tv = mt_t_nav_back_to_top -%}{%- when "pagination.label" -%}{%- assign _tv = mt_t_pagination_label -%}{%- when "pagination.prev" -%}{%- assign _tv = mt_t_pagination_prev -%}{%- when "pagination.next" -%}{%- assign _tv = mt_t_pagination_next -%}{%- when "code.copy" -%}{%- assign _tv = mt_t_code_copy -%}{%- when "code.copied" -%}{%- assign _tv = mt_t_code_copied -%}{%- when "code.label" -%}{%- assign _tv = mt_t_code_label -%}{%- when "code.file" -%}{%- assign _tv = mt_t_code_file -%}{%- when "table.label" -%}{%- assign _tv = mt_t_table_label -%}{%- when "search.label" -%}{%- assign _tv = mt_t_search_label -%}{%- when "page.edit" -%}{%- assign _tv = mt_t_page_edit -%}{%- when "page.updated" -%}{%- assign _tv = mt_t_page_updated -%}{%- when "languages.label" -%}{%- assign _tv = mt_t_languages_label -%}{%- when "post.date_format" -%}{%- assign _tv = mt_t_post_date_format -%}{%- when "post.author" -%}{%- assign _tv = mt_t_post_author -%}{%- when "post.related" -%}{%- assign _tv = mt_t_post_related -%}{%- when "post.share" -%}{%- assign _tv = mt_t_post_share -%}{%- when "fallback.notice" -%}{%- assign _tv = mt_t_fallback_notice -%}{%- when "archive.years" -%}{%- assign _tv = mt_t_archive_years -%}{%- when "archive.tags" -%}{%- assign _tv = mt_t_archive_tags -%}{%- when "archive.categories" -%}{%- assign _tv = mt_t_archive_categories -%}{%- when "archive.posts" -%}{%- assign _tv = mt_t_archive_posts -%}{%- when "archive.empty" -%}{%- assign _tv = mt_t_archive_empty -%}{%- when "blog.featured" -%}{%- assign _tv = mt_t_blog_featured -%}{%- when "blog.read_more" -%}{%- assign _tv = mt_t_blog_read_more -%}{%- when "blog.reading_time" -%}{%- assign _tv = mt_t_blog_reading_time -%}{%- when "blog.by" -%}{%- assign _tv = mt_t_blog_by -%}{%- when "blog.updated" -%}{%- assign _tv = mt_t_blog_updated -%}{%- when "blog.newer" -%}{%- assign _tv = mt_t_blog_newer -%}{%- when "blog.older" -%}{%- assign _tv = mt_t_blog_older -%}{%- when "blog.related" -%}{%- assign _tv = mt_t_blog_related -%}{%- when "blog.series" -%}{%- assign _tv = mt_t_blog_series -%}{%- when "blog.series_part" -%}{%- assign _tv = mt_t_blog_series_part -%}{%- when "blog.share" -%}{%- assign _tv = mt_t_blog_share -%}{%- when "blog.copied" -%}{%- assign _tv = mt_t_blog_copied -%}{%- when "blog.feed" -%}{%- assign _tv = mt_t_blog_feed -%}{%- when "blog.latest" -%}{%- assign _tv = mt_t_blog_latest -%}{%- when "blog.breaking" -%}{%- assign _tv = mt_t_blog_breaking -%}{%- when "blog.live" -%}{%- assign _tv = mt_t_blog_live -%}{%- when "blog.correction" -%}{%- assign _tv = mt_t_blog_correction -%}{%- when "blog.sources" -%}{%- assign _tv = mt_t_blog_sources -%}{%- when "blog.more" -%}{%- assign _tv = mt_t_blog_more -%}{%- when "blog.authors" -%}{%- assign _tv = mt_t_blog_authors -%}{%- when "filetree.label" -%}{%- assign _tv = mt_t_filetree_label -%}{%- when "gallery.close" -%}{%- assign _tv = mt_t_gallery_close -%}{%- when "embed.title" -%}{%- assign _tv = mt_t_embed_title -%}{%- when "pricing.recommended" -%}{%- assign _tv = mt_t_pricing_recommended -%}{%- when "banner.label" -%}{%- assign _tv = mt_t_banner_label -%}{%- when "footnote.back" -%}{%- assign _tv = mt_t_footnote_back -%}{%- when "progress.label" -%}{%- assign _tv = mt_t_progress_label -%}{%- when "subscribe.email" -%}{%- assign _tv = mt_t_subscribe_email -%}{%- when "subscribe.submit" -%}{%- assign _tv = mt_t_subscribe_submit -%}{%- when "params.required" -%}{%- assign _tv = mt_t_params_required -%}{%- when "loading.label" -%}{%- assign _tv = mt_t_loading_label -%}{%- when "pages.not_found" -%}{%- assign _tv = mt_t_pages_not_found -%}{%- when "pages.not_found_text" -%}{%- assign _tv = mt_t_pages_not_found_text -%}{%- when "pages.gone" -%}{%- assign _tv = mt_t_pages_gone -%}{%- when "pages.gone_text" -%}{%- assign _tv = mt_t_pages_gone_text -%}{%- when "pages.error" -%}{%- assign _tv = mt_t_pages_error -%}{%- when "pages.error_text" -%}{%- assign _tv = mt_t_pages_error_text -%}{%- when "pages.home" -%}{%- assign _tv = mt_t_pages_home -%}{%- when "pages.moved" -%}{%- assign _tv = mt_t_pages_moved -%}{%- when "pages.moved_link" -%}{%- assign _tv = mt_t_pages_moved_link -%}{%- when "pages.search_hint" -%}{%- assign _tv = mt_t_pages_search_hint -%}{%- when "layouts.all" -%}{%- assign _tv = mt_t_layouts_all -%}{%- when "layouts.filter" -%}{%- assign _tv = mt_t_layouts_filter -%}{%- when "layouts.role" -%}{%- assign _tv = mt_t_layouts_role -%}{%- when "layouts.client" -%}{%- assign _tv = mt_t_layouts_client -%}{%- when "layouts.year" -%}{%- assign _tv = mt_t_layouts_year -%}{%- when "layouts.stack" -%}{%- assign _tv = mt_t_layouts_stack -%}{%- when "layouts.links" -%}{%- assign _tv = mt_t_layouts_links -%}{%- when "layouts.location" -%}{%- assign _tv = mt_t_layouts_location -%}{%- when "layouts.employment" -%}{%- assign _tv = mt_t_layouts_employment -%}{%- when "layouts.salary" -%}{%- assign _tv = mt_t_layouts_salary -%}{%- when "layouts.posted" -%}{%- assign _tv = mt_t_layouts_posted -%}{%- when "layouts.deadline" -%}{%- assign _tv = mt_t_layouts_deadline -%}{%- when "layouts.apply" -%}{%- assign _tv = mt_t_layouts_apply -%}{%- when "layouts.starts" -%}{%- assign _tv = mt_t_layouts_starts -%}{%- when "layouts.ends" -%}{%- assign _tv = mt_t_layouts_ends -%}{%- when "layouts.venue" -%}{%- assign _tv = mt_t_layouts_venue -%}{%- when "layouts.online" -%}{%- assign _tv = mt_t_layouts_online -%}{%- when "layouts.agenda" -%}{%- assign _tv = mt_t_layouts_agenda -%}{%- when "layouts.tickets" -%}{%- assign _tv = mt_t_layouts_tickets -%}{%- when "layouts.calendar" -%}{%- assign _tv = mt_t_layouts_calendar -%}{%- when "layouts.episode" -%}{%- assign _tv = mt_t_layouts_episode -%}{%- when "layouts.season" -%}{%- assign _tv = mt_t_layouts_season -%}{%- when "layouts.duration" -%}{%- assign _tv = mt_t_layouts_duration -%}{%- when "layouts.listen" -%}{%- assign _tv = mt_t_layouts_listen -%}{%- when "layouts.transcript" -%}{%- assign _tv = mt_t_layouts_transcript -%}{%- when "layouts.monthly" -%}{%- assign _tv = mt_t_layouts_monthly -%}{%- when "layouts.yearly" -%}{%- assign _tv = mt_t_layouts_yearly -%}{%- when "layouts.billing" -%}{%- assign _tv = mt_t_layouts_billing -%}{%- when "layouts.popular" -%}{%- assign _tv = mt_t_layouts_popular -%}{%- when "layouts.download" -%}{%- assign _tv = mt_t_layouts_download -%}{%- when "layouts.version" -%}{%- assign _tv = mt_t_layouts_version -%}{%- when "layouts.colors" -%}{%- assign _tv = mt_t_layouts_colors -%}{%- when "layouts.assets" -%}{%- assign _tv = mt_t_layouts_assets -%}{%- when "layouts.send" -%}{%- assign _tv = mt_t_layouts_send -%}{%- when "layouts.name" -%}{%- assign _tv = mt_t_layouts_name -%}{%- when "layouts.email" -%}{%- assign _tv = mt_t_layouts_email -%}{%- when "layouts.message" -%}{%- assign _tv = mt_t_layouts_message -%}{%- when "layouts.contact" -%}{%- assign _tv = mt_t_layouts_contact -%}{%- when "layouts.added" -%}{%- assign _tv = mt_t_layouts_added -%}{%- when "layouts.changed" -%}{%- assign _tv = mt_t_layouts_changed -%}{%- when "layouts.fixed" -%}{%- assign _tv = mt_t_layouts_fixed -%}{%- when "layouts.removed" -%}{%- assign _tv = mt_t_layouts_removed -%}{%- when "layouts.security" -%}{%- assign _tv = mt_t_layouts_security -%}{%- when "layouts.now" -%}{%- assign _tv = mt_t_layouts_now -%}{%- when "layouts.next" -%}{%- assign _tv = mt_t_layouts_next -%}{%- when "layouts.later" -%}{%- assign _tv = mt_t_layouts_later -%}{%- when "layouts.letters" -%}{%- assign _tv = mt_t_layouts_letters -%}{%- when "layouts.lessons" -%}{%- assign _tv = mt_t_layouts_lessons -%}{%- when "layouts.minutes" -%}{%- assign _tv = mt_t_layouts_minutes -%}{%- when "layouts.module" -%}{%- assign _tv = mt_t_layouts_module -%}{%- when "layouts.chapter" -%}{%- assign _tv = mt_t_layouts_chapter -%}{%- when "layouts.effective" -%}{%- assign _tv = mt_t_layouts_effective -%}{%- when "layouts.experience" -%}{%- assign _tv = mt_t_layouts_experience -%}{%- when "layouts.education" -%}{%- assign _tv = mt_t_layouts_education -%}{%- when "layouts.skills" -%}{%- assign _tv = mt_t_layouts_skills -%}{%- when "layouts.present" -%}{%- assign _tv = mt_t_layouts_present -%}{%- when "layouts.loading" -%}{%- assign _tv = mt_t_layouts_loading -%}{%- when "layouts.contents" -%}{%- assign _tv = mt_t_layouts_contents -%}{%- when "language" -%}{%- capture _tv -%}{%- include modootoday/i18n/name.html code=mt_t_lang -%}{%- endcapture -%}{%- assign _tv = site.data.i18n[mt_t_lang].language | default: _tv -%}{%- else -%}{%- assign _tv = include.key -%}{%- endcase -%}
|
|
4
|
+
{%- case include.key -%}{%- when "direction" -%}{%- assign _tv = mt_t_direction -%}{%- when "skip" -%}{%- assign _tv = mt_t_skip -%}{%- when "new_window.hint" -%}{%- assign _tv = mt_t_new_window_hint -%}{%- when "new_window.open" -%}{%- assign _tv = mt_t_new_window_open -%}{%- when "callout.note" -%}{%- assign _tv = mt_t_callout_note -%}{%- when "callout.tip" -%}{%- assign _tv = mt_t_callout_tip -%}{%- when "callout.important" -%}{%- assign _tv = mt_t_callout_important -%}{%- when "callout.warning" -%}{%- assign _tv = mt_t_callout_warning -%}{%- when "callout.caution" -%}{%- assign _tv = mt_t_callout_caution -%}{%- when "status.available" -%}{%- assign _tv = mt_t_status_available -%}{%- when "status.partial" -%}{%- assign _tv = mt_t_status_partial -%}{%- when "status.planned" -%}{%- assign _tv = mt_t_status_planned -%}{%- when "task.done" -%}{%- assign _tv = mt_t_task_done -%}{%- when "task.open" -%}{%- assign _tv = mt_t_task_open -%}{%- when "tabs.label" -%}{%- assign _tv = mt_t_tabs_label -%}{%- when "toc.label" -%}{%- assign _tv = mt_t_toc_label -%}{%- when "theme.toggle" -%}{%- assign _tv = mt_t_theme_toggle -%}{%- when "sidebar.label" -%}{%- assign _tv = mt_t_sidebar_label -%}{%- when "page_actions.label" -%}{%- assign _tv = mt_t_page_actions_label -%}{%- when "page_actions.copy" -%}{%- assign _tv = mt_t_page_actions_copy -%}{%- when "page_actions.copy_ai" -%}{%- assign _tv = mt_t_page_actions_copy_ai -%}{%- when "page_actions.view" -%}{%- assign _tv = mt_t_page_actions_view -%}{%- when "page_actions.source" -%}{%- assign _tv = mt_t_page_actions_source -%}{%- when "breadcrumb.label" -%}{%- assign _tv = mt_t_breadcrumb_label -%}{%- when "nav.label" -%}{%- assign _tv = mt_t_nav_label -%}{%- when "nav.back_to_top" -%}{%- assign _tv = mt_t_nav_back_to_top -%}{%- when "pagination.label" -%}{%- assign _tv = mt_t_pagination_label -%}{%- when "pagination.prev" -%}{%- assign _tv = mt_t_pagination_prev -%}{%- when "pagination.next" -%}{%- assign _tv = mt_t_pagination_next -%}{%- when "code.copy" -%}{%- assign _tv = mt_t_code_copy -%}{%- when "code.copied" -%}{%- assign _tv = mt_t_code_copied -%}{%- when "code.label" -%}{%- assign _tv = mt_t_code_label -%}{%- when "code.file" -%}{%- assign _tv = mt_t_code_file -%}{%- when "table.label" -%}{%- assign _tv = mt_t_table_label -%}{%- when "diagram.label" -%}{%- assign _tv = mt_t_diagram_label -%}{%- when "search.label" -%}{%- assign _tv = mt_t_search_label -%}{%- when "page.edit" -%}{%- assign _tv = mt_t_page_edit -%}{%- when "page.updated" -%}{%- assign _tv = mt_t_page_updated -%}{%- when "languages.label" -%}{%- assign _tv = mt_t_languages_label -%}{%- when "post.date_format" -%}{%- assign _tv = mt_t_post_date_format -%}{%- when "post.author" -%}{%- assign _tv = mt_t_post_author -%}{%- when "post.related" -%}{%- assign _tv = mt_t_post_related -%}{%- when "post.share" -%}{%- assign _tv = mt_t_post_share -%}{%- when "fallback.notice" -%}{%- assign _tv = mt_t_fallback_notice -%}{%- when "archive.years" -%}{%- assign _tv = mt_t_archive_years -%}{%- when "archive.tags" -%}{%- assign _tv = mt_t_archive_tags -%}{%- when "archive.categories" -%}{%- assign _tv = mt_t_archive_categories -%}{%- when "archive.posts" -%}{%- assign _tv = mt_t_archive_posts -%}{%- when "archive.empty" -%}{%- assign _tv = mt_t_archive_empty -%}{%- when "blog.featured" -%}{%- assign _tv = mt_t_blog_featured -%}{%- when "blog.read_more" -%}{%- assign _tv = mt_t_blog_read_more -%}{%- when "blog.reading_time" -%}{%- assign _tv = mt_t_blog_reading_time -%}{%- when "blog.by" -%}{%- assign _tv = mt_t_blog_by -%}{%- when "blog.updated" -%}{%- assign _tv = mt_t_blog_updated -%}{%- when "blog.newer" -%}{%- assign _tv = mt_t_blog_newer -%}{%- when "blog.older" -%}{%- assign _tv = mt_t_blog_older -%}{%- when "blog.related" -%}{%- assign _tv = mt_t_blog_related -%}{%- when "blog.series" -%}{%- assign _tv = mt_t_blog_series -%}{%- when "blog.series_part" -%}{%- assign _tv = mt_t_blog_series_part -%}{%- when "blog.share" -%}{%- assign _tv = mt_t_blog_share -%}{%- when "blog.copied" -%}{%- assign _tv = mt_t_blog_copied -%}{%- when "blog.feed" -%}{%- assign _tv = mt_t_blog_feed -%}{%- when "blog.latest" -%}{%- assign _tv = mt_t_blog_latest -%}{%- when "blog.breaking" -%}{%- assign _tv = mt_t_blog_breaking -%}{%- when "blog.live" -%}{%- assign _tv = mt_t_blog_live -%}{%- when "blog.correction" -%}{%- assign _tv = mt_t_blog_correction -%}{%- when "blog.sources" -%}{%- assign _tv = mt_t_blog_sources -%}{%- when "blog.more" -%}{%- assign _tv = mt_t_blog_more -%}{%- when "blog.authors" -%}{%- assign _tv = mt_t_blog_authors -%}{%- when "filetree.label" -%}{%- assign _tv = mt_t_filetree_label -%}{%- when "gallery.close" -%}{%- assign _tv = mt_t_gallery_close -%}{%- when "embed.title" -%}{%- assign _tv = mt_t_embed_title -%}{%- when "pricing.recommended" -%}{%- assign _tv = mt_t_pricing_recommended -%}{%- when "banner.label" -%}{%- assign _tv = mt_t_banner_label -%}{%- when "footnote.back" -%}{%- assign _tv = mt_t_footnote_back -%}{%- when "progress.label" -%}{%- assign _tv = mt_t_progress_label -%}{%- when "subscribe.email" -%}{%- assign _tv = mt_t_subscribe_email -%}{%- when "subscribe.submit" -%}{%- assign _tv = mt_t_subscribe_submit -%}{%- when "params.required" -%}{%- assign _tv = mt_t_params_required -%}{%- when "loading.label" -%}{%- assign _tv = mt_t_loading_label -%}{%- when "pages.not_found" -%}{%- assign _tv = mt_t_pages_not_found -%}{%- when "pages.not_found_text" -%}{%- assign _tv = mt_t_pages_not_found_text -%}{%- when "pages.gone" -%}{%- assign _tv = mt_t_pages_gone -%}{%- when "pages.gone_text" -%}{%- assign _tv = mt_t_pages_gone_text -%}{%- when "pages.error" -%}{%- assign _tv = mt_t_pages_error -%}{%- when "pages.error_text" -%}{%- assign _tv = mt_t_pages_error_text -%}{%- when "pages.home" -%}{%- assign _tv = mt_t_pages_home -%}{%- when "pages.moved" -%}{%- assign _tv = mt_t_pages_moved -%}{%- when "pages.moved_link" -%}{%- assign _tv = mt_t_pages_moved_link -%}{%- when "pages.search_hint" -%}{%- assign _tv = mt_t_pages_search_hint -%}{%- when "layouts.all" -%}{%- assign _tv = mt_t_layouts_all -%}{%- when "layouts.filter" -%}{%- assign _tv = mt_t_layouts_filter -%}{%- when "layouts.role" -%}{%- assign _tv = mt_t_layouts_role -%}{%- when "layouts.client" -%}{%- assign _tv = mt_t_layouts_client -%}{%- when "layouts.year" -%}{%- assign _tv = mt_t_layouts_year -%}{%- when "layouts.stack" -%}{%- assign _tv = mt_t_layouts_stack -%}{%- when "layouts.links" -%}{%- assign _tv = mt_t_layouts_links -%}{%- when "layouts.location" -%}{%- assign _tv = mt_t_layouts_location -%}{%- when "layouts.employment" -%}{%- assign _tv = mt_t_layouts_employment -%}{%- when "layouts.salary" -%}{%- assign _tv = mt_t_layouts_salary -%}{%- when "layouts.posted" -%}{%- assign _tv = mt_t_layouts_posted -%}{%- when "layouts.deadline" -%}{%- assign _tv = mt_t_layouts_deadline -%}{%- when "layouts.apply" -%}{%- assign _tv = mt_t_layouts_apply -%}{%- when "layouts.starts" -%}{%- assign _tv = mt_t_layouts_starts -%}{%- when "layouts.ends" -%}{%- assign _tv = mt_t_layouts_ends -%}{%- when "layouts.venue" -%}{%- assign _tv = mt_t_layouts_venue -%}{%- when "layouts.online" -%}{%- assign _tv = mt_t_layouts_online -%}{%- when "layouts.agenda" -%}{%- assign _tv = mt_t_layouts_agenda -%}{%- when "layouts.tickets" -%}{%- assign _tv = mt_t_layouts_tickets -%}{%- when "layouts.calendar" -%}{%- assign _tv = mt_t_layouts_calendar -%}{%- when "layouts.episode" -%}{%- assign _tv = mt_t_layouts_episode -%}{%- when "layouts.season" -%}{%- assign _tv = mt_t_layouts_season -%}{%- when "layouts.duration" -%}{%- assign _tv = mt_t_layouts_duration -%}{%- when "layouts.listen" -%}{%- assign _tv = mt_t_layouts_listen -%}{%- when "layouts.transcript" -%}{%- assign _tv = mt_t_layouts_transcript -%}{%- when "layouts.monthly" -%}{%- assign _tv = mt_t_layouts_monthly -%}{%- when "layouts.yearly" -%}{%- assign _tv = mt_t_layouts_yearly -%}{%- when "layouts.billing" -%}{%- assign _tv = mt_t_layouts_billing -%}{%- when "layouts.popular" -%}{%- assign _tv = mt_t_layouts_popular -%}{%- when "layouts.download" -%}{%- assign _tv = mt_t_layouts_download -%}{%- when "layouts.version" -%}{%- assign _tv = mt_t_layouts_version -%}{%- when "layouts.colors" -%}{%- assign _tv = mt_t_layouts_colors -%}{%- when "layouts.assets" -%}{%- assign _tv = mt_t_layouts_assets -%}{%- when "layouts.send" -%}{%- assign _tv = mt_t_layouts_send -%}{%- when "layouts.name" -%}{%- assign _tv = mt_t_layouts_name -%}{%- when "layouts.email" -%}{%- assign _tv = mt_t_layouts_email -%}{%- when "layouts.message" -%}{%- assign _tv = mt_t_layouts_message -%}{%- when "layouts.contact" -%}{%- assign _tv = mt_t_layouts_contact -%}{%- when "layouts.added" -%}{%- assign _tv = mt_t_layouts_added -%}{%- when "layouts.changed" -%}{%- assign _tv = mt_t_layouts_changed -%}{%- when "layouts.fixed" -%}{%- assign _tv = mt_t_layouts_fixed -%}{%- when "layouts.removed" -%}{%- assign _tv = mt_t_layouts_removed -%}{%- when "layouts.security" -%}{%- assign _tv = mt_t_layouts_security -%}{%- when "layouts.now" -%}{%- assign _tv = mt_t_layouts_now -%}{%- when "layouts.next" -%}{%- assign _tv = mt_t_layouts_next -%}{%- when "layouts.later" -%}{%- assign _tv = mt_t_layouts_later -%}{%- when "layouts.letters" -%}{%- assign _tv = mt_t_layouts_letters -%}{%- when "layouts.lessons" -%}{%- assign _tv = mt_t_layouts_lessons -%}{%- when "layouts.minutes" -%}{%- assign _tv = mt_t_layouts_minutes -%}{%- when "layouts.module" -%}{%- assign _tv = mt_t_layouts_module -%}{%- when "layouts.chapter" -%}{%- assign _tv = mt_t_layouts_chapter -%}{%- when "layouts.effective" -%}{%- assign _tv = mt_t_layouts_effective -%}{%- when "layouts.experience" -%}{%- assign _tv = mt_t_layouts_experience -%}{%- when "layouts.education" -%}{%- assign _tv = mt_t_layouts_education -%}{%- when "layouts.skills" -%}{%- assign _tv = mt_t_layouts_skills -%}{%- when "layouts.present" -%}{%- assign _tv = mt_t_layouts_present -%}{%- when "layouts.loading" -%}{%- assign _tv = mt_t_layouts_loading -%}{%- when "layouts.contents" -%}{%- assign _tv = mt_t_layouts_contents -%}{%- when "language" -%}{%- capture _tv -%}{%- include modootoday/i18n/name.html code=mt_t_lang -%}{%- endcapture -%}{%- assign _tv = site.data.i18n[mt_t_lang].language | default: _tv -%}{%- else -%}{%- assign _tv = include.key -%}{%- endcase -%}
|
|
5
5
|
{%- if include.n -%}{%- assign _tv = _tv | replace: "%{n}", include.n -%}{%- endif -%}
|
|
6
6
|
{%- if include.name -%}{%- assign _tv = _tv | replace: "%{name}", include.name -%}{%- endif -%}
|
|
7
7
|
{{- _tv -}}
|
data/_layouts/default.html
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
{%- assign _base = _lang | split: "-" | first -%}
|
|
11
11
|
{%- if _rtl contains _base %}{% assign _dir = "rtl" %}{% else %}{% assign _dir = nil %}{% endif -%}
|
|
12
12
|
{%- assign _dir = page.direction | default: mt_t_direction | default: _dir -%}
|
|
13
|
-
<html lang="{{ _lang }}"{% if _dir %} dir="{{ _dir }}"{% endif %}{% if mt_theme_start %} data-theme="{{ mt_theme_start }}"{% endif %} data-mt-copy="{{ mt_t_code_copy }}" data-mt-copied="{{ mt_t_code_copied }}" data-mt-code="{{ mt_t_code_label }}" data-mt-table="{{ mt_t_table_label }}">
|
|
13
|
+
<html lang="{{ _lang }}"{% if _dir %} dir="{{ _dir }}"{% endif %}{% if mt_theme_start %} data-theme="{{ mt_theme_start }}"{% endif %} data-mt-copy="{{ mt_t_code_copy }}" data-mt-copied="{{ mt_t_code_copied }}" data-mt-code="{{ mt_t_code_label }}" data-mt-table="{{ mt_t_table_label }}" data-mt-diagram="{{ mt_t_diagram_label }}">
|
|
14
14
|
<head>
|
|
15
15
|
<meta charset="utf-8">
|
|
16
16
|
<meta name="viewport" content="width=device-width, initial-scale=1{% unless site.modootoday.viewport_fit == "auto" %}, viewport-fit=cover{% endunless %}">
|
|
@@ -83,5 +83,7 @@
|
|
|
83
83
|
<script src="{{ '/assets/js/modootoday/search.js' | relative_url }}" defer></script>
|
|
84
84
|
<script src="{{ '/assets/js/modootoday/search-keys.js' | relative_url }}" defer></script>
|
|
85
85
|
{%- endif %}
|
|
86
|
+
{%- include modootoday/render/mermaid.html %}
|
|
87
|
+
{%- include modootoday/render/math.html %}
|
|
86
88
|
</body>
|
|
87
89
|
</html>
|
|
@@ -15,10 +15,9 @@
|
|
|
15
15
|
hr { border: 0; border-top: 1px solid mt(border); margin: 2.5rem 0; }
|
|
16
16
|
strong { font-weight: 650; }
|
|
17
17
|
// Section rhythm in documents: a hairline above each h2 (except the first) separates dense pages like the kitchen sink.
|
|
18
|
-
.mt-doc h2 { margin-top: 3.25rem; padding-top: 2rem; border-top: 1px solid mt(border); }
|
|
18
|
+
.mt-doc h2, .mt-doc .mt-section + .mt-section:not(.mt-cta) { margin-top: 3.25rem; padding-top: 2rem; border-top: 1px solid mt(border); }
|
|
19
19
|
.mt-doc > h1 + h2, .mt-doc > h2:first-child, .mt-hero + h2 { margin-top: 2.5rem; padding-top: 0; border-top: 0; }
|
|
20
20
|
.mt-doc .mt-section > h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
|
|
21
|
-
.mt-doc .mt-section + .mt-section:not(.mt-cta) { margin-top: 3.25rem; padding-top: 2rem; border-top: 1px solid mt(border); }
|
|
22
21
|
.mt-doc h3 { margin-top: 2em; }
|
|
23
22
|
li.task-list-item { list-style: none; }
|
|
24
23
|
li.task-list-item > input { margin: 0 .5em 0 -1.4em; vertical-align: -.1em; accent-color: mt(primary); }
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// SVG figures (diagrams): optional sheet, linked only by pages with figure.mt-figure-svg. Raster figures keep the core tone.
|
|
2
|
+
// Dark mode: --mt-diagram-filter-dark (default: invert with hue kept, so a light diagram reads on a dark page, then
|
|
3
|
+
// --mt-img-filter-dark tones it). Site: set --mt-diagram-filter-dark: var(--mt-img-filter-dark) (tone only) or none.
|
|
4
|
+
// Image: a src ending in #light (or kramdown {: .mt-no-filter}) keeps the SVG as drawn.
|
|
5
|
+
// Narrow screens: the image keeps --mt-figure-min-width and div.mt-figure-scroll (focusable, labelled) scrolls sideways.
|
|
6
|
+
@include mt-layer(components) {
|
|
7
|
+
:where(:root) { --mt-img-filter-dark: brightness(.85) contrast(1.05) saturate(.9); --mt-diagram-filter-dark: invert(.9) hue-rotate(180deg) var(--mt-img-filter-dark); --mt-figure-min-width: 32rem; }
|
|
8
|
+
.mt-figure-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; border-radius: mt(radius-lg); }
|
|
9
|
+
.mt-figure-svg img { width: 100%; max-width: none; min-width: var(--mt-figure-min-width); height: auto; }
|
|
10
|
+
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .mt-figure-svg img:not(.mt-no-filter):not([src$="#light"]) { filter: var(--mt-diagram-filter-dark); } }
|
|
11
|
+
[data-theme="dark"] .mt-figure-svg img:not(.mt-no-filter):not([src$="#light"]) { filter: var(--mt-diagram-filter-dark); }
|
|
12
|
+
:is([data-theme="dark"], :root) .mt-figure-svg img:is(.mt-no-filter, [src$="#light"]) { filter: none; }
|
|
13
|
+
@media print { .mt-figure-svg img { filter: none !important; min-width: 0; } .mt-figure-scroll { overflow: visible; } }
|
|
14
|
+
}
|
|
@@ -11,5 +11,7 @@
|
|
|
11
11
|
@media (min-width: 48rem) {
|
|
12
12
|
.mt-cols-2 > ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
13
13
|
.mt-cols-3 > ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
|
|
14
|
+
.mt-cols-4 > ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
14
15
|
}
|
|
16
|
+
@media (min-width: 64rem) { .mt-cols-4 > ul { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
|
|
15
17
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
# md-components v1 — jekyll-theme-modootoday optional sheet (SVG figures: dark tone, horizontal scroll). Linked only by pages that use it.
|
|
3
|
+
---
|
|
4
|
+
{%- include modootoday/config.html -%}
|
|
5
|
+
$mt-css-layers: {{ mt_css_layers }};
|
|
6
|
+
@import "modootoday/sheet";
|
|
7
|
+
{% if mt_components contains "figure-svg" %}@import "modootoday/components/figure/figure-svg";
|
|
8
|
+
{% endif %}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
const over = el.scrollWidth > el.clientWidth + 1, pre = el.tagName == "PRE", tp = el.closest("[role=tabpanel]");
|
|
6
6
|
if (over && !el.hasAttribute("aria-label")) {
|
|
7
7
|
el.tabIndex = 0; el.dataset.mtScroll = ""; el.role = "region";
|
|
8
|
-
el.ariaLabel =
|
|
8
|
+
el.ariaLabel = pre ? ds.mtCode || "Code" : ds.mtTable || "Table";
|
|
9
9
|
} else if (!over && el.hasAttribute("data-mt-scroll")) A.forEach((a) => el.removeAttribute(a));
|
|
10
10
|
if (tp) tp.tabIndex = over ? -1 : 0;
|
|
11
11
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Optional math bundle (site.modootoday.math): KaTeX, loaded before it, renders ```math fences, $$ blocks
|
|
2
|
+
// (kramdown prints \[ … \] and \( … \)) and, with inline: true, $…$. The TeX source stays when KaTeX cannot parse it.
|
|
3
|
+
(() => {
|
|
4
|
+
const k = window.katex, me = document.currentScript, main = document.querySelector(".mt-main");
|
|
5
|
+
if (!k || !me || !main) return;
|
|
6
|
+
main.querySelectorAll("code.language-math").forEach((code) => {
|
|
7
|
+
const box = code.closest("div.highlighter-rouge") || code.closest("pre") || code, out = document.createElement("div");
|
|
8
|
+
try { k.render(code.textContent, out, { displayMode: true, throwOnError: true }); } catch (e) { return; }
|
|
9
|
+
out.className = "mt-math";
|
|
10
|
+
out.style.overflowX = "auto";
|
|
11
|
+
out.style.overflowY = "hidden";
|
|
12
|
+
box.before(out);
|
|
13
|
+
box.hidden = true;
|
|
14
|
+
});
|
|
15
|
+
if (!window.renderMathInElement) return;
|
|
16
|
+
const d = [{ left: "\\[", right: "\\]", display: true }, { left: "\\(", right: "\\)", display: false }];
|
|
17
|
+
if (me.dataset.mtInline == "true") d.push({ left: "$", right: "$", display: false });
|
|
18
|
+
window.renderMathInElement(main, { delimiters: d, throwOnError: false, ignoredClasses: ["mt-math"] });
|
|
19
|
+
})();
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Optional Mermaid bundle (site.modootoday.mermaid): renders ```mermaid fences with the Mermaid script loaded before it.
|
|
2
|
+
// The fence stays as the fallback (hidden once its SVG is drawn; kept on a parse error). Theme follows the page.
|
|
3
|
+
(() => {
|
|
4
|
+
const m = window.mermaid, me = document.currentScript, root = document.documentElement;
|
|
5
|
+
if (!m || !me) return;
|
|
6
|
+
const mq = matchMedia("(prefers-color-scheme: dark)"), still = matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
7
|
+
const items = [...document.querySelectorAll(".mt-main code.language-mermaid")].map((code) => ({ box: code.closest("div.highlighter-rouge") || code.closest("pre") || code, src: code.textContent }));
|
|
8
|
+
if (!items.length) return;
|
|
9
|
+
const pick = () => {
|
|
10
|
+
const t = me.dataset.mtTheme;
|
|
11
|
+
if (t && t != "auto") return t;
|
|
12
|
+
const d = root.dataset.theme;
|
|
13
|
+
return (d ? d == "dark" : mq.matches) ? "dark" : "default";
|
|
14
|
+
};
|
|
15
|
+
let theme, n = 0;
|
|
16
|
+
const draw = () => {
|
|
17
|
+
const t = pick();
|
|
18
|
+
if (t == theme) return;
|
|
19
|
+
theme = t;
|
|
20
|
+
m.initialize({ startOnLoad: false, securityLevel: "strict", theme: t, themeCSS: still ? "*{animation:none!important;transition:none!important}" : "" });
|
|
21
|
+
items.forEach((it) => m.render("mt-mermaid-" + n++, it.src).then(({ svg }) => {
|
|
22
|
+
let f = it.fig;
|
|
23
|
+
if (!f) {
|
|
24
|
+
f = it.fig = document.createElement("div");
|
|
25
|
+
f.className = "mt-mermaid";
|
|
26
|
+
f.style.overflowX = "auto";
|
|
27
|
+
it.box.before(f);
|
|
28
|
+
it.box.hidden = true;
|
|
29
|
+
}
|
|
30
|
+
f.innerHTML = svg;
|
|
31
|
+
if (f.scrollWidth > f.clientWidth + 1) {
|
|
32
|
+
f.tabIndex = 0; f.role = "region"; f.ariaLabel = root.dataset.mtDiagram || "Diagram";
|
|
33
|
+
}
|
|
34
|
+
}, () => {}));
|
|
35
|
+
};
|
|
36
|
+
draw();
|
|
37
|
+
new MutationObserver(draw).observe(root, { attributes: true, attributeFilter: ["data-theme"] });
|
|
38
|
+
if (mq.addEventListener) mq.addEventListener("change", draw);
|
|
39
|
+
})();
|
data/i18n/ar.yml
CHANGED
|
@@ -16,6 +16,7 @@ nav: {label: القائمة الرئيسية, back_to_top: العودة إلى
|
|
|
16
16
|
pagination: {label: الصفحات, prev: السابق, next: التالي}
|
|
17
17
|
code: {copy: نسخ, copied: تم النسخ, label: شيفرة, file: ملف}
|
|
18
18
|
table: {label: جدول}
|
|
19
|
+
diagram: {label: مخطط}
|
|
19
20
|
search: {label: بحث}
|
|
20
21
|
page: {edit: تعديل هذه الصفحة, updated: آخر تحديث}
|
|
21
22
|
languages: {label: اللغات}
|
data/i18n/de.yml
CHANGED
|
@@ -16,6 +16,7 @@ nav: {label: Hauptmenü, back_to_top: Nach oben}
|
|
|
16
16
|
pagination: {label: Seiten, prev: Zurück, next: Weiter}
|
|
17
17
|
code: {copy: Kopieren, copied: Kopiert, label: Code, file: Datei}
|
|
18
18
|
table: {label: Tabelle}
|
|
19
|
+
diagram: {label: Diagramm}
|
|
19
20
|
search: {label: Suche}
|
|
20
21
|
page: {edit: Diese Seite bearbeiten, updated: Zuletzt aktualisiert}
|
|
21
22
|
languages: {label: Sprachen}
|