mirror of
https://github.com/andatoshiki/toshiki-notebook.git
synced 2026-06-06 09:16:45 +00:00
158 lines
74 KiB
HTML
158 lines
74 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en-US" dir="ltr">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>Includes | Toshiki's Note</title>
|
||
<meta name="description" content="Include re-usable TypeScript blocks in your code examples.">
|
||
<link rel="preload stylesheet" href="/assets/style.1276ae12.css" as="style">
|
||
<script type="module" src="/assets/app.da2b9cf1.js"></script>
|
||
<link rel="preload" href="/assets/inter-roman-latin.2ed14f66.woff2" as="font" type="font/woff2" crossorigin="">
|
||
<link rel="modulepreload" href="/assets/chunks/framework.ade46834.js">
|
||
<link rel="modulepreload" href="/assets/chunks/theme.2274efad.js">
|
||
<link rel="modulepreload" href="/assets/application_vitepress-plugin-shiki-twoslash_api_includes.md.0ac5e941.lean.js">
|
||
<link rel="stylesheet" href="https://cdnjs.toshiki.dev/ajax/libs/KaTeX/0.16.0/katex.min.css">
|
||
<link rel="stylesheet" href="https://cdnjs.toshiki.dev/ajax/libs/font-awesome/6.3.0/css/all.min.css">
|
||
<link rel="icon" href="/favicon.ico">
|
||
<meta name="author" content="Anda Toshiki">
|
||
<meta name="keywords" content="Toshiki, Anda Toshiki, andatoshiki, GitHub, GitHub action, Vitepress, Vite, Notebook, Knowledge base, Programming, Programming Notes, Academic, Personal, Notebook, Productivity, Journal, Note-taking, Markdown, Notepad, Organization, Tutorial">
|
||
<meta name="google-site-verification" content="lm7PNJiYSPEx1dMast1Xptc0Vk0cU06o-daZSsIgr2I">
|
||
<meta name="HandheldFriendly" content="True">
|
||
<meta name="MobileOptimized" content="320">
|
||
<meta name="theme-color" content="#3c8772">
|
||
<meta property="og:type" content="website">
|
||
<meta property="og:locale" content="en-US">
|
||
<meta property="og:title" content="Toshiki's Note">
|
||
<meta property="og:description" content="Toshiki's web notebook served via Vitepress!">
|
||
<meta property="og:site" content="https://note.toshiki.dev">
|
||
<meta property="og:site_name" content="Toshiki's Note">
|
||
<meta property="og:image" content="https://note.toshiki.dev/og-cover.png">
|
||
<script>function siteruntime(){window.setTimeout("siteruntime()",1e3),X=new Date("8/24/2021 10:28:00"),Y=new Date,T=Y.getTime()-X.getTime(),M=24*60*60*1e3,a=T/M,A=Math.floor(a),b=(a-A)*24,B=Math.floor(b),c=(b-B)*60,C=Math.floor((b-B)*60),D=Math.floor((c-C)*60),siteruntime_span.innerHTML="This site has been running for: "+A+" day(s) "+B+" hour(s) "+C+" minute(s) "+D+" second(s)"}siteruntime();</script>
|
||
<script async="true" defer="true" data-website-id="86de8554-d4c9-4f2b-b62a-068b71241048" src="https://umami.toshiki.dev/umami.js"></script>
|
||
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
|
||
</head>
|
||
<body>
|
||
<div id="app"><div class="Layout" data-v-83f63849><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0eca8f1e></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0eca8f1e> Skip to content </a><!--]--><!----><header class="VPNav" data-v-83f63849 data-v-999a1a39><div class="VPNavBar has-sidebar" data-v-999a1a39 data-v-e99cf6bd><div class="container" data-v-e99cf6bd><div class="title" data-v-e99cf6bd><div class="VPNavBarTitle has-sidebar" data-v-e99cf6bd data-v-a8886b70><a class="title" href="/" data-v-a8886b70><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logos/logo.png" alt data-v-164d1caf><!--]--><!--[-->Toshiki's Note<!--]--><!--[--><!--]--></a></div></div><div class="content" data-v-e99cf6bd><div class="curtain" data-v-e99cf6bd></div><div class="content-body" data-v-e99cf6bd><!--[--><!--]--><div class="VPNavBarSearch search" style="--vp-meta-key:'Meta';" data-v-e99cf6bd><!--[--><div id="docsearch"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg class="DocSearch-Search-Icon" width="20" height="20" viewBox="0 0 20 20" aria-label="search icon"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-e99cf6bd data-v-1817056a><span id="main-nav-aria-label" class="visually-hidden" data-v-1817056a>Main Navigation</span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/development/" tabindex="0" data-v-1817056a data-v-f28b94cc data-v-075865b7><!--[-->Development<!--]--><!----></a><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-1817056a data-v-4c03a652><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-4c03a652><span class="text" data-v-4c03a652><!----> Academic <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-4c03a652><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-4c03a652><div class="VPMenu" data-v-4c03a652 data-v-da053c30><div class="items" data-v-da053c30><!--[--><!--[--><div class="VPMenuGroup" data-v-da053c30 data-v-2e982fbb><p class="title" data-v-2e982fbb>K-12</p><!--[--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/academic/chemistry/index" data-v-6f715184 data-v-075865b7><!--[-->Chemistry<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/discrete-math/index" data-v-6f715184 data-v-075865b7><!--[-->Discrete Math.<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/academic/literature/index" data-v-6f715184 data-v-075865b7><!--[-->Literature<!--]--><!----></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuGroup" data-v-da053c30 data-v-2e982fbb><p class="title" data-v-2e982fbb>Tools</p><!--[--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/academic/physics/ipho-formulas-jpn/1" data-v-6f715184 data-v-075865b7><!--[-->Formulas for IPhO JPN.<!--]--><!----></a></div><!--]--><!--]--></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><span class="VPLink" data-v-6f715184 data-v-075865b7><!--[--><!--]--><!----></span></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-1817056a data-v-4c03a652><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-4c03a652><span class="text" data-v-4c03a652><!----> Application <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-4c03a652><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-4c03a652><div class="VPMenu" data-v-4c03a652 data-v-da053c30><div class="items" data-v-da053c30><!--[--><!--[--><div class="VPMenuGroup" data-v-da053c30 data-v-2e982fbb><p class="title" data-v-2e982fbb>Personal projects</p><!--[--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/application/markdown-it-katex/how-to-use" data-v-6f715184 data-v-075865b7><!--[-->markdown-it-katex<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-2e982fbb data-v-6f715184><a class="VPLink link" href="/application/vitepress-plugin-shiki-twoslash/index" data-v-6f715184 data-v-075865b7><!--[-->vitepress-plugin-shiki-twoslash<!--]--><!----></a></div><!--]--><!--]--></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-1817056a data-v-4c03a652><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-4c03a652><span class="text" data-v-4c03a652><!----> Save <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-4c03a652><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-4c03a652><div class="VPMenu" data-v-4c03a652 data-v-da053c30><div class="items" data-v-da053c30><!--[--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><a class="VPLink link" href="/save/reading/index" data-v-6f715184 data-v-075865b7><!--[-->Reading<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-da053c30 data-v-6f715184><a class="VPLink link" href="/academic/vocabulary/index" data-v-6f715184 data-v-075865b7><!--[-->Vocabulary<!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-e99cf6bd data-v-72c0c02a><label title="toggle dark mode" data-v-72c0c02a data-v-cb74fac6><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-checked="false" data-v-cb74fac6 data-v-9f7dbbcf><span class="check" data-v-9f7dbbcf><span class="icon" data-v-9f7dbbcf><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-cb74fac6><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-cb74fac6><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></label></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-e99cf6bd data-v-268ff66d data-v-65dbf981><!--[--><a class="VPSocialLink" href="https://github.com/andatoshiki" aria-label="github" target="_blank" rel="noopener" data-v-65dbf981 data-v-2d45784b><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><a class="VPSocialLink" href="https://twitter.com/andatoshiki" aria-label="twitter" target="_blank" rel="noopener" data-v-65dbf981 data-v-2d45784b><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitter</title><path d="M23.953 4.57a10 10 0 01-2.825.775 4.958 4.958 0 002.163-2.723c-.951.555-2.005.959-3.127 1.184a4.92 4.92 0 00-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 00-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 01-2.228-.616v.06a4.923 4.923 0 003.946 4.827 4.996 4.996 0 01-2.212.085 4.936 4.936 0 004.604 3.417 9.867 9.867 0 01-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 007.557 2.209c9.053 0 13.998-7.496 13.998-13.985 0-.21 0-.42-.015-.63A9.935 9.935 0 0024 4.59z"/></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-e99cf6bd data-v-67546bb2 data-v-4c03a652><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-4c03a652><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="icon" data-v-4c03a652><circle cx="12" cy="12" r="2"></circle><circle cx="19" cy="12" r="2"></circle><circle cx="5" cy="12" r="2"></circle></svg></button><div class="menu" data-v-4c03a652><div class="VPMenu" data-v-4c03a652 data-v-da053c30><!----><!--[--><!--[--><!----><div class="group" data-v-67546bb2><div class="item appearance" data-v-67546bb2><p class="label" data-v-67546bb2>Appearance</p><div class="appearance-action" data-v-67546bb2><label title="toggle dark mode" data-v-67546bb2 data-v-cb74fac6><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-checked="false" data-v-cb74fac6 data-v-9f7dbbcf><span class="check" data-v-9f7dbbcf><span class="icon" data-v-9f7dbbcf><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-cb74fac6><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-cb74fac6><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></label></div></div></div><div class="group" data-v-67546bb2><div class="item social-links" data-v-67546bb2><div class="VPSocialLinks social-links-list" data-v-67546bb2 data-v-65dbf981><!--[--><a class="VPSocialLink" href="https://github.com/andatoshiki" aria-label="github" target="_blank" rel="noopener" data-v-65dbf981 data-v-2d45784b><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><a class="VPSocialLink" href="https://twitter.com/andatoshiki" aria-label="twitter" target="_blank" rel="noopener" data-v-65dbf981 data-v-2d45784b><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitter</title><path d="M23.953 4.57a10 10 0 01-2.825.775 4.958 4.958 0 002.163-2.723c-.951.555-2.005.959-3.127 1.184a4.92 4.92 0 00-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 00-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 01-2.228-.616v.06a4.923 4.923 0 003.946 4.827 4.996 4.996 0 01-2.212.085 4.936 4.936 0 004.604 3.417 9.867 9.867 0 01-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 007.557 2.209c9.053 0 13.998-7.496 13.998-13.985 0-.21 0-.42-.015-.63A9.935 9.935 0 0024 4.59z"/></svg></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-e99cf6bd data-v-2314de5a><span class="container" data-v-2314de5a><span class="top" data-v-2314de5a></span><span class="middle" data-v-2314de5a></span><span class="bottom" data-v-2314de5a></span></span></button></div></div></div></div><!----></header><div class="VPLocalNav" data-v-83f63849 data-v-fa4746c0><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-fa4746c0><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="menu-icon" data-v-fa4746c0><path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"></path><path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"></path><path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"></path><path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"></path></svg><span class="menu-text" data-v-fa4746c0>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-fa4746c0 data-v-f8dbb575><button data-v-f8dbb575>Return to top</button><!----></div></div><aside class="VPSidebar" data-v-83f63849 data-v-0e47c5d5><div class="curtain" data-v-0e47c5d5></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-0e47c5d5><span class="visually-hidden" id="sidebar-aria-label" data-v-0e47c5d5> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-0e47c5d5><section class="VPSidebarItem level-0 collapsible" data-v-0e47c5d5 data-v-0cc45b6b><div class="item" role="button" tabindex="0" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><h2 class="text" data-v-0cc45b6b>Guide</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-0cc45b6b><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-0cc45b6b><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-0cc45b6b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Getting Started</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/guide/markdown-extensions" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Markdown Extensions</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/guide/custom-theme" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Using a Custom Theme</p><!--]--><!----></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-0e47c5d5><section class="VPSidebarItem level-0 collapsible has-active" data-v-0e47c5d5 data-v-0cc45b6b><div class="item" role="button" tabindex="0" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><h2 class="text" data-v-0cc45b6b>Features</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-0cc45b6b><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-0cc45b6b><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-0cc45b6b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/queries" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Queries</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/errors" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Errors</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/emit" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Emit</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/cutting" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Cutting</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/multi-file" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Multi-file</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/types" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>@types</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/annotations" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Meta Annotations</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/logging" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Logging</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link is-active has-active" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/api/includes" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Includes</p><!--]--><!----></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-0e47c5d5><section class="VPSidebarItem level-0 collapsible" data-v-0e47c5d5 data-v-0cc45b6b><div class="item" role="button" tabindex="0" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><h2 class="text" data-v-0cc45b6b>Config</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-0cc45b6b><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="caret-icon" data-v-0cc45b6b><path d="M9,19c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l5.3-5.3L8.3,6.7c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l6,6c0.4,0.4,0.4,1,0,1.4l-6,6C9.5,18.9,9.3,19,9,19z"></path></svg></div></div><div class="items" data-v-0cc45b6b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/config/reference" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Reference</p><!--]--><!----></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-0cc45b6b data-v-0cc45b6b><div class="item" data-v-0cc45b6b><div class="indicator" data-v-0cc45b6b></div><a class="VPLink link link" href="/application/vitepress-plugin-shiki-twoslash/config/flags" data-v-0cc45b6b data-v-075865b7><!--[--><p class="text" data-v-0cc45b6b>Compiler Flags</p><!--]--><!----></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-83f63849 data-v-bb292142><div class="VPDoc has-sidebar has-aside" data-v-bb292142 data-v-6c4a7022><!--[--><!--]--><div class="container" data-v-6c4a7022><div class="aside" data-v-6c4a7022><div class="aside-curtain" data-v-6c4a7022></div><div class="aside-container" data-v-6c4a7022><div class="aside-content" data-v-6c4a7022><div class="VPDocAside" data-v-6c4a7022 data-v-f77a9b1a><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" data-v-f77a9b1a data-v-ea95c6a2><div class="content" data-v-ea95c6a2><div class="outline-marker" data-v-ea95c6a2></div><div class="outline-title" data-v-ea95c6a2>TOC</div><nav aria-labelledby="doc-outline-aria-label" data-v-ea95c6a2><span class="visually-hidden" id="doc-outline-aria-label" data-v-ea95c6a2> Table of Contents for current page </span><ul class="root" data-v-ea95c6a2 data-v-74f66e6c><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-f77a9b1a></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--[--><!--[--><!--[--><div class="VPDocAsideSponsors"><div class="VPSponsors vp-sponsor aside"><!--[--><section class="vp-sponsor-section"><!----><div class="VPSponsorsGrid vp-sponsor-grid medium"><!--[--><div class="vp-sponsor-grid-item"><a class="vp-sponsor-grid-link" target="_blank" rel="sponsored noopener"><article class="vp-sponsor-grid-box"><h4 class="visually-hidden"></h4><img class="vp-sponsor-grid-image" src="https://jsd.toshiki.dev/gh/andatoshiki/toshiki-notebook@master/assets/logo/sponsor/telegram.png"></article></a></div><!--]--></div></section><!--]--></div></div><!--]--><!--]--><!--]--><!--]--></div></div></div></div><div class="content" data-v-6c4a7022><div class="content-container" data-v-6c4a7022><!--[--><!--]--><!----><main class="main" data-v-6c4a7022><div style="position:relative;" class="vp-doc _application_vitepress-plugin-shiki-twoslash_api_includes" data-v-6c4a7022><div><h1 id="includes" tabindex="-1">Includes <a class="header-anchor" href="#includes" aria-label="Permalink to "Includes""></a></h1><p>As your documentation grows, you may need a way of re-using code blocks to prevent code duplication. Shiki Twoslash provides a simple includes system.</p><h2 id="defining-a-re-usable-block" tabindex="-1">Defining a re-usable block <a class="header-anchor" href="#defining-a-re-usable-block" aria-label="Permalink to "Defining a re-usable block""></a></h2><p>Re-usable code blocks are defined by the <code>twoslash</code> language, followed by the <code>include</code> keyword and the reference name of your choice.</p><div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">```twoslash include myBlock</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">```twoslash include myBlock</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br></div></div><h3 id="incremental-steps" tabindex="-1">Incremental steps <a class="header-anchor" href="#incremental-steps" aria-label="Permalink to "Incremental steps""></a></h3><p>Shiki Twoslash also provide the ability to define incremental steps through the definition of re-usable blocks. This means whenever a new step is delimited down the code, it will also include previous steps. These are <strong>not groups</strong>.</p><ul><li>Incremental steps are delimited by <code>// - [name of the step]</code></li><li>They are named <strong>at the end</strong> of the actual code</li></ul><div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#839496;">// - base</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - base</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br></div></div><h2 id="including-a-whole-block" tabindex="-1">Including a whole block <a class="header-anchor" href="#including-a-whole-block" aria-label="Permalink to "Including a whole block""></a></h2><p>To include a re-usable block, add <code>// @include: [block name]</code> in your code block.</p><div class="language-twoslash vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">twoslash</span><pre></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="vp-code-group vp-adaptive-theme"><div class="tabs"><input type="radio" name="group-S0Z_J" id="tab-Dq_oTM6" checked="checked"><label for="tab-Dq_oTM6">output</label><input type="radio" name="group-S0Z_J" id="tab-9sElkiK"><label for="tab-9sElkiK">markdown</label></div><div class="blocks"><div class="language-ts vp-adaptive-theme active line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">ts</span><pre class="shiki solarized-dark twoslash lsp" style="background-color:#002B36;color:#839496;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#93A1A1;">type</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> </span><span style="color:#859900;">string</span></div><div class="line"><span style="color:#93A1A1;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;"><data-lsp lsp="const a: string">a</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> </span><span style="color:#2AA198;">'string'</span></div></code></div></pre><pre class="shiki solarized-light twoslash lsp" style="background-color:#FDF6E3;color:#657B83;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#586E75;">type</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> </span><span style="color:#859900;">string</span></div><div class="line"><span style="color:#586E75;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;"><data-lsp lsp="const a: string">a</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> </span><span style="color:#2AA198;">'string'</span></div></code></div></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">```twoslash include myBlock</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#839496;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#586E75;font-style:italic;">// @include: myBlock</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-weight:bold;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;">a</span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;">SomeString</span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> </span><span style="color:#2AA198;">'string'</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">```twoslash include myBlock</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#657B83;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @include: myBlock</span></span>
|
||
<span class="line"><span style="color:#586E75;font-weight:bold;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">a</span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;">SomeString</span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> </span><span style="color:#2AA198;">'string'</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br></div></div></div></div><h2 id="including-a-block-step" tabindex="-1">Including a block step <a class="header-anchor" href="#including-a-block-step" aria-label="Permalink to "Including a block step""></a></h2><p>To include a re-usable block at a specific step, add <code>// @include: [block name]-[step name]</code> in your code block.</p><div class="language-twoslash vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">twoslash</span><pre></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="vp-code-group vp-adaptive-theme"><div class="tabs"><input type="radio" name="group-1_E2k" id="tab-RbxzpT_" checked="checked"><label for="tab-RbxzpT_">output</label><input type="radio" name="group-1_E2k" id="tab-OMCF1eX"><label for="tab-OMCF1eX">markdown</label></div><div class="blocks"><div class="language-ts vp-adaptive-theme active line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">ts</span><pre class="shiki solarized-dark twoslash lsp" style="background-color:#002B36;color:#839496;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#93A1A1;">type</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> </span><span style="color:#859900;">string</span></div><div class="line"><span style="color:#93A1A1;">type</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUser = {
|
||
name: string;
|
||
mail?: SomeUserMail | undefined;
|
||
}">SomeUser</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { <data-lsp lsp="(property) name: string">name</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#859900;">string</span><span style="color:#839496;">; <data-lsp lsp="(property) mail?: SomeUserMail | undefined">mail</data-lsp></span><span style="color:#859900;">?:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#839496;"> }</span></div><div class="line"><span style="color:#93A1A1;">type</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { <data-lsp lsp="(property) content: string">content</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#859900;">string</span><span style="color:#839496;">; <data-lsp lsp="(property) verified: boolean">verified</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#859900;">boolean</span><span style="color:#839496;"> }</span></div><div class="line"><span style="color:#93A1A1;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;"><data-lsp lsp="const mail: SomeUserMail">mail</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { <data-lsp lsp="(property) content: string">content</data-lsp>: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#839496;">, <data-lsp lsp="(property) verified: boolean">verified</data-lsp>: </span><span style="color:#B58900;">true</span><span style="color:#839496;"> }</span></div></code></div></pre><pre class="shiki solarized-light twoslash lsp" style="background-color:#FDF6E3;color:#657B83;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#586E75;">type</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeString = string">SomeString</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> </span><span style="color:#859900;">string</span></div><div class="line"><span style="color:#586E75;">type</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUser = {
|
||
name: string;
|
||
mail?: SomeUserMail | undefined;
|
||
}">SomeUser</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { <data-lsp lsp="(property) name: string">name</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#859900;">string</span><span style="color:#657B83;">; <data-lsp lsp="(property) mail?: SomeUserMail | undefined">mail</data-lsp></span><span style="color:#859900;">?:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#657B83;"> }</span></div><div class="line"><span style="color:#586E75;">type</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { <data-lsp lsp="(property) content: string">content</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#859900;">string</span><span style="color:#657B83;">; <data-lsp lsp="(property) verified: boolean">verified</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#859900;">boolean</span><span style="color:#657B83;"> }</span></div><div class="line"><span style="color:#586E75;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;"><data-lsp lsp="const mail: SomeUserMail">mail</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { <data-lsp lsp="(property) content: string">content</data-lsp>: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#657B83;">, <data-lsp lsp="(property) verified: boolean">verified</data-lsp>: </span><span style="color:#B58900;">true</span><span style="color:#657B83;"> }</span></div></code></div></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#839496;">// - base</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#839496;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#586E75;font-style:italic;">// @include: myBlockWithSteps-afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-weight:bold;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;">mail</span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;">SomeUserMail</span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { content: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#839496;">, verified: </span><span style="color:#B58900;">true</span><span style="color:#839496;"> }</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - base</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#657B83;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @include: myBlockWithSteps-afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#586E75;font-weight:bold;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">mail</span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;">SomeUserMail</span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { content: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#657B83;">, verified: </span><span style="color:#B58900;">true</span><span style="color:#657B83;"> }</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br></div></div></div></div><h2 id="hiding-re-used-code" tabindex="-1">Hiding re-used code <a class="header-anchor" href="#hiding-re-used-code" aria-label="Permalink to "Hiding re-used code""></a></h2><p>Re-using a lot of TypeScript code can easily bloat your documentation and obstruct the main point of your code block. You can hide re-used code to keep your code blocks clean and concise by <a href="./cutting">cutting</a> right after the <code>@include</code> statement.</p><div class="vp-code-group vp-adaptive-theme"><div class="tabs"><input type="radio" name="group-45iyS" id="tab-YpczgnD" checked="checked"><label for="tab-YpczgnD">output</label><input type="radio" name="group-45iyS" id="tab-fIHoaPb"><label for="tab-fIHoaPb">markdown</label></div><div class="blocks"><div class="language-ts vp-adaptive-theme active line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">ts</span><pre class="shiki solarized-dark twoslash lsp" style="background-color:#002B36;color:#839496;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#93A1A1;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;"><data-lsp lsp="const mail: SomeUserMail">mail</data-lsp></span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { <data-lsp lsp="(property) content: string">content</data-lsp>: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#839496;">, <data-lsp lsp="(property) verified: boolean">verified</data-lsp>: </span><span style="color:#B58900;">true</span><span style="color:#839496;"> }</span></div></code></div></pre><pre class="shiki solarized-light twoslash lsp" style="background-color:#FDF6E3;color:#657B83;" active="true"><div class="language-id">ts</div><div class="code-container"><code><div class="line"><span style="color:#586E75;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;"><data-lsp lsp="const mail: SomeUserMail">mail</data-lsp></span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;"><data-lsp lsp="type SomeUserMail = {
|
||
content: string;
|
||
verified: boolean;
|
||
}">SomeUserMail</data-lsp></span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { <data-lsp lsp="(property) content: string">content</data-lsp>: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#657B83;">, <data-lsp lsp="(property) verified: boolean">verified</data-lsp>: </span><span style="color:#B58900;">true</span><span style="color:#657B83;"> }</span></div></code></div></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><div class="language-md vp-adaptive-theme line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki solarized-dark vp-code-dark"><code><span class="line"><span style="color:#839496;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#839496;">// - base</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#839496;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#839496;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#586E75;font-style:italic;">// @include: myBlockWithSteps-afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#586E75;font-style:italic;">// ---cut---</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-weight:bold;">const</span><span style="color:#839496;"> </span><span style="color:#268BD2;">mail</span><span style="color:#859900;">:</span><span style="color:#839496;"> </span><span style="color:#CB4B16;">SomeUserMail</span><span style="color:#839496;"> </span><span style="color:#859900;">=</span><span style="color:#839496;"> { content: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#839496;">, verified: </span><span style="color:#B58900;">true</span><span style="color:#839496;"> }</span></span>
|
||
<span class="line"><span style="color:#839496;">```</span></span></code></pre><pre class="shiki solarized-light vp-code-light"><code><span class="line"><span style="color:#657B83;">```twoslash include myBlockWithSteps</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeString = string</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - base</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUser = { name: string; mail?: SomeUserMail }</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeUserMail = { content: string; verified: boolean }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">type SomeGroup = { name: string; members: SomeUser[] }</span></span>
|
||
<span class="line"><span style="color:#657B83;">// - afterGroupDefinitions</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="color:#657B83;">```ts twoslash</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-style:italic;">// @include: myBlockWithSteps-afterUserDefinitions</span></span>
|
||
<span class="line"><span style="color:#93A1A1;font-style:italic;">// ---cut---</span></span>
|
||
<span class="line"><span style="color:#586E75;font-weight:bold;">const</span><span style="color:#657B83;"> </span><span style="color:#268BD2;">mail</span><span style="color:#859900;">:</span><span style="color:#657B83;"> </span><span style="color:#CB4B16;">SomeUserMail</span><span style="color:#657B83;"> </span><span style="color:#859900;">=</span><span style="color:#657B83;"> { content: </span><span style="color:#2AA198;">'some-email'</span><span style="color:#657B83;">, verified: </span><span style="color:#B58900;">true</span><span style="color:#657B83;"> }</span></span>
|
||
<span class="line"><span style="color:#657B83;">```</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br></div></div></div></div></div></div></main><footer class="VPDocFooter" data-v-6c4a7022 data-v-b5edbda4><!--[--><!--[--><!--[--><!--[--><!----><!--]--><!--]--><!--]--><!--]--><div class="edit-info" data-v-b5edbda4><div class="edit-link" data-v-b5edbda4><a class="VPLink link edit-link-button" href="https://github.com/andatoshiki/toshiki-notebook/edit/master/docs/application/vitepress-plugin-shiki-twoslash/api/includes.md" target="_blank" rel="noreferrer" data-v-b5edbda4 data-v-075865b7><!--[--><svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="edit-link-icon" aria-label="edit icon" data-v-b5edbda4><path d="M18,23H4c-1.7,0-3-1.3-3-3V6c0-1.7,1.3-3,3-3h7c0.6,0,1,0.4,1,1s-0.4,1-1,1H4C3.4,5,3,5.4,3,6v14c0,0.6,0.4,1,1,1h14c0.6,0,1-0.4,1-1v-7c0-0.6,0.4-1,1-1s1,0.4,1,1v7C21,21.7,19.7,23,18,23z"></path><path d="M8,17c-0.3,0-0.5-0.1-0.7-0.3C7,16.5,6.9,16.1,7,15.8l1-4c0-0.2,0.1-0.3,0.3-0.5l9.5-9.5c1.2-1.2,3.2-1.2,4.4,0c1.2,1.2,1.2,3.2,0,4.4l-9.5,9.5c-0.1,0.1-0.3,0.2-0.5,0.3l-4,1C8.2,17,8.1,17,8,17zM9.9,12.5l-0.5,2.1l2.1-0.5l9.3-9.3c0.4-0.4,0.4-1.1,0-1.6c-0.4-0.4-1.2-0.4-1.6,0l0,0L9.9,12.5z M18.5,2.5L18.5,2.5L18.5,2.5z"></path></svg> Edit this page on GitHub<!--]--><!----></a></div><div class="last-updated" data-v-b5edbda4><p class="VPLastUpdated" data-v-b5edbda4 data-v-00fbdbd8>Last updated: <time datetime="2023-06-11T17:18:15.000Z" data-v-00fbdbd8></time></p></div></div><div class="prev-next" data-v-b5edbda4><div class="pager" data-v-b5edbda4><a class="pager-link prev" href="/application/vitepress-plugin-shiki-twoslash/api/logging" data-v-b5edbda4><span class="desc" data-v-b5edbda4>Previous page</span><span class="title" data-v-b5edbda4>Logging</span></a></div><div class="has-prev pager" data-v-b5edbda4><a class="pager-link next" href="/application/vitepress-plugin-shiki-twoslash/config/reference" data-v-b5edbda4><span class="desc" data-v-b5edbda4>Next page</span><span class="title" data-v-b5edbda4>Reference</span></a></div></div></footer><!--[--><!--[--><!--[--><div id="comment-container"></div><!--]--><!--]--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-83f63849 data-v-02da8605><div class="container" data-v-02da8605><p class="message" data-v-02da8605>Wrote with <i class="heart fa fa-heart fa-xs fa-beat"></i> and <i class="coffee fa fa-coffee fa-xs" aria-hidden="true"></i> by <a href="https://toshiki.dev">Anda Toshiki</a> at <code>root@andatoshiki:/~</code></p><p class="copyright" data-v-02da8605>Copyright © 2023-2023 <a href="https://github.com/andatoshiki">Anda Toshiki</a>, <a href="https://github.com/lolilab">LoliLab</a> and <a href="https://github.com/toshikidev">Toshiki Dev</a> present <br /><span id="siteruntime_span"></span></p></div></footer><!--[--><!--]--></div></div>
|
||
<script>__VP_HASH_MAP__ = JSON.parse("{\"academic_chemistry_index.md\":\"f020b96d\",\"academic_chemistry_problems_02-20.md\":\"060c3b23\",\"academic_chemistry_notes_12-5.md\":\"5c3d9071\",\"academic_literature_writing_methods-of-development.md\":\"ad371111\",\"academic_physics_index.md\":\"530a7b68\",\"academic_literature_index.md\":\"49910659\",\"academic_chemistry_problems_03-02-1.md\":\"4125e7ad\",\"academic_physics_ipho-formulas-jpn_2.md\":\"fcc3fea5\",\"academic_chemistry_problems_03-02-3.md\":\"feb61313\",\"academic_physics_ipho-formulas-jpn_11.md\":\"fc2c48f9\",\"academic_physics_ipho-formulas-jpn_12.md\":\"f8e64d72\",\"academic_chemistry_problems_03-02-2.md\":\"e9613358\",\"academic_physics_ipho-formulas-jpn_13.md\":\"75491b0a\",\"academic_physics_ipho-formulas-jpn_10.md\":\"5e8c38bd\",\"development_aws_scientific-computing.md\":\"ab4b9752\",\"development_aws_serverless.md\":\"7a4521ed\",\"development_aws_webserver.md\":\"ec6ae27f\",\"development_file-naming-convention.md\":\"f545f467\",\"development_rclone-for-r2.md\":\"a9987e16\",\"save_reading_index.md\":\"ee9d9a93\",\"save_reading_outliers_1.md\":\"7b8ed741\",\"roadmap.md\":\"343a17e2\",\"save_reading_outliers_2.md\":\"3a6013ed\",\"save_reading_outliers_3.md\":\"2c8c3a50\",\"save_reading_outliers_4.md\":\"a6b1b226\",\"academic_physics_ipho-formulas-jpn_4.md\":\"7071b447\",\"academic_physics_ipho-formulas-jpn_3.md\":\"6046af0c\",\"academic_physics_ipho-formulas-jpn_5.md\":\"c4384c31\",\"application_vitepress-plugin-shiki-twoslash_config_reference.md\":\"1018bfbe\",\"development_aws_acknowledgement.md\":\"27d20cbf\",\"development_aws_assignments.md\":\"717a8600\",\"development_aws_author.md\":\"933f3320\",\"development_aws_closing.md\":\"9c718413\",\"development_aws_license.md\":\"9d4f32d9\",\"academic_vocabulary_2023_02_2023-02-27.md\":\"e97c2d74\",\"application_vitepress-plugin-shiki-twoslash_guide_markdown-extensions.md\":\"7ae06950\",\"application_vitepress-plugin-shiki-twoslash_api_errors.md\":\"3217c5e8\",\"development_aws_readme.md\":\"c99f7788\",\"development_aws_cloud.md\":\"85eeab49\",\"application_vitepress-plugin-shiki-twoslash_api_queries.md\":\"2243417c\",\"application_vitepress-plugin-shiki-twoslash_guide_custom-theme.md\":\"c55d794e\",\"development_aws_introduction.md\":\"616665de\",\"application_vitepress-plugin-shiki-twoslash_api_cutting.md\":\"023ccce1\",\"development_aws_docker-system.md\":\"ffc7211f\",\"application_vitepress-plugin-shiki-twoslash_api_types.md\":\"f8a0b6da\",\"application_vitepress-plugin-shiki-twoslash_api_annotations.md\":\"0473a91a\",\"application_vitepress-plugin-shiki-twoslash_index.md\":\"d2435046\",\"application_vitepress-plugin-shiki-twoslash_config_flags.md\":\"2c5cad1f\",\"development_aws_appendix.md\":\"d015bba4\",\"academic_physics_ipho-formulas-jpn_6.md\":\"398eef08\",\"application_vitepress-plugin-shiki-twoslash_api_includes.md\":\"0ac5e941\",\"development_aws_handson-jupyter.md\":\"4da0a6ce\",\"development_aws_handson-qabot.md\":\"b961ba82\",\"index.md\":\"ea10ac53\",\"javascript_notes_1_1-1.md\":\"30d69ebd\",\"application_markdown-it-katex_how-to-use.md\":\"e68ea125\",\"development_aws_handson-serverless.md\":\"d2f1b782\",\"getting-started.md\":\"f1fed2b5\",\"javascript_notes_1_1-2.md\":\"b388afe0\",\"academic_vocabulary_index.md\":\"31157862\",\"development_aws_handson-ec2.md\":\"0363a6ee\",\"development_aws_aws-batch.md\":\"f7e4fca5\",\"development_aws_handson-bashoutter.md\":\"7902eef4\",\"academic_physics_ipho-formulas-jpn_1.md\":\"fba2b110\",\"application_vitepress-plugin-shiki-twoslash_api_multi-file.md\":\"7d885d05\",\"academic_physics_ipho-formulas-jpn_8.md\":\"7ea7e363\",\"jp_index.md\":\"77ea3fb5\",\"development_aws_aws-get-started.md\":\"fcd7917c\",\"application_vitepress-plugin-shiki-twoslash_api_emit.md\":\"6ce209a9\",\"application_vitepress-plugin-shiki-twoslash_api_logging.md\":\"bac16e07\",\"application_markdown-it-katex_tips.md\":\"749a0d06\",\"academic_physics_ipho-formulas-jpn_7.md\":\"383f303c\",\"academic_physics_ipho-formulas-jpn_9.md\":\"dc7e6fc8\",\"development_aws_main.md\":\"16f0889b\",\"application_markdown-it-katex_support-function.md\":\"adfbaf93\",\"application_markdown-it-katex_support-table.md\":\"e5447d11\"}")
|
||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Toshiki's Note\",\"description\":\"Toshiki's web notebook served via Vitepress!\",\"base\":\"/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Development\",\"link\":\"/development/\"},{\"text\":\"Academic\",\"items\":[{\"text\":\"K-12\",\"items\":[{\"text\":\"Chemistry\",\"link\":\"/academic/chemistry/index\",\"activeMatch\":\"/academic/chemistry/\"},{\"text\":\"Discrete Math.\",\"link\":\"/discrete-math/index\",\"activeMatch\":\"/categories/fragments/\"},{\"text\":\"Literature\",\"link\":\"/academic/literature/index\",\"activeMatch\":\"/academic/literature/\"}]},{\"text\":\"Tools\",\"items\":[{\"text\":\"Formulas for IPhO JPN.\",\"link\":\"/academic/physics/ipho-formulas-jpn/1\",\"activeMatch\":\"/academic/physics/ipho-formulas-jpn/\"}]},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"},{\"text\":\"\",\"link\":\"\",\"activeMatch\":\"\"}],\"activeMatch\":\"/academic/\"},{\"text\":\"Application\",\"items\":[{\"text\":\"Personal projects\",\"items\":[{\"text\":\"markdown-it-katex\",\"link\":\"/application/markdown-it-katex/how-to-use\",\"activeMatch\":\"/application/markdown-it-katex/\"},{\"text\":\"vitepress-plugin-shiki-twoslash\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/index\",\"activeMatch\":\"/application/vitepress-plugin-shiki-twoslash/index\"}]}],\"activeMatch\":\"/save/\"},{\"text\":\"Save\",\"items\":[{\"text\":\"Reading\",\"link\":\"/save/reading/index\",\"activeMatch\":\"/save/reading/\"},{\"text\":\"Vocabulary\",\"link\":\"/academic/vocabulary/index\",\"activeMatch\":\"/academic/vocabulary/\"}],\"activeMatch\":\"/save/\"}],\"sidebar\":{\"/development/\":[{\"text\":\"Wiki Database\",\"collapsed\":false,\"items\":[{\"text\":\"File Naming Convention\",\"link\":\"/development/file-naming-convention\"}]}],\"/academic/chemistry/\":[{\"text\":\"Textbook\",\"collapsed\":true,\"items\":[{\"text\":\"12-5: Reaction Mechanism\",\"link\":\"/academic/chemistry/notes/12-5\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"}]},{\"text\":\"Kinetics\",\"collapsed\":false,\"items\":[{\"text\":\"Rate determining steps\",\"link\":\"/academic/chemistry/notes/kinetics/rate-determining-step\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"}]},{\"text\":\"Problems & Solutions\",\"collapsed\":true,\"items\":[{\"text\":\"Problem: 02-20\",\"link\":\"/academic/chemistry/problems/02-20\"},{\"text\":\"Problem: 03-02-1\",\"link\":\"/academic/chemistry/problems/03-02-1\"},{\"text\":\"Problem: 03-02-2\",\"link\":\"/academic/chemistry/problems/03-02-2\"},{\"text\":\"Problem: 03-02-3\",\"link\":\"/academic/chemistry/problems/03-02-3\"}]}],\"/academic/physics\":[{\"text\":\"IPhO Formulas: JP Ver.\",\"collapsed\":false,\"items\":[{\"text\":\"1: 数学\",\"link\":\"/academic/physics/ipho-formulas-jpn/1\"},{\"text\":\"2: 一般的な推奨事\",\"link\":\"/academic/physics/ipho-formulas-jpn/2\"},{\"text\":\"3: 運動学\",\"link\":\"/academic/physics/ipho-formulas-jpn/3\"},{\"text\":\"4: 力学\",\"link\":\"/academic/physics/ipho-formulas-jpn/4\"},{\"text\":\"5: 振動と波\",\"link\":\"/academic/physics/ipho-formulas-jpn/5\"},{\"text\":\"6: 幾何光学,測光\",\"link\":\"/academic/physics/ipho-formulas-jpn/6\"},{\"text\":\"7: 波動光学\",\"link\":\"/academic/physics/ipho-formulas-jpn/7\"},{\"text\":\"8: 電気回路\",\"link\":\"/academic/physics/ipho-formulas-jpn/8\"},{\"text\":\"9: 電磁気学\",\"link\":\"/academic/physics/ipho-formulas-jpn/9\"},{\"text\":\"10: 熱力\",\"link\":\"/academic/physics/ipho-formulas-jpn/10\"},{\"text\":\"11: 量子力学\",\"link\":\"/academic/physics/ipho-formulas-jpn/11\"},{\"text\":\"12: Keplerの法則\",\"link\":\"/academic/physics/ipho-formulas-jpn/12\"},{\"text\":\"13: 相対性理論\",\"link\":\"/academic/physics/ipho-formulas-jpn/13\"}]}],\"/academic/vocabulary/\":[{\"text\":\"Vocabulary\",\"collapsed\":true,\"items\":[{\"text\":\"2023-02-27\",\"link\":\"/academic/vocabulary/2023/02/2023-02-27\"}]}],\"/academic/literature/\":[{\"text\":\"Writing Resources\",\"collapsed\":true,\"items\":[{\"text\":\"Patterns of Organization and Methods of Development\",\"link\":\"/academic/literature/writing/methods-of-development\"}]}],\"/javascript/\":[{\"text\":\"1: Basic JavaScript-Value, Variables, and Control Flow\",\"collapsed\":true,\"items\":[{\"text\":\"1-1: Numbers\",\"link\":\"/javascript/notes/1/1-1\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"},{\"text\":\"\",\"link\":\"\"}]}],\"/save/reading/\":[{\"text\":\"Outliers\",\"collapsed\":true,\"items\":[{\"text\":\"Introduction & Chapter 1: The Roseto Mystery\",\"link\":\"/save/reading/outliers/1\"},{\"text\":\"Chapter 2: The 10,000-Hour Rule\",\"link\":\"/save/reading/outliers/2\"},{\"text\":\"Chapter 3: The Trouble with Geniuses, Part 1\",\"link\":\"/save/reading/outliers/3\"},{\"text\":\"Chapter 4: The Trouble with Geniuses, Part 2\",\"link\":\"/save/reading/outliers/4\"}]}],\"/application/markdown-it-katex/\":[{\"text\":\"markdown-it-katex\",\"collapsed\":false,\"items\":[{\"text\":\"1: How to use?\",\"link\":\"/application/markdown-it-katex/how-to-use\"},{\"text\":\"2: KaTeX supported functions\",\"link\":\"/application/markdown-it-katex/support-function\"},{\"text\":\"3: KaTeX support tables\",\"link\":\"/application/markdown-it-katex/support-table\"},{\"text\":\"4: Tips\",\"link\":\"/application/markdown-it-katex/tips\"}]}],\"/application/vitepress-plugin-shiki-twoslash/\":[{\"text\":\"Guide\",\"collapsed\":false,\"items\":[{\"text\":\"Getting Started\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/\"},{\"text\":\"Markdown Extensions\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/guide/markdown-extensions\"},{\"text\":\"Using a Custom Theme\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/guide/custom-theme\"}]},{\"text\":\"Features\",\"collapsed\":false,\"items\":[{\"text\":\"Queries\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/queries\"},{\"text\":\"Errors\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/errors\"},{\"text\":\"Emit\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/emit\"},{\"text\":\"Cutting\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/cutting\"},{\"text\":\"Multi-file\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/multi-file\"},{\"text\":\"@types\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/types\"},{\"text\":\"Meta Annotations\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/annotations\"},{\"text\":\"Logging\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/logging\"},{\"text\":\"Includes\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/api/includes\"}]},{\"text\":\"Config\",\"collapsed\":false,\"items\":[{\"text\":\"Reference\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/config/reference\"},{\"text\":\"Compiler Flags\",\"link\":\"/application/vitepress-plugin-shiki-twoslash/config/flags\"}]}]},\"footer\":{\"copyright\":\"Copyright © 2023-2023 <a href=\\\"https://github.com/andatoshiki\\\">Anda Toshiki</a>, <a href=\\\"https://github.com/lolilab\\\">LoliLab</a> and <a href=\\\"https://github.com/toshikidev\\\">Toshiki Dev</a> present <br /><span id=\\\"siteruntime_span\\\"></span>\",\"message\":\"Wrote with <i class=\\\"heart fa fa-heart fa-xs fa-beat\\\"></i> and <i class=\\\"coffee fa fa-coffee fa-xs\\\" aria-hidden=\\\"true\\\"></i> by <a href=\\\"https://toshiki.dev\\\">Anda Toshiki</a> at <code>root@andatoshiki:/~</code>\"},\"logo\":\"/logos/logo.png\",\"outline\":\"deep\",\"outlineTitle\":\"TOC\",\"outlineBadges\":false,\"lastUpdatedText\":\"Last updated\",\"algolia\":{\"appId\":\"G9IUR45K98\",\"apiKey\":\"8528cc91281d8112b28f508317a96dd3\",\"indexName\":\"toshiki-notebook\"},\"editLink\":{\"pattern\":\"https://github.com/andatoshiki/toshiki-notebook/edit/master/docs/:path\",\"text\":\"Edit this page on GitHub\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/andatoshiki\"},{\"icon\":\"twitter\",\"link\":\"https://twitter.com/andatoshiki\"}]},\"locales\":{\"/\":{\"label\":\"English\",\"lang\":\"en-US\"},\"/jp/\":{\"label\":\"Japanese\",\"title\":\"Vue Test Utils\",\"lang\":\"jp-JP\",\"description\":\"La documentation officielle de Vue Test Utils\"}},\"scrollOffset\":90,\"cleanUrls\":true}")</script>
|
||
|
||
</body>
|
||
</html> |