mkdocs 1.6.1__tar.gz → 2.0.dev1__tar.gz

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.
Files changed (287) hide show
  1. mkdocs-2.0.dev1/.github/workflows/docs.yml +28 -0
  2. mkdocs-2.0.dev1/.github/workflows/test-suite.yml +36 -0
  3. mkdocs-2.0.dev1/.gitignore +4 -0
  4. mkdocs-2.0.dev1/PKG-INFO +20 -0
  5. mkdocs-2.0.dev1/docs/README.md +54 -0
  6. mkdocs-2.0.dev1/docs/img/codercat.png +0 -0
  7. mkdocs-2.0.dev1/mkdocs.toml +15 -0
  8. mkdocs-2.0.dev1/pyproject.toml +36 -0
  9. mkdocs-2.0.dev1/requirements.txt +3 -0
  10. mkdocs-2.0.dev1/scripts/install +19 -0
  11. mkdocs-2.0.dev1/scripts/test +10 -0
  12. mkdocs-2.0.dev1/src/mkdocs/__init__.py +15 -0
  13. mkdocs-2.0.dev1/src/mkdocs/__version__.py +2 -0
  14. mkdocs-2.0.dev1/src/mkdocs/default/base.html +17 -0
  15. mkdocs-2.0.dev1/src/mkdocs/default/favicon.html +1 -0
  16. mkdocs-2.0.dev1/src/mkdocs/default/highlight.css +86 -0
  17. mkdocs-2.0.dev1/src/mkdocs/default/style.css +148 -0
  18. mkdocs-2.0.dev1/src/mkdocs/extensions/relative_urls.py +59 -0
  19. mkdocs-2.0.dev1/src/mkdocs/extensions/short_codes.py +38 -0
  20. mkdocs-2.0.dev1/src/mkdocs/extensions/strike_thru.py +19 -0
  21. mkdocs-2.0.dev1/src/mkdocs/mkdocs.py +244 -0
  22. mkdocs-2.0.dev1/src/mkdocs/theme/base.html +173 -0
  23. mkdocs-2.0.dev1/tests/test_mkdocs.py +2 -0
  24. mkdocs-2.0.dev1/uv.lock +157 -0
  25. mkdocs-1.6.1/.gitignore +0 -70
  26. mkdocs-1.6.1/LICENSE +0 -26
  27. mkdocs-1.6.1/PKG-INFO +0 -143
  28. mkdocs-1.6.1/README.md +0 -79
  29. mkdocs-1.6.1/hatch_build.py +0 -14
  30. mkdocs-1.6.1/mkdocs/__init__.py +0 -5
  31. mkdocs-1.6.1/mkdocs/__main__.py +0 -370
  32. mkdocs-1.6.1/mkdocs/commands/build.py +0 -369
  33. mkdocs-1.6.1/mkdocs/commands/gh_deploy.py +0 -169
  34. mkdocs-1.6.1/mkdocs/commands/new.py +0 -53
  35. mkdocs-1.6.1/mkdocs/commands/serve.py +0 -112
  36. mkdocs-1.6.1/mkdocs/config/__init__.py +0 -3
  37. mkdocs-1.6.1/mkdocs/config/base.py +0 -392
  38. mkdocs-1.6.1/mkdocs/config/config_options.py +0 -1226
  39. mkdocs-1.6.1/mkdocs/config/defaults.py +0 -218
  40. mkdocs-1.6.1/mkdocs/contrib/__init__.py +0 -0
  41. mkdocs-1.6.1/mkdocs/contrib/search/__init__.py +0 -120
  42. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ar.js +0 -381
  43. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.da.js +0 -284
  44. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.de.js +0 -384
  45. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.du.js +0 -450
  46. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.es.js +0 -599
  47. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.fi.js +0 -541
  48. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.fr.js +0 -703
  49. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.hi.js +0 -123
  50. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.hu.js +0 -565
  51. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.hy.js +0 -98
  52. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.it.js +0 -617
  53. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ja.js +0 -188
  54. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.jp.js +0 -5
  55. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.kn.js +0 -110
  56. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ko.js +0 -114
  57. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.multi.js +0 -79
  58. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.nl.js +0 -448
  59. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.no.js +0 -258
  60. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.pt.js +0 -570
  61. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ro.js +0 -558
  62. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ru.js +0 -391
  63. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.sa.js +0 -110
  64. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.stemmer.support.js +0 -304
  65. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.sv.js +0 -256
  66. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.ta.js +0 -123
  67. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.te.js +0 -122
  68. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.th.js +0 -99
  69. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.tr.js +0 -1087
  70. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.vi.js +0 -84
  71. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/lunr.zh.js +0 -145
  72. mkdocs-1.6.1/mkdocs/contrib/search/lunr-language/tinyseg.js +0 -206
  73. mkdocs-1.6.1/mkdocs/contrib/search/prebuild-index.js +0 -56
  74. mkdocs-1.6.1/mkdocs/contrib/search/search_index.py +0 -225
  75. mkdocs-1.6.1/mkdocs/contrib/search/templates/search/lunr.js +0 -3475
  76. mkdocs-1.6.1/mkdocs/contrib/search/templates/search/main.js +0 -109
  77. mkdocs-1.6.1/mkdocs/contrib/search/templates/search/worker.js +0 -133
  78. mkdocs-1.6.1/mkdocs/exceptions.py +0 -41
  79. mkdocs-1.6.1/mkdocs/livereload/__init__.py +0 -381
  80. mkdocs-1.6.1/mkdocs/localization.py +0 -92
  81. mkdocs-1.6.1/mkdocs/plugins.py +0 -697
  82. mkdocs-1.6.1/mkdocs/py.typed +0 -0
  83. mkdocs-1.6.1/mkdocs/structure/__init__.py +0 -36
  84. mkdocs-1.6.1/mkdocs/structure/files.py +0 -626
  85. mkdocs-1.6.1/mkdocs/structure/nav.py +0 -251
  86. mkdocs-1.6.1/mkdocs/structure/pages.py +0 -569
  87. mkdocs-1.6.1/mkdocs/structure/toc.py +0 -80
  88. mkdocs-1.6.1/mkdocs/templates/sitemap.xml +0 -11
  89. mkdocs-1.6.1/mkdocs/tests/__init__.py +0 -16
  90. mkdocs-1.6.1/mkdocs/tests/base.py +0 -129
  91. mkdocs-1.6.1/mkdocs/tests/build_tests.py +0 -898
  92. mkdocs-1.6.1/mkdocs/tests/cli_tests.py +0 -646
  93. mkdocs-1.6.1/mkdocs/tests/config/__init__.py +0 -0
  94. mkdocs-1.6.1/mkdocs/tests/config/base_tests.py +0 -274
  95. mkdocs-1.6.1/mkdocs/tests/config/config_options_legacy_tests.py +0 -1646
  96. mkdocs-1.6.1/mkdocs/tests/config/config_options_tests.py +0 -2420
  97. mkdocs-1.6.1/mkdocs/tests/config/config_tests.py +0 -272
  98. mkdocs-1.6.1/mkdocs/tests/gh_deploy_tests.py +0 -185
  99. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/documentation/custom.html +0 -9
  100. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/documentation/index.md +0 -4
  101. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/documentation/tweak.css +0 -3
  102. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/documentation/tweak.js +0 -1
  103. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/mkdocs.yml +0 -46
  104. mkdocs-1.6.1/mkdocs/tests/integration/complicated_config/theme_tweaks/404.html +0 -7
  105. mkdocs-1.6.1/mkdocs/tests/integration/minimal/docs/testing.md +0 -17
  106. mkdocs-1.6.1/mkdocs/tests/integration/minimal/mkdocs.yml +0 -6
  107. mkdocs-1.6.1/mkdocs/tests/integration/projects.yaml +0 -82
  108. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/image.png +0 -0
  109. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/index.md +0 -23
  110. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/metadata.md +0 -5
  111. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/non-index.md +0 -23
  112. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/page-title.md +0 -1
  113. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/pageTitle.md +0 -1
  114. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub1/image.png +0 -0
  115. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub1/index.md +0 -38
  116. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub1/non-index.md +0 -38
  117. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub1/sub1a/index.md +0 -30
  118. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub1/sub1a/non-index.md +0 -30
  119. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub2/index.md +0 -31
  120. mkdocs-1.6.1/mkdocs/tests/integration/subpages/docs/sub2/non-index.md +0 -31
  121. mkdocs-1.6.1/mkdocs/tests/integration/subpages/mkdocs.yml +0 -1
  122. mkdocs-1.6.1/mkdocs/tests/integration/unicode/docs/index.md +0 -2
  123. mkdocs-1.6.1/mkdocs/tests/integration/unicode/docs//303/234bersicht.md +0 -17
  124. mkdocs-1.6.1/mkdocs/tests/integration/unicode/docs//342/231/252.md +0 -17
  125. mkdocs-1.6.1/mkdocs/tests/integration/unicode/mkdocs.yml +0 -1
  126. mkdocs-1.6.1/mkdocs/tests/integration.py +0 -75
  127. mkdocs-1.6.1/mkdocs/tests/livereload_tests.py +0 -626
  128. mkdocs-1.6.1/mkdocs/tests/localization_tests.py +0 -74
  129. mkdocs-1.6.1/mkdocs/tests/new_tests.py +0 -24
  130. mkdocs-1.6.1/mkdocs/tests/plugin_tests.py +0 -328
  131. mkdocs-1.6.1/mkdocs/tests/search_tests.py +0 -633
  132. mkdocs-1.6.1/mkdocs/tests/structure/__init__.py +0 -0
  133. mkdocs-1.6.1/mkdocs/tests/structure/file_tests.py +0 -746
  134. mkdocs-1.6.1/mkdocs/tests/structure/nav_tests.py +0 -550
  135. mkdocs-1.6.1/mkdocs/tests/structure/page_tests.py +0 -1382
  136. mkdocs-1.6.1/mkdocs/tests/structure/toc_tests.py +0 -198
  137. mkdocs-1.6.1/mkdocs/tests/theme_tests.py +0 -125
  138. mkdocs-1.6.1/mkdocs/tests/utils/__init__.py +0 -0
  139. mkdocs-1.6.1/mkdocs/tests/utils/babel_stub_tests.py +0 -55
  140. mkdocs-1.6.1/mkdocs/tests/utils/templates_tests.py +0 -49
  141. mkdocs-1.6.1/mkdocs/tests/utils/utils_tests.py +0 -602
  142. mkdocs-1.6.1/mkdocs/theme.py +0 -166
  143. mkdocs-1.6.1/mkdocs/themes/__init__.py +0 -0
  144. mkdocs-1.6.1/mkdocs/themes/babel.cfg +0 -6
  145. mkdocs-1.6.1/mkdocs/themes/mkdocs/404.html +0 -12
  146. mkdocs-1.6.1/mkdocs/themes/mkdocs/__init__.py +0 -0
  147. mkdocs-1.6.1/mkdocs/themes/mkdocs/base.html +0 -251
  148. mkdocs-1.6.1/mkdocs/themes/mkdocs/content.html +0 -9
  149. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/base.css +0 -366
  150. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/bootstrap.min.css +0 -12
  151. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/bootstrap.min.css.map +0 -1
  152. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/brands.min.css +0 -6
  153. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/fontawesome.min.css +0 -9
  154. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/solid.min.css +0 -6
  155. mkdocs-1.6.1/mkdocs/themes/mkdocs/css/v4-font-face.min.css +0 -6
  156. mkdocs-1.6.1/mkdocs/themes/mkdocs/img/favicon.ico +0 -0
  157. mkdocs-1.6.1/mkdocs/themes/mkdocs/img/grid.png +0 -0
  158. mkdocs-1.6.1/mkdocs/themes/mkdocs/js/base.js +0 -287
  159. mkdocs-1.6.1/mkdocs/themes/mkdocs/js/bootstrap.bundle.min.js +0 -7
  160. mkdocs-1.6.1/mkdocs/themes/mkdocs/js/bootstrap.bundle.min.js.map +0 -1
  161. mkdocs-1.6.1/mkdocs/themes/mkdocs/js/darkmode.js +0 -65
  162. mkdocs-1.6.1/mkdocs/themes/mkdocs/keyboard-modal.html +0 -40
  163. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/de/LC_MESSAGES/messages.mo +0 -0
  164. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/de/LC_MESSAGES/messages.po +0 -103
  165. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/es/LC_MESSAGES/messages.mo +0 -0
  166. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/es/LC_MESSAGES/messages.po +0 -103
  167. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/fa/LC_MESSAGES/messages.mo +0 -0
  168. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/fa/LC_MESSAGES/messages.po +0 -103
  169. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/fr/LC_MESSAGES/messages.mo +0 -0
  170. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/fr/LC_MESSAGES/messages.po +0 -103
  171. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/id/LC_MESSAGES/messages.mo +0 -0
  172. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/id/LC_MESSAGES/messages.po +0 -103
  173. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/it/LC_MESSAGES/messages.mo +0 -0
  174. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/it/LC_MESSAGES/messages.po +0 -103
  175. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/ja/LC_MESSAGES/messages.mo +0 -0
  176. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/ja/LC_MESSAGES/messages.po +0 -101
  177. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nb/LC_MESSAGES/messages.mo +0 -0
  178. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nb/LC_MESSAGES/messages.po +0 -101
  179. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nl/LC_MESSAGES/messages.mo +0 -0
  180. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nl/LC_MESSAGES/messages.po +0 -102
  181. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nn/LC_MESSAGES/messages.mo +0 -0
  182. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/nn/LC_MESSAGES/messages.po +0 -101
  183. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/pl/LC_MESSAGES/messages.mo +0 -0
  184. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/pl/LC_MESSAGES/messages.po +0 -104
  185. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/pt_BR/LC_MESSAGES/messages.mo +0 -0
  186. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/pt_BR/LC_MESSAGES/messages.po +0 -103
  187. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/ru/LC_MESSAGES/messages.mo +0 -0
  188. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/ru/LC_MESSAGES/messages.po +0 -104
  189. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/tr/LC_MESSAGES/messages.mo +0 -0
  190. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/tr/LC_MESSAGES/messages.po +0 -103
  191. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/uk/LC_MESSAGES/messages.mo +0 -0
  192. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/uk/LC_MESSAGES/messages.po +0 -102
  193. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/zh_CN/LC_MESSAGES/messages.mo +0 -0
  194. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/zh_CN/LC_MESSAGES/messages.po +0 -101
  195. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/zh_TW/LC_MESSAGES/messages.mo +0 -0
  196. mkdocs-1.6.1/mkdocs/themes/mkdocs/locales/zh_TW/LC_MESSAGES/messages.po +0 -101
  197. mkdocs-1.6.1/mkdocs/themes/mkdocs/main.html +0 -10
  198. mkdocs-1.6.1/mkdocs/themes/mkdocs/messages.pot +0 -101
  199. mkdocs-1.6.1/mkdocs/themes/mkdocs/mkdocs_theme.yml +0 -28
  200. mkdocs-1.6.1/mkdocs/themes/mkdocs/nav-sub.html +0 -14
  201. mkdocs-1.6.1/mkdocs/themes/mkdocs/search-modal.html +0 -21
  202. mkdocs-1.6.1/mkdocs/themes/mkdocs/toc.html +0 -26
  203. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-brands-400.ttf +0 -0
  204. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-brands-400.woff2 +0 -0
  205. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-regular-400.ttf +0 -0
  206. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-regular-400.woff2 +0 -0
  207. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-solid-900.ttf +0 -0
  208. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-solid-900.woff2 +0 -0
  209. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-v4compatibility.ttf +0 -0
  210. mkdocs-1.6.1/mkdocs/themes/mkdocs/webfonts/fa-v4compatibility.woff2 +0 -0
  211. mkdocs-1.6.1/mkdocs/themes/readthedocs/404.html +0 -9
  212. mkdocs-1.6.1/mkdocs/themes/readthedocs/__init__.py +0 -0
  213. mkdocs-1.6.1/mkdocs/themes/readthedocs/base.html +0 -199
  214. mkdocs-1.6.1/mkdocs/themes/readthedocs/breadcrumbs.html +0 -44
  215. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/Roboto-Slab-Bold.woff +0 -0
  216. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  217. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/Roboto-Slab-Regular.woff +0 -0
  218. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  219. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/fontawesome-webfont.eot +0 -0
  220. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/fontawesome-webfont.svg +0 -2671
  221. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/fontawesome-webfont.ttf +0 -0
  222. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/fontawesome-webfont.woff +0 -0
  223. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/fontawesome-webfont.woff2 +0 -0
  224. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-bold-italic.woff +0 -0
  225. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-bold-italic.woff2 +0 -0
  226. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-bold.woff +0 -0
  227. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-bold.woff2 +0 -0
  228. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-normal-italic.woff +0 -0
  229. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-normal-italic.woff2 +0 -0
  230. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-normal.woff +0 -0
  231. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/fonts/lato-normal.woff2 +0 -0
  232. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/theme.css +0 -13
  233. mkdocs-1.6.1/mkdocs/themes/readthedocs/css/theme_extra.css +0 -197
  234. mkdocs-1.6.1/mkdocs/themes/readthedocs/footer.html +0 -26
  235. mkdocs-1.6.1/mkdocs/themes/readthedocs/img/favicon.ico +0 -0
  236. mkdocs-1.6.1/mkdocs/themes/readthedocs/js/html5shiv.min.js +0 -4
  237. mkdocs-1.6.1/mkdocs/themes/readthedocs/js/jquery-3.6.0.min.js +0 -2
  238. mkdocs-1.6.1/mkdocs/themes/readthedocs/js/theme.js +0 -2
  239. mkdocs-1.6.1/mkdocs/themes/readthedocs/js/theme_extra.js +0 -8
  240. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/de/LC_MESSAGES/messages.mo +0 -0
  241. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/de/LC_MESSAGES/messages.po +0 -111
  242. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/es/LC_MESSAGES/messages.mo +0 -0
  243. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/es/LC_MESSAGES/messages.po +0 -113
  244. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/fa/LC_MESSAGES/messages.mo +0 -0
  245. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/fa/LC_MESSAGES/messages.po +0 -113
  246. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/fr/LC_MESSAGES/messages.mo +0 -0
  247. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/fr/LC_MESSAGES/messages.po +0 -113
  248. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/id/LC_MESSAGES/messages.mo +0 -0
  249. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/id/LC_MESSAGES/messages.po +0 -114
  250. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/it/LC_MESSAGES/messages.mo +0 -0
  251. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/it/LC_MESSAGES/messages.po +0 -113
  252. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/ja/LC_MESSAGES/messages.mo +0 -0
  253. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/ja/LC_MESSAGES/messages.po +0 -111
  254. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/nl/LC_MESSAGES/messages.mo +0 -0
  255. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/nl/LC_MESSAGES/messages.po +0 -114
  256. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/pl/LC_MESSAGES/messages.mo +0 -0
  257. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/pl/LC_MESSAGES/messages.po +0 -114
  258. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/pt_BR/LC_MESSAGES/messages.mo +0 -0
  259. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/pt_BR/LC_MESSAGES/messages.po +0 -114
  260. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/ru/LC_MESSAGES/messages.mo +0 -0
  261. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/ru/LC_MESSAGES/messages.po +0 -114
  262. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/tr/LC_MESSAGES/messages.mo +0 -0
  263. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/tr/LC_MESSAGES/messages.po +0 -113
  264. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/uk/LC_MESSAGES/messages.mo +0 -0
  265. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/uk/LC_MESSAGES/messages.po +0 -114
  266. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/zh_CN/LC_MESSAGES/messages.mo +0 -0
  267. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/zh_CN/LC_MESSAGES/messages.po +0 -113
  268. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/zh_TW/LC_MESSAGES/messages.mo +0 -0
  269. mkdocs-1.6.1/mkdocs/themes/readthedocs/locales/zh_TW/LC_MESSAGES/messages.po +0 -111
  270. mkdocs-1.6.1/mkdocs/themes/readthedocs/main.html +0 -10
  271. mkdocs-1.6.1/mkdocs/themes/readthedocs/messages.pot +0 -109
  272. mkdocs-1.6.1/mkdocs/themes/readthedocs/mkdocs_theme.yml +0 -25
  273. mkdocs-1.6.1/mkdocs/themes/readthedocs/nav.html +0 -22
  274. mkdocs-1.6.1/mkdocs/themes/readthedocs/search.html +0 -16
  275. mkdocs-1.6.1/mkdocs/themes/readthedocs/searchbox.html +0 -5
  276. mkdocs-1.6.1/mkdocs/themes/readthedocs/toc.html +0 -12
  277. mkdocs-1.6.1/mkdocs/themes/readthedocs/versions.html +0 -27
  278. mkdocs-1.6.1/mkdocs/utils/__init__.py +0 -410
  279. mkdocs-1.6.1/mkdocs/utils/babel_stub.py +0 -29
  280. mkdocs-1.6.1/mkdocs/utils/cache.py +0 -36
  281. mkdocs-1.6.1/mkdocs/utils/filters.py +0 -1
  282. mkdocs-1.6.1/mkdocs/utils/meta.py +0 -100
  283. mkdocs-1.6.1/mkdocs/utils/rendering.py +0 -104
  284. mkdocs-1.6.1/mkdocs/utils/templates.py +0 -55
  285. mkdocs-1.6.1/mkdocs/utils/yaml.py +0 -150
  286. mkdocs-1.6.1/pyproject.toml +0 -239
  287. {mkdocs-1.6.1/mkdocs/commands → mkdocs-2.0.dev1/src/mkdocs/extensions}/__init__.py +0 -0
@@ -0,0 +1,28 @@
1
+ name: Documentation
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ permissions:
7
+ contents: read
8
+ pages: write
9
+ id-token: write
10
+ jobs:
11
+ deploy:
12
+ environment:
13
+ name: github-pages
14
+ url: ${{ steps.deployment.outputs.page_url }}
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - uses: actions/configure-pages@v5
18
+ - uses: actions/checkout@v5
19
+ - uses: actions/setup-python@v5
20
+ with:
21
+ python-version: 3.x
22
+ - run: pip install -r requirements.txt
23
+ - run: mkdocs build
24
+ - uses: actions/upload-pages-artifact@v4
25
+ with:
26
+ path: site
27
+ - uses: actions/deploy-pages@v4
28
+ id: deployment
@@ -0,0 +1,36 @@
1
+ ---
2
+ name: Test Suite
3
+
4
+ on:
5
+ push:
6
+ branches: ["main"]
7
+ pull_request:
8
+ branches: ["main"]
9
+
10
+ jobs:
11
+ tests:
12
+ name: "Python ${{ matrix.python-version }}"
13
+ runs-on: "ubuntu-latest"
14
+
15
+ strategy:
16
+ matrix:
17
+ python-version: ["3.10"]
18
+
19
+ steps:
20
+ - uses: "actions/checkout@v4"
21
+ - uses: "actions/setup-python@v6"
22
+ with:
23
+ python-version: "${{ matrix.python-version }}"
24
+ - name: "Install dependencies"
25
+ run: "scripts/install"
26
+ - name: "Run tests"
27
+ run: "scripts/test"
28
+
29
+ # - name: "Run linting checks"
30
+ # run: "scripts/check"
31
+ # - name: "Build package & docs"
32
+ # run: "scripts/build"
33
+ # - name: "Run tests"
34
+ # run: "scripts/test"
35
+ # - name: "Enforce coverage"
36
+ # run: "scripts/coverage"
@@ -0,0 +1,4 @@
1
+ *.pyc
2
+ venv/
3
+ dist/
4
+ site/
@@ -0,0 +1,20 @@
1
+ Metadata-Version: 2.5
2
+ Name: mkdocs
3
+ Version: 2.0.dev1
4
+ Summary: HTTP, for Python.
5
+ Author-email: Kim Christie <noreply@lovelydinosaur.com>
6
+ Classifier: Development Status :: 4 - Beta
7
+ Classifier: Environment :: Web Environment
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: Operating System :: OS Independent
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.10
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Programming Language :: Python :: 3.13
15
+ Classifier: Topic :: Internet :: WWW/HTTP
16
+ Requires-Python: >=3.10
17
+ Requires-Dist: click
18
+ Requires-Dist: httpx>=1.0.dev5
19
+ Requires-Dist: jinja2
20
+ Requires-Dist: markdown
@@ -0,0 +1,54 @@
1
+ <style>
2
+ h2 { margin-top: 50px}
3
+ </style>
4
+
5
+ # MkDocs
6
+
7
+ MkDocs is a smart, simple, website design tool.
8
+
9
+ Getting started is easy...
10
+
11
+ ```shell
12
+ $ pip install mkdocs --pre
13
+ ```
14
+
15
+ *This will install the version 2.0 pre-release.*
16
+
17
+ ## Getting started
18
+
19
+ 1. Create a `docs/README.md` page.
20
+ 2. Run `mkdocs serve` to view your documentation in a browser.
21
+ 3. Run `mkdocs build` to build a static website ready to host.
22
+
23
+ ## Writing your docs
24
+
25
+ 1. Create additional markdown pages.
26
+ 2. Use relative interlinking between pages.
27
+ 3. Include images and use relative interlinking from pages.
28
+
29
+ *MkDocs supports [GitHub Flavored Markdown](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax) for page authoring.*
30
+
31
+ ## Styling your docs
32
+
33
+ 1. Create a `templates/base.html` to customise the styling.
34
+ 2. Include css and javascript to serve static files.
35
+
36
+ *MkDocs uses [Jinja templating](https://jinja.palletsprojects.com/en/stable/templates/) for HTML rendering.*
37
+
38
+ A starting point can be as simple as...
39
+
40
+ ```html
41
+ <html>
42
+ <head>
43
+ <meta charset="utf-8">
44
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
45
+ <title>{{ page.title }}</title>
46
+ <link rel="stylesheet" href="{{ '/css/default.css' | url }}">
47
+ </head>
48
+ <body>
49
+ <main>
50
+ {{ page.html }}
51
+ </main>
52
+ </body>
53
+ </html>
54
+ ```
Binary file
@@ -0,0 +1,15 @@
1
+ [mkdocs]
2
+ nav = [
3
+ {title="Introduction", path="index.md"},
4
+ {title="Writing Markdown", path="writing.md"},
5
+ {title="Interlinking & Navigation", path="navigation.md"},
6
+ {title="Themes & Styling", path="styling.md"}
7
+ ]
8
+
9
+ [loaders]
10
+ theme = "pkg://mkdocs/default"
11
+ docs = "dir://docs"
12
+
13
+ [context]
14
+ title = "MkDocs"
15
+ favicon = "📘"
@@ -0,0 +1,36 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "mkdocs"
7
+ description = "HTTP, for Python."
8
+ requires-python = ">=3.10"
9
+ authors = [
10
+ { name = "Kim Christie", email = "noreply@lovelydinosaur.com" },
11
+ ]
12
+ classifiers = [
13
+ "Development Status :: 4 - Beta",
14
+ "Environment :: Web Environment",
15
+ "Intended Audience :: Developers",
16
+ "Operating System :: OS Independent",
17
+ "Programming Language :: Python :: 3",
18
+ "Programming Language :: Python :: 3.10",
19
+ "Programming Language :: Python :: 3.11",
20
+ "Programming Language :: Python :: 3.12",
21
+ "Programming Language :: Python :: 3.13",
22
+ "Topic :: Internet :: WWW/HTTP",
23
+ ]
24
+ dependencies = [
25
+ "httpx>=1.0.dev5",
26
+ "click",
27
+ "jinja2",
28
+ "markdown",
29
+ ]
30
+ dynamic = ["version"]
31
+
32
+ [tool.hatch.version]
33
+ path = "src/mkdocs/__version__.py"
34
+
35
+ [project.scripts]
36
+ mkdocs = "mkdocs:cli"
@@ -0,0 +1,3 @@
1
+ -e .
2
+
3
+ pytest
@@ -0,0 +1,19 @@
1
+ #!/bin/sh -e
2
+
3
+ # Use the Python executable provided from the `-p` option, or a default.
4
+ [ "$1" = "-p" ] && PYTHON=$2 || PYTHON="python3"
5
+
6
+ REQUIREMENTS="requirements.txt"
7
+ VENV="venv"
8
+
9
+ set -x
10
+
11
+ if [ -z "$GITHUB_ACTIONS" ]; then
12
+ "$PYTHON" -m venv "$VENV"
13
+ PIP="$VENV/bin/pip"
14
+ else
15
+ PIP="pip"
16
+ fi
17
+
18
+ "$PIP" install -U pip
19
+ "$PIP" install -r "$REQUIREMENTS"
@@ -0,0 +1,10 @@
1
+ #!/bin/sh -e
2
+
3
+ export PREFIX=""
4
+ if [ -d 'venv' ] ; then
5
+ export PREFIX="venv/bin/"
6
+ fi
7
+
8
+ set -x
9
+
10
+ ${PREFIX}pytest "$@"
@@ -0,0 +1,15 @@
1
+ from .__version__ import __title__, __version__
2
+ from .mkdocs import get_current_page, get_site_index, Page, Static, SiteIndex, MkDocs, cli
3
+
4
+
5
+ __all__ = [
6
+ '__title__',
7
+ '__version__',
8
+ 'get_current_page',
9
+ 'get_site_index',
10
+ 'Page',
11
+ 'Static',
12
+ 'SiteIndex',
13
+ 'MkDocs',
14
+ 'cli',
15
+ ]
@@ -0,0 +1,2 @@
1
+ __title__ = "mkdocs"
2
+ __version__ = "2.0.dev1"
@@ -0,0 +1,17 @@
1
+ <html>
2
+ <head>
3
+ <meta charset="utf-8">
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
5
+ <title>...</title>
6
+ {% with favicon='📘' %}{% include 'favicon.html' %}{% endwith %}
7
+ <style>
8
+ {% include 'style.css' %}
9
+ {% include 'highlight.css' %}
10
+ </style>
11
+ </head>
12
+ <body>
13
+ <main>
14
+ {{ html }}
15
+ </main>
16
+ </body>
17
+ </html>
@@ -0,0 +1 @@
1
+ <link rel="icon" href="data:image/svg+xml,&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; viewBox=&quot;0 0 100 100&quot;&gt;&lt;text y=&quot;.9em&quot; font-size=&quot;90&quot;&gt;{{ favicon }}&lt;/text&gt;&lt;/svg&gt;">
@@ -0,0 +1,86 @@
1
+ pre { line-height: 125%; }
2
+ td.linenos .normal { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
3
+ span.linenos { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
4
+ td.linenos .special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
5
+ span.linenos.special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
6
+ .codehilite .hll { background-color: #6e7681 }
7
+ .codehilite { background: #0d1117; color: #E6EDF3 }
8
+ .codehilite .c { color: #8B949E; font-style: italic } /* Comment */
9
+ .codehilite .err { color: #F85149 } /* Error */
10
+ .codehilite .esc { color: #E6EDF3 } /* Escape */
11
+ .codehilite .g { color: #E6EDF3 } /* Generic */
12
+ .codehilite .k { color: #FF7B72 } /* Keyword */
13
+ .codehilite .l { color: #A5D6FF } /* Literal */
14
+ .codehilite .n { color: #E6EDF3 } /* Name */
15
+ .codehilite .o { color: #FF7B72; font-weight: bold } /* Operator */
16
+ .codehilite .x { color: #E6EDF3 } /* Other */
17
+ .codehilite .p { color: #E6EDF3 } /* Punctuation */
18
+ .codehilite .ch { color: #8B949E; font-style: italic } /* Comment.Hashbang */
19
+ .codehilite .cm { color: #8B949E; font-style: italic } /* Comment.Multiline */
20
+ .codehilite .cp { color: #8B949E; font-weight: bold; font-style: italic } /* Comment.Preproc */
21
+ .codehilite .cpf { color: #8B949E; font-style: italic } /* Comment.PreprocFile */
22
+ .codehilite .c1 { color: #8B949E; font-style: italic } /* Comment.Single */
23
+ .codehilite .cs { color: #8B949E; font-weight: bold; font-style: italic } /* Comment.Special */
24
+ .codehilite .gd { color: #FFA198; background-color: #490202 } /* Generic.Deleted */
25
+ .codehilite .ge { color: #E6EDF3; font-style: italic } /* Generic.Emph */
26
+ .codehilite .ges { color: #E6EDF3; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
27
+ .codehilite .gr { color: #FFA198 } /* Generic.Error */
28
+ .codehilite .gh { color: #79C0FF; font-weight: bold } /* Generic.Heading */
29
+ .codehilite .gi { color: #56D364; background-color: #0F5323 } /* Generic.Inserted */
30
+ .codehilite .go { color: #8B949E } /* Generic.Output */
31
+ .codehilite .gp { color: #8B949E } /* Generic.Prompt */
32
+ .codehilite .gs { color: #E6EDF3; font-weight: bold } /* Generic.Strong */
33
+ .codehilite .gu { color: #79C0FF } /* Generic.Subheading */
34
+ .codehilite .gt { color: #FF7B72 } /* Generic.Traceback */
35
+ .codehilite .g-Underline { color: #E6EDF3; text-decoration: underline } /* Generic.Underline */
36
+ .codehilite .kc { color: #79C0FF } /* Keyword.Constant */
37
+ .codehilite .kd { color: #FF7B72 } /* Keyword.Declaration */
38
+ .codehilite .kn { color: #FF7B72 } /* Keyword.Namespace */
39
+ .codehilite .kp { color: #79C0FF } /* Keyword.Pseudo */
40
+ .codehilite .kr { color: #FF7B72 } /* Keyword.Reserved */
41
+ .codehilite .kt { color: #FF7B72 } /* Keyword.Type */
42
+ .codehilite .ld { color: #79C0FF } /* Literal.Date */
43
+ .codehilite .m { color: #A5D6FF } /* Literal.Number */
44
+ .codehilite .s { color: #A5D6FF } /* Literal.String */
45
+ .codehilite .na { color: #E6EDF3 } /* Name.Attribute */
46
+ .codehilite .nb { color: #E6EDF3 } /* Name.Builtin */
47
+ .codehilite .nc { color: #F0883E; font-weight: bold } /* Name.Class */
48
+ .codehilite .no { color: #79C0FF; font-weight: bold } /* Name.Constant */
49
+ .codehilite .nd { color: #D2A8FF; font-weight: bold } /* Name.Decorator */
50
+ .codehilite .ni { color: #FFA657 } /* Name.Entity */
51
+ .codehilite .ne { color: #F0883E; font-weight: bold } /* Name.Exception */
52
+ .codehilite .nf { color: #D2A8FF; font-weight: bold } /* Name.Function */
53
+ .codehilite .nl { color: #79C0FF; font-weight: bold } /* Name.Label */
54
+ .codehilite .nn { color: #FF7B72 } /* Name.Namespace */
55
+ .codehilite .nx { color: #E6EDF3 } /* Name.Other */
56
+ .codehilite .py { color: #79C0FF } /* Name.Property */
57
+ .codehilite .nt { color: #7EE787 } /* Name.Tag */
58
+ .codehilite .nv { color: #79C0FF } /* Name.Variable */
59
+ .codehilite .ow { color: #FF7B72; font-weight: bold } /* Operator.Word */
60
+ .codehilite .pm { color: #E6EDF3 } /* Punctuation.Marker */
61
+ .codehilite .w { color: #6E7681 } /* Text.Whitespace */
62
+ .codehilite .mb { color: #A5D6FF } /* Literal.Number.Bin */
63
+ .codehilite .mf { color: #A5D6FF } /* Literal.Number.Float */
64
+ .codehilite .mh { color: #A5D6FF } /* Literal.Number.Hex */
65
+ .codehilite .mi { color: #A5D6FF } /* Literal.Number.Integer */
66
+ .codehilite .mo { color: #A5D6FF } /* Literal.Number.Oct */
67
+ .codehilite .sa { color: #79C0FF } /* Literal.String.Affix */
68
+ .codehilite .sb { color: #A5D6FF } /* Literal.String.Backtick */
69
+ .codehilite .sc { color: #A5D6FF } /* Literal.String.Char */
70
+ .codehilite .dl { color: #79C0FF } /* Literal.String.Delimiter */
71
+ .codehilite .sd { color: #A5D6FF } /* Literal.String.Doc */
72
+ .codehilite .s2 { color: #A5D6FF } /* Literal.String.Double */
73
+ .codehilite .se { color: #79C0FF } /* Literal.String.Escape */
74
+ .codehilite .sh { color: #79C0FF } /* Literal.String.Heredoc */
75
+ .codehilite .si { color: #A5D6FF } /* Literal.String.Interpol */
76
+ .codehilite .sx { color: #A5D6FF } /* Literal.String.Other */
77
+ .codehilite .sr { color: #79C0FF } /* Literal.String.Regex */
78
+ .codehilite .s1 { color: #A5D6FF } /* Literal.String.Single */
79
+ .codehilite .ss { color: #A5D6FF } /* Literal.String.Symbol */
80
+ .codehilite .bp { color: #E6EDF3 } /* Name.Builtin.Pseudo */
81
+ .codehilite .fm { color: #D2A8FF; font-weight: bold } /* Name.Function.Magic */
82
+ .codehilite .vc { color: #79C0FF } /* Name.Variable.Class */
83
+ .codehilite .vg { color: #79C0FF } /* Name.Variable.Global */
84
+ .codehilite .vi { color: #79C0FF } /* Name.Variable.Instance */
85
+ .codehilite .vm { color: #79C0FF } /* Name.Variable.Magic */
86
+ .codehilite .il { color: #A5D6FF } /* Literal.Number.Integer.Long */
@@ -0,0 +1,148 @@
1
+ /* Color scheme */
2
+
3
+ :root {
4
+ --fg-color: #f0f6fc;
5
+ --muted-fg-color: #9198a1;
6
+ --neutral-color: #3d444d;
7
+ --bg-color: #151b23;
8
+
9
+ --link-color: #4493f8;
10
+ --code-bg-color: #0d1117;
11
+
12
+ --accent-note: #0969da;
13
+ --accent-tip: #1a7f37;
14
+ --accent-important:#8250df;
15
+ --accent-warning: #9a6700;
16
+ --accent-caution: #d1242f;
17
+ }
18
+
19
+ /* Basic reset */
20
+
21
+ * {
22
+ margin: 0;
23
+ padding: 0;
24
+ box-sizing: border-box;
25
+ font-weight: 300;
26
+ }
27
+
28
+ /* Layout... */
29
+
30
+ main {
31
+ margin-left: 20%;
32
+ width: 60%;
33
+ padding: 1rem;
34
+ }
35
+
36
+ @media (max-width: 1000px) {
37
+ main {
38
+ padding: 1.5rem 1rem;
39
+ width: 75%;
40
+ margin-left: 25%;
41
+ }
42
+ }
43
+
44
+ @media (max-width: 800px) {
45
+ main {
46
+ padding: 1.5rem 1rem;
47
+ width: 100%;
48
+ margin-left: 0;
49
+ }
50
+ }
51
+
52
+ /* Typography & spacing */
53
+
54
+ html {
55
+ scroll-behavior: smooth;
56
+ }
57
+
58
+ body {
59
+ line-height: 1.6;
60
+ color: var(--fg-color);
61
+ background-color: var(--bg-color);
62
+ font-family: Helvetica, sans-serif;
63
+ }
64
+
65
+ h1, h2, h3, h4, h5 {
66
+ margin-top: 1.5rem;
67
+ margin-bottom: 1.5rem;
68
+ line-height: 1.3;
69
+ }
70
+
71
+ h1 {
72
+ border-bottom: 1px solid var(--neutral-color);
73
+ }
74
+ h2 {
75
+ border-bottom: 1px solid var(--neutral-color);
76
+ }
77
+
78
+ p {
79
+ margin: 1rem 0;
80
+ }
81
+
82
+ strong {
83
+ font-weight: 600;
84
+ }
85
+
86
+ ul, ol {
87
+ padding-left: 2rem;
88
+ }
89
+
90
+ li {
91
+ margin: 0.5rem 0;
92
+ }
93
+
94
+ hr {
95
+ margin-top: 1rem;
96
+ margin-bottom: 1rem;
97
+ border: none;
98
+ border-top: 4px solid;
99
+ color: var(--neutral-color);
100
+ }
101
+
102
+ blockquote {
103
+ border-left: 0.25rem solid var(--neutral-color);
104
+ padding: 0 1rem;
105
+ color: var(--muted-fg-color);
106
+ }
107
+
108
+ pre {
109
+ padding: 1rem;
110
+ overflow-x: scroll;
111
+ }
112
+
113
+ img {
114
+ max-width: 100%
115
+ }
116
+
117
+ a {
118
+ color: var(--link-color);
119
+ text-decoration: none;
120
+ }
121
+
122
+ a:hover {
123
+ text-decoration: underline;
124
+ }
125
+
126
+ /* Tables */
127
+
128
+ table {
129
+ border-collapse: collapse;
130
+ }
131
+
132
+ th, td {
133
+ padding: 6px 13px;
134
+ border: 1px solid var(--neutral-color);
135
+ }
136
+
137
+ /* Header anchor links */
138
+
139
+ a.toclink {
140
+ color: inherit;
141
+ text-decoration: none;
142
+ }
143
+
144
+ a.toclink:hover::after {
145
+ content: "#";
146
+ margin: 0 0.8rem;
147
+ color: var(--neutral-color);
148
+ }
@@ -0,0 +1,59 @@
1
+ import markdown
2
+ import mkdocs
3
+ import os
4
+ import posixpath
5
+ import httpx
6
+
7
+
8
+ class URLProcessor(markdown.treeprocessors.Treeprocessor):
9
+ def run(self, root):
10
+ page = mkdocs.get_current_page()
11
+ site_index = mkdocs.get_site_index()
12
+ key = ''
13
+ link = ''
14
+
15
+ for el in root.iter():
16
+ # We want to rewrite image and links.
17
+ if el.tag == 'a':
18
+ key = 'href'
19
+ link = el.get(key)
20
+ elif el.tag == 'img':
21
+ key = 'src'
22
+ link = el.get(key)
23
+ else:
24
+ key = ''
25
+ link = ''
26
+
27
+ if link:
28
+ el.set(key, link)
29
+ url = httpx.URL(link)
30
+ # We want to rewrite relative links... '/page'
31
+ # We don't want to rewrite external links. 'https://elsewhere.com/here'
32
+ # We don't want to rewrite anchor links. '#section'
33
+ if url.is_relative_url and url._uri_reference.path:
34
+ path_from = page.path
35
+ path_to = os.path.normpath(path_from.parent.joinpath(url.path))
36
+
37
+ target = site_index.lookup.get(path_to)
38
+ if target is None:
39
+ continue # Broken link!
40
+
41
+ url_from = page.url
42
+ url_to = target.url
43
+ rewrite = posixpath.relpath(url_to, url_from)
44
+ if url_to.endswith('/') and rewrite != '.':
45
+ rewrite += '/'
46
+ if url.query:
47
+ rewrite += f'?{url.query}'
48
+ if url.fragment:
49
+ rewrite += f'#{url.fragment}'
50
+ el.set(key, rewrite)
51
+
52
+
53
+ class RelativeURLs(markdown.extensions.Extension):
54
+ def extendMarkdown(self, md):
55
+ md.treeprocessors.register(URLProcessor(md), 'relative_urls', 15)
56
+
57
+
58
+ def makeExtension(**kwargs):
59
+ return RelativeURLs(**kwargs)
@@ -0,0 +1,38 @@
1
+ import markdown.inlinepatterns
2
+ import xml.etree.ElementTree as etree
3
+
4
+
5
+ codes = {
6
+ '+1': '👍🏼',
7
+ '-1': '👎',
8
+ 'smile': '😀',
9
+ 'heart': '❤️',
10
+ 'tada': '🎉',
11
+ 'fire': '🔥',
12
+ 'rocket': '🚀',
13
+ 'bug': '🐛',
14
+ 'thinking': '🤔',
15
+ 'eyes': '👀',
16
+ 'shipit': '🚢',
17
+ }
18
+
19
+
20
+ class ShortCodes(markdown.inlinepatterns.InlineProcessor):
21
+ def handleMatch(self, m, data):
22
+ code = m.group(1)
23
+ emoji = codes.get(code)
24
+ if emoji is None:
25
+ return None, None, None
26
+ el = etree.Element('span')
27
+ el.text = emoji
28
+ return el, m.start(0), m.end(0)
29
+
30
+ class ShortCodesExtension(markdown.extensions.Extension):
31
+ def extendMarkdown(self, md):
32
+ pattern = r':([a-z]{3,10}|\+1|\-1):'
33
+ processor = ShortCodes(pattern, md)
34
+ md.inlinePatterns.register(processor, 'short_codes', 175)
35
+
36
+
37
+ def makeExtension(**kwargs):
38
+ return ShortCodesExtension(**kwargs)
@@ -0,0 +1,19 @@
1
+ import markdown.inlinepatterns
2
+ import xml.etree.ElementTree as etree
3
+
4
+
5
+ class StrikeThru(markdown.inlinepatterns.InlineProcessor):
6
+ def handleMatch(self, m, data):
7
+ el = etree.Element('del')
8
+ el.text = m.group(1)
9
+ return el, m.start(0), m.end(0)
10
+
11
+ class StrikeThruExtension(markdown.extensions.Extension):
12
+ def extendMarkdown(self, md):
13
+ pattern = r'~~([^~]+)~~'
14
+ processor = StrikeThru(pattern, md)
15
+ md.inlinePatterns.register(processor, 'strike_thru', 175)
16
+
17
+
18
+ def makeExtension(**kwargs):
19
+ return StrikeThruExtension(**kwargs)