Repository navigation
Expand file tree
/
Copy pathindex.html
More file actions
57 lines (57 loc) · 43.1 KB
/
Copy pathindex.html
File metadata and controls
57 lines (57 loc) · 43.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<!doctype html><html lang=en dir=ltr class=scroll-smooth data-default-appearance=dark data-auto-appearance=false><head><meta name=generator content="Hugo 0.153.1"><meta charset=utf-8><meta http-equiv=content-language content="en"><meta name=viewport content="width=device-width,initial-scale=1"><meta http-equiv=X-UA-Compatible content="ie=edge"><meta name=theme-color><title>MyBlog</title><meta name=title content="MyBlog"><meta name=description content="My awesome website"><link rel=canonical href=https://blog.xiadengma.com/><link rel=alternate type=application/rss+xml href=/index.xml title=MyBlog><link rel=alternate type=application/json href=/index.json title=MyBlog><meta name=author content="xiadengma"><link href=https://github.com/xiadengma rel=me><link href=https://xiadengma.com/ rel=me><meta property="og:url" content="https://blog.xiadengma.com/"><meta property="og:site_name" content="MyBlog"><meta property="og:title" content="MyBlog"><meta property="og:description" content="My awesome website"><meta property="og:locale" content="en"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="MyBlog"><meta name=twitter:description content="My awesome website"><link type=text/css rel=stylesheet href=/css/main.bundle.min.80e191426fa299808166e9d09dd48085cd7b62f9a4c616750392885feb860dcdbc7da53b64846e6042b50930f56ccfeeb46795073cf668cf56c1e7cf8652bf65.css integrity="sha512-gOGRQm+imYCBZunQndSAhc17YvmkxhZ1A5KIX+uGDc28faU7ZIRuYEK1CTD1bM/utGeVBzz2aM9WwefPhlK/ZQ=="><script type=text/javascript src=/js/appearance.min.6f41174b3a05b680820fe08cadbfa5fb7a7ca347b76a0955cdc68b9d8aca1ce24f0547e138cea33bcc7904d551a90afcb1cc7f2d9fe8557075d501419046c08c.js integrity="sha512-b0EXSzoFtoCCD+CMrb+l+3p8o0e3aglVzcaLnYrKHOJPBUfhOM6jO8x5BNVRqQr8scx/LZ/oVXB11QFBkEbAjA=="></script><script src=/lib/zoom/zoom.min.umd.a527109b68c082a70f3697716dd72a9d5aa8b545cf800cecbbc7399f2ca6f6e0ce3e431f2062b48bbfa47c9ea42822714060bef309be073f49b9c0e30d318d7b.js integrity="sha512-pScQm2jAgqcPNpdxbdcqnVqotUXPgAzsu8c5nyym9uDOPkMfIGK0i7+kfJ6kKCJxQGC+8wm+Bz9JucDjDTGNew=="></script><script defer type=text/javascript id=script-bundle src=/js/main.bundle.min.a4a7dfccb3436d38f7e4b42726453b8acb7e154b0b6ecad4afcbede29623d36d0463273c19cd6867ac37af7853561bb8f323133653545b1157c47a2360052976.js integrity="sha512-pKffzLNDbTj35LQnJkU7ist+FUsLbsrUr8vt4pYj020EYyc8Gc1oZ6w3r3hTVhu48yMTNlNUWxFXxHojYAUpdg==" data-copy=复制 data-copied=已复制></script><script src=/lib/jquery/jquery.slim.min.b0dca576e87d7eaa5850ae4e61759c065786cdb6489d68fcc82240539eebd5da522bdb4fda085ffd245808c8fe2acb2516408eb774ef26b5f6015fc6737c0ea8.js integrity="sha512-sNylduh9fqpYUK5OYXWcBleGzbZInWj8yCJAU57r1dpSK9tP2ghf/SRYCMj+KsslFkCOt3TvJrX2AV/Gc3wOqA=="></script><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=manifest href=/site.webmanifest><script type=application/ld+json>{"@context":"https://schema.org","@type":"WebSite","@id":"https://blog.xiadengma.com/","name":"MyBlog","description":"My awesome website","inLanguage":"en","url":"https://blog.xiadengma.com/","publisher":{"@type":"Person","name":"xiadengma"}}</script><script data-id=umami-script async src=https://analytics.umami.is/script.js data-website-id=678aa4f9-0d3a-485e-88ea-9a4e51d5aa9f></script><script type=text/javascript>document.querySelector('script[data-id="umami-script"]').addEventListener("load",function(){const e=document.head.querySelector('meta[property = "og:type"]').getAttribute("content");let t=document.head.querySelector('meta[property = "og:title"]').getAttribute("content"),n=document.head.querySelector('meta[property = "og:url"]').getAttribute("content");umami.track(e+":"+t,{url:n})})</script><script>(()=>{const n=/[A-Za-z]{2,}[^\S\r\n]+[A-Za-z]{2,}/,s=/[A-Za-z]/g,o=/[\u4E00-\u9FFF]/g,i=/https?:\/\/\S+/i,a=/[A-Za-z0-9_./:-]{20,}/;function e(e,t){const n=t.match(e);return n?n.length:0}function t(){const t=document.querySelectorAll(".article-content p, .article-content li");for(const c of t){const r=(c.textContent||"").trim();if(!r)continue;const d=getComputedStyle(c);if(d.textAlign!=="justify")continue;if(i.test(r)||a.test(r)){c.classList.add("bf-no-justify");continue}if(!n.test(r))continue;const l=e(s,r);if(l<12)continue;const u=e(o,r);if(l<=u)continue;c.classList.add("bf-no-justify")}}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",t):t()})()</script></head><body class="flex flex-col h-screen m-auto leading-7 max-w-7xl px-6 sm:px-14 md:px-24 lg:px-32 text-lg bg-neutral text-neutral-900 dark:bg-neutral-800 dark:text-neutral scrollbar-thin scrollbar-track-neutral-200 scrollbar-thumb-neutral-400 dark:scrollbar-track-neutral-800 dark:scrollbar-thumb-neutral-600"><div id=the-top class="absolute flex self-center"><a class="px-3 py-1 text-sm -translate-y-8 rounded-b-lg bg-primary-200 focus:translate-y-0 dark:bg-neutral-600" href=#main-content><span class="font-bold text-primary-600 pe-2 dark:text-primary-400">↓</span>
跳过正文</a></div><div class=min-h-[148px]></div><div class="fixed inset-x-0 min-h-[130px] opacity-65 bg-gradient-to-b from-neutral from-60% dark:from-neutral-800 to-transparent mix-blend-normal z-80"></div><div class="fixed inset-x-0 z-100"><div id=menu-blur class="absolute opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-2xl shadow-2xl"></div><div class="relative m-auto leading-7 max-w-7xl px-6 sm:px-14 md:px-24 lg:px-32"><div class="main-menu flex items-center justify-between py-6 md:justify-start gap-x-3 pt-[2px] pr-2 md:pr-4 pb-[3px] pl-0"><div><a href=/ class=flex><span class=sr-only>MyBlog</span>
<img src=/img/logo.png width=90 height=90 class="logo max-h-[5rem] max-w-[5rem] object-scale-down object-left nozoom" alt></a></div><div class="flex flex-1 items-center justify-between"><nav class="flex space-x-3"><a href=/ class="text-base font-medium">MyBlog</a></nav><nav class="hidden md:flex items-center gap-x-5 md:ml-12 h-12"><a href=/posts/ class="flex items-center hover:text-primary-600 dark:hover:text-primary-400" aria-label=文章 title=文章><span class=mr-1><span class="relative block icon"><svg height="1em" viewBox="0 0 512 512"><path fill="currentColor" d="M441 58.9 453.1 71c9.4 9.4 9.4 24.6.0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9.0zM209.8 256.2 344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1L186.9 325l16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25 175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 1e2c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l1e2-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7.0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4.0 152V424c0 48.6 39.4 88 88 88H360c48.6.0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1.0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H2e2c13.3.0 24-10.7 24-24s-10.7-24-24-24H88z"/></svg></span></span><p class="text-base font-medium">文章</p></a><button id=search-button aria-label=Search class="text-base hover:text-primary-600 dark:hover:text-primary-400" title="搜索 (/)">
<span class="relative block icon"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="search" class="svg-inline--fa fa-search fa-w-16" role="img" viewBox="0 0 512 512"><path fill="currentColor" d="M505 442.7 405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9.0 208 0S0 93.1.0 208s93.1 208 208 208c48.3.0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9.0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7.0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7.0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg></span></button></nav><div class="flex md:hidden items-center gap-x-5 md:ml-12 h-12"><span></span>
<button id=search-button-mobile aria-label=Search class="text-base hover:text-primary-600 dark:hover:text-primary-400" title="搜索 (/)">
<span class="relative block icon"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="search" class="svg-inline--fa fa-search fa-w-16" role="img" viewBox="0 0 512 512"><path fill="currentColor" d="M505 442.7 405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9.0 208 0S0 93.1.0 208s93.1 208 208 208c48.3.0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9.0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7.0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7.0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg></span></button></div></div><div class="-my-2 md:hidden"><div id=menu-button class=block><div class="cursor-pointer hover:text-primary-600 dark:hover:text-primary-400"><span class="relative block icon"><svg viewBox="0 0 448 512"><path fill="currentColor" d="M0 96C0 78.33 14.33 64 32 64H416c17.7.0 32 14.33 32 32 0 17.7-14.3 32-32 32H32C14.33 128 0 113.7.0 96zM0 256c0-17.7 14.33-32 32-32H416c17.7.0 32 14.3 32 32s-14.3 32-32 32H32c-17.67.0-32-14.3-32-32zM416 448H32c-17.67.0-32-14.3-32-32s14.33-32 32-32H416c17.7.0 32 14.3 32 32s-14.3 32-32 32z"/></svg></span></div><div id=menu-wrapper class="fixed inset-0 z-30 invisible w-screen h-screen m-0 overflow-auto transition-opacity opacity-0 cursor-default bg-neutral-100/50 backdrop-blur-sm dark:bg-neutral-900/50 pt-[5px]"><ul class="flex space-y-2 mt-3 flex-col items-end w-full px-6 py-6 mx-auto overflow-visible list-none text-end max-w-7xl"><li id=menu-close-button><span class="cursor-pointer inline-block align-text-bottom hover:text-primary-600 dark:hover:text-primary-400"><span class="relative block icon"><svg viewBox="0 0 320 512"><path fill="currentColor" d="M310.6 361.4c12.5 12.5 12.5 32.75.0 45.25C304.4 412.9 296.2 416 288 416s-16.38-3.125-22.62-9.375L160 301.3 54.63 406.6C48.38 412.9 40.19 416 32 416S15.63 412.9 9.375 406.6c-12.5-12.5-12.5-32.75.0-45.25l105.4-105.4L9.375 150.6c-12.5-12.5-12.5-32.75.0-45.25s32.75-12.5 45.25.0L160 210.8l105.4-105.4c12.5-12.5 32.75-12.5 45.25.0s12.5 32.75.0 45.25l-105.4 105.4L310.6 361.4z"/></svg></span></span></li><li class=mt-1><a href=/posts/ class="flex items-center hover:text-primary-600 dark:hover:text-primary-400" aria-label=文章 title=文章><div class=mr-2><span class="relative block icon"><svg height="1em" viewBox="0 0 512 512"><path fill="currentColor" d="M441 58.9 453.1 71c9.4 9.4 9.4 24.6.0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9.0zM209.8 256.2 344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1L186.9 325l16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25 175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 1e2c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l1e2-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7.0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4.0 152V424c0 48.6 39.4 88 88 88H360c48.6.0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1.0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H2e2c13.3.0 24-10.7 24-24s-10.7-24-24-24H88z"/></svg></span></div><p class="text-bg font-bg">文章</p></a></li></ul></div></div></div></div></div></div><script type=text/javascript src=/js/background-blur.min.605b3b942818f0ab5a717ae446135ec46b8ee5a2ad12ae56fb90dc2a76ce30c388f9fec8bcc18db15bd47e3fa8a09d779fa12aa9c184cf614a315bc72c6c163d.js integrity="sha512-YFs7lCgY8KtacXrkRhNexGuO5aKtEq5W+5DcKnbOMMOI+f7IvMGNsVvUfj+ooJ13n6EqqcGEz2FKMVvHLGwWPQ==" data-blur-id=menu-blur></script><div class="relative flex flex-col grow"><main id=main-content class=grow><article class="prose dark:prose-invert max-w-full"><div class=relative><div class="absolute inset-x-0 bottom-0 h-1/2"></div><div class="mx-auto max-w-7xl p-0"><div class="relative sm:overflow-hidden"><div class="fixed inset-x-0 top-0 -z-10"><img id=background-image class="nozoom mt-0 mr-0 mb-0 ml-0 h-[1000px] w-full object-cover" src=/img/background_1.svg role=presentation><div class="from-neutral absolute inset-0 h-[1000px] bg-gradient-to-t to-transparent mix-blend-normal dark:from-neutral-800"></div><div class="from-neutral absolute inset-0 h-[1000px] bg-gradient-to-t to-neutral-100 opacity-60 mix-blend-normal dark:from-neutral-800 dark:to-neutral-800"></div></div><div class="relative flex flex-col items-center justify-center px-1 py-1 text-center"><img class="mb-2 h-36 w-36 rounded-full" width=144 height=144 alt=xiadengma src=/img/author_hu_c5257ab34337571b.jpg data-zoom-src=/img/author_hu_9efbc1c1dad84e42.jpg><h1 class="mb-2 text-4xl font-extrabold text-neutral-800 dark:text-neutral-200">xiadengma</h1><div class="mt-3 mb-10 text-2xl"><div class="flex flex-wrap"><a class="hover:text-primary-400 text-primary-800 dark:text-primary-200 px-1" href=https://github.com/xiadengma target=_blank aria-label=Github title=Github rel="me noopener noreferrer"><span class="relative block icon"><svg viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6.0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6.0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3.0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1.0-6.2-.3-40.4-.3-61.4.0.0-70 15-84.7-29.8.0.0-11.4-29.1-27.8-36.6.0.0-22.9-15.7 1.6-15.4.0.0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5.0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9.0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4.0 33.7-.3 75.4-.3 83.6.0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6.0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9.0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</span></a><a class="hover:text-primary-400 text-primary-800 dark:text-primary-200 px-1" href=https://xiadengma.com/ target=_blank aria-label=Link title=Link rel="me noopener noreferrer"><span class="relative block icon"><svg viewBox="0 0 640 512"><path fill="currentColor" d="M172.5 131.1c55.6-55.59 148-55.59 203.6.0 50 50 57.4 129.7 16.3 187.2L391.3 319.9C381 334.2 361 337.6 346.7 327.3c-14.4-10.3-17.8-30.3-7.5-44.6L340.3 281.1C363.2 249 359.6 205.1 331.7 177.2c-31.4-31.4-82.5-31.4-114 0L105.5 289.5c-31.51 30.6-31.51 82.5.0 114C133.3 431.4 177.3 435 209.3 412.1L210.9 410.1C225.3 400.7 245.3 404 255.5 418.4 265.8 432.8 262.5 452.8 248.1 463.1L246.5 464.2c-58.4 41.1-136.3 34.5-186.29-15.4-56.469-56.5-56.469-148.1.0-204.5L172.5 131.1zM467.5 380c-56.5 56.5-148 56.5-204.5.0-50-50-56.5-128.8-15.4-186.3L248.7 192.1C258.1 177.8 278.1 174.4 293.3 184.7 307.7 194.1 311.1 214.1 300.8 229.3L299.7 230.9C276.8 262.1 280.4 306.9 308.3 334.8c31.4 31.4 82.5 31.4 114 0L534.5 222.5c31.5-31.5 31.5-83.4.0-114C506.7 80.63 462.7 76.99 430.7 99.9L429.1 101C414.7 111.3 394.7 107.1 384.5 93.58 374.2 79.2 377.5 59.21 391.9 48.94L393.5 47.82C451 6.731 529.8 13.25 579.8 63.24c56.5 56.46 56.5 148.06.0 204.46L467.5 380z"/></svg></span></a></div></div><section class="prose dark:prose-invert w-full"></section></div></div></div></div></article><section><h2 class="mt-8 text-2xl font-extrabold mb-10">最近的文章</h2><section class="w-full grid gap-4 sm:grid-cols-2 md:grid-cols-3"><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E5%A6%82%E4%BD%95%E5%85%A5%E9%97%A8%E5%85%B7%E8%BA%AB%E6%99%BA%E8%83%BD%E7%A0%94%E7%A9%B6/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>【转载】如何入门具身智能研究</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-24T11:02:46+08:00>更新:2025年12月24日</time><span class="px-2 text-primary-500">·</span><span>10289 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>16 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/mit-6.s184-%E8%AF%BE%E7%A8%8B%E7%AC%94%E8%AE%B0/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>MIT 6.S184 课程笔记</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-25T13:40:32+08:00>更新:2025年12月25日</time><span class="px-2 text-primary-500">·</span><span>11913 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>16 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/gnome49-.icns%E6%96%87%E4%BB%B6%E9%A2%84%E8%A7%88%E4%BF%AE%E5%A4%8D/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>Gnome49 .Icns文件预览修复</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><span>770 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>1 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/archlinux/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Archlinux
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/gnome/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Gnome
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/nautilus/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Nautilus
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/icns/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Icns</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BA-act/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>深入浅出 ACT</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-25T13:40:32+08:00>更新:2025年12月25日</time><span class="px-2 text-primary-500">·</span><span>47278 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>32 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/act/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">ACT
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/il/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">IL</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BA-vae--cvae/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>深入浅出 VAE & CVAE</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-25T13:40:32+08:00>更新:2025年12月25日</time><span class="px-2 text-primary-500">·</span><span>11980 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>9 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/vae/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">VAE
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/cvae/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">CVAE</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E4%B8%80%E4%BA%9B%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80%E6%A6%82%E5%BF%B5/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>一些数学基础概念</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-25T13:40:32+08:00>更新:2025年12月25日</time><span class="px-2 text-primary-500">·</span><span>2920 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>5 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/math/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Math</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/lerobot-so-101-%E6%9C%BA%E6%A2%B0%E8%87%82%E5%AE%9E%E8%B7%B5/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>LeRobot SO-101 机械臂实践</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-11-05T15:53:25+08:00>更新:2025年11月5日</time><span class="px-2 text-primary-500">·</span><span>74710 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>32 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/embodied-ai/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Embodied-Ai
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/lerobot/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">LeRobot
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/so-101/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">SO-101
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/il/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">IL
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/act/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">ACT</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E6%B7%B1%E5%85%A5%E6%B5%85%E5%87%BA%E5%8D%A1%E5%B0%94%E6%9B%BC%E6%BB%A4%E6%B3%A2/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>深入浅出卡尔曼滤波</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><time datetime=2025-12-25T13:40:32+08:00>更新:2025年12月25日</time><span class="px-2 text-primary-500">·</span><span>27071 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>26 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/kalman-filter/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Kalman Filter
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/algorithm/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Algorithm
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/math/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Math</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article><article class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600"><div class="flex-none relative overflow-hidden thumbnail_card"><img src=/img/featured_1.svg role=presentation loading=lazy decoding=async class="not-prose absolute inset-0 w-full h-full object-cover"></div><div class=p-4><header><a href=/posts/%E4%BD%BF%E7%94%A8bark%E6%8E%A8%E9%80%81%E9%80%9A%E7%9F%A5%E5%88%B0%E4%BD%A0%E7%9A%84iphone/ class="not-prose before:absolute before:inset-0 decoration-primary-500 dark:text-neutral text-xl font-bold text-neutral-800 hover:underline hover:underline-offset-2"><h2>使用Bark推送通知到你的iPhone</h2></a></header><div class="text-sm text-neutral-500 dark:text-neutral-400"><div class="flex flex-row flex-wrap items-center"><span>1322 字</span><span class="px-2 text-primary-500">·</span><span title=预计阅读>1 分钟</span></div><div class="flex flex-row flex-wrap items-center"><a class="relative mt-[0.5rem] me-2" href=/tags/bark/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Bark
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/iphone/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">IPhone
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/ios/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">IOS
</span></span></a><a class="relative mt-[0.5rem] me-2" href=/tags/tools/><span class="flex cursor-pointer"><span class="rounded-md border border-primary-400 px-1 py-[1px] text-xs font-normal text-primary-700 dark:border-primary-600 dark:text-primary-400">Tools</span></span></a></div></div></div><div class="px-6 pt-4 pb-2"></div></article></section><div class="mt-10 flex justify-center"><a href=/posts/><button class="bg-transparent hover:text-primary-500 prose dark:prose-invert font-semibold py-2 px-4 border border-primary-500 hover:border-transparent rounded">
显示更多</button></a></div></section><div id=scroll-to-top class="fixed bottom-6 end-6 z-50 transform translate-y-4 opacity-0 duration-200"><a href=#the-top class="bf-scroll-to-top__btn pointer-events-auto flex h-12 w-12 items-center justify-center rounded-full bg-neutral/50 text-neutral-700 hover:text-primary-600 dark:bg-neutral-800/50 dark:text-neutral dark:hover:text-primary-400" aria-label=返回顶部 title=返回顶部><span class=sr-only>返回顶部</span>
<svg class="bf-scroll-to-top__icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 19V5"/><path d="m5 12 7-7 7 7"/></svg></a></div></main><footer id=site-footer class="py-10 print:hidden"><div class="flex items-center justify-between"><p class="text-sm text-neutral-500 dark:text-neutral-400">© 2025 <a href=https://xiadengma.com target=_blank>XIADENGMA</a> | All rights reserved | <a href=https://beian.miit.gov.cn target=_blank>浙ICP备20005376号-2</a></p><p class="text-xs text-neutral-500 dark:text-neutral-400">🛸 by Hugo & Blowfish</p></div><script>mediumZoom(document.querySelectorAll("img:not(.nozoom)"),{margin:24,background:"rgba(0,0,0,0.5)",scrollOffset:0})</script><script type=text/javascript src=/js/process.min.ee03488f19c93c2efb199e2e3014ea5f3cb2ce7d45154adb3399a158cac27ca52831db249ede5bb602700ef87eb02434139de0858af1818ab0fb4182472204a4.js integrity="sha512-7gNIjxnJPC77GZ4uMBTqXzyyzn1FFUrbM5mhWMrCfKUoMdsknt5btgJwDvh+sCQ0E53ghYrxgYqw+0GCRyIEpA=="></script><div style=display:none class="bf-no-justify bf-algorithm bf-algorithm__caption bf-algorithm__body bf-figure-group bf-figure-group__grid bf-fig-16 bf-fig-single"></div><script>(()=>{const t="bf_code_wrap_mode",e="bf-code-nowrap",n="button.codeblock-wrap-toggle[data-code-wrap-toggle]";function i(){const e=localStorage.getItem(t);return e==="nowrap"?"nowrap":"wrap"}function s(s,o){const i=document.documentElement;s==="nowrap"?i.classList.add(e):i.classList.remove(e),o&&localStorage.setItem(t,s);const a=i.classList.contains(e);document.querySelectorAll(n).forEach(e=>{e.setAttribute("aria-pressed",a?"false":"true"),e.textContent=a?"折行":"滚动"})}function a(){const t=document.documentElement.classList.contains(e);s(t?"wrap":"nowrap",!0)}function o(){s(i(),!1),document.addEventListener("click",e=>{const t=e.target.closest?.(n);if(!t)return;e.preventDefault(),a(),t.blur()})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",o):o()})()</script><script>(()=>{const n="bf-mermaid-viewer",s="bf-open",g="bf-modal-open",h=.1,r=6,o=1.15,e={scale:1,baseW:0,baseH:0,pointerId:null,startX:0,startY:0,startScrollLeft:0,startScrollTop:0};function l(e,t,n){return Math.min(n,Math.max(t,e))}function O(){let e=document.getElementById(n);if(e)return e;e=document.createElement("div"),e.id=n,e.className="bf-mermaid-viewer",e.setAttribute("aria-hidden","true"),e.innerHTML=`
<div class="bf-mermaid-viewer__backdrop" data-bf-mermaid-close></div>
<div class="bf-mermaid-viewer__panel" role="dialog" aria-modal="true" aria-label="Mermaid 查看器">
<div class="bf-mermaid-viewer__toolbar">
<button type="button" class="bf-mermaid-viewer__tool" data-bf-mermaid-zoom-out aria-label="缩小" title="缩小">
<svg class="bf-mermaid-viewer__icon" viewBox="0 0 24 24" aria-hidden="true">
<path d="M5 12h14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
</svg>
</button>
<button type="button" class="bf-mermaid-viewer__tool" data-bf-mermaid-reset aria-label="适配" title="适配">
<svg class="bf-mermaid-viewer__icon" viewBox="0 0 24 24" aria-hidden="true">
<path d="M4 9V5h4M20 9V5h-4M4 15v4h4M20 15v4h-4" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
</svg>
<span class="bf-mermaid-viewer__label" data-bf-mermaid-zoom-label>100%</span>
</button>
<button type="button" class="bf-mermaid-viewer__tool" data-bf-mermaid-zoom-in aria-label="放大" title="放大">
<svg class="bf-mermaid-viewer__icon" viewBox="0 0 24 24" aria-hidden="true">
<path d="M12 5v14M5 12h14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
</svg>
</button>
</div>
<button type="button" class="bf-mermaid-viewer__close" data-bf-mermaid-close aria-label="关闭" title="关闭">
<svg class="bf-mermaid-viewer__icon" viewBox="0 0 24 24" aria-hidden="true">
<path d="M6 6l12 12M18 6L6 18" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
</svg>
</button>
<div class="bf-mermaid-viewer__canvas" data-bf-mermaid-canvas>
<div class="bf-mermaid-viewer__stage" data-bf-mermaid-stage></div>
</div>
</div>
`,document.body.appendChild(e),e.addEventListener("click",e=>{e.target.closest?.("[data-bf-mermaid-close]")&&(e.preventDefault(),u())}),document.addEventListener("keydown",e=>{(e.key==="Escape"||e.key==="Esc")&&u()});const t=e.querySelector("[data-bf-mermaid-canvas]"),s=e.querySelector("[data-bf-mermaid-zoom-in]"),i=e.querySelector("[data-bf-mermaid-zoom-out]"),r=e.querySelector("[data-bf-mermaid-reset]");return s?.addEventListener("click",e=>{e.preventDefault(),a(o)}),i?.addEventListener("click",e=>{e.preventDefault(),a(1/o)}),r?.addEventListener("click",e=>{e.preventDefault(),p()}),t?.addEventListener("wheel",y,{passive:!1}),t?.addEventListener("pointerdown",b),t?.addEventListener("pointermove",j),t?.addEventListener("pointerup",d),t?.addEventListener("pointercancel",d),e}function i(){const e=document.getElementById(n);return!!e&&e.classList.contains(s)}function t(){const e=O();return{root:e,canvas:e.querySelector("[data-bf-mermaid-canvas]"),stage:e.querySelector("[data-bf-mermaid-stage]"),resetBtn:e.querySelector("[data-bf-mermaid-reset]"),zoomLabel:e.querySelector("[data-bf-mermaid-zoom-label]")}}function w(e){const t=e?.viewBox?.baseVal;if(t&&t.width>0&&t.height>0)return{w:t.width,h:t.height};const n=e.getAttribute("width")||"",s=e.getAttribute("height")||"",o=n&&!n.includes("%")?parseFloat(n):0,i=s&&!s.includes("%")?parseFloat(s):0;if(o>0&&i>0)return{w:o,h:i};const a=e.getBoundingClientRect();return{w:a.width||800,h:a.height||600}}function v(){const{stage:e}=t();return e?.querySelector("svg")||null}function m(){const{resetBtn:s,zoomLabel:o}=t(),n=v();if(!n)return;const a=Math.max(1,e.baseW*e.scale),r=Math.max(1,e.baseH*e.scale);n.style.width=`${a}px`,n.style.height=`${r}px`,n.style.maxWidth="none",n.style.maxHeight="none",n.style.display="block";const i=`${Math.round(e.scale*100)}%`;o?o.textContent=i:s&&(s.textContent=i)}function f(){const{canvas:e}=t();if(!e)return;requestAnimationFrame(()=>{e.scrollLeft=Math.max(0,(e.scrollWidth-e.clientWidth)/2),e.scrollTop=Math.max(0,(e.scrollHeight-e.clientHeight)/2)})}function p(){const{canvas:n}=t();if(!n||!e.baseW||!e.baseH)return;const s=getComputedStyle(n),a=(parseFloat(s.paddingLeft)||0)+(parseFloat(s.paddingRight)||0),c=(parseFloat(s.paddingTop)||0)+(parseFloat(s.paddingBottom)||0),o=n.clientWidth-a,i=n.clientHeight-c;if(!o||!i)return;const d=Math.min(o/e.baseW,i/e.baseH)*.98;e.scale=l(d,h,r),m(),f()}function a(t){const n=l(e.scale*t,h,r);if(n===e.scale)return;e.scale=n,m(),f()}function y(e){if(!i())return;e.preventDefault(),a(e.deltaY<0?o:1/o)}function b(n){if(!i())return;if(n.pointerType==="mouse"&&n.button!==0)return;const{canvas:s}=t();if(!s)return;e.pointerId=n.pointerId,e.startX=n.clientX,e.startY=n.clientY,e.startScrollLeft=s.scrollLeft,e.startScrollTop=s.scrollTop,s.classList.add("bf-grabbing"),s.setPointerCapture?.(n.pointerId)}function j(n){if(!i())return;if(e.pointerId==null||e.pointerId!==n.pointerId)return;const{canvas:s}=t();if(!s)return;const o=n.clientX-e.startX,a=n.clientY-e.startY;s.scrollLeft=e.startScrollLeft-o,s.scrollTop=e.startScrollTop-a}function d(n){const{canvas:s}=t();if(e.pointerId==null||e.pointerId!==n.pointerId)return;e.pointerId=null,s?.classList.remove("bf-grabbing");try{s?.releasePointerCapture?.(n.pointerId)}catch{}}function _(n){const{root:o,stage:i}=t();if(!o||!i||!n)return;i.innerHTML="";const a=n.cloneNode(!0);a.removeAttribute("style"),i.appendChild(a);const r=w(a);e.baseW=r.w,e.baseH=r.h,e.scale=1,o.classList.add(s),o.setAttribute("aria-hidden","false"),document.documentElement.classList.add(g),requestAnimationFrame(()=>{p()})}function u(){const e=document.getElementById(n);if(!e)return;e.classList.remove(s),e.setAttribute("aria-hidden","true"),document.documentElement.classList.remove(g);const t=e.querySelector("[data-bf-mermaid-stage]");t&&(t.innerHTML="")}function c(){if(!document.querySelector(".article-content .mermaid"))return;document.addEventListener("click",e=>{const t=document.getElementById(n);if(t&&t.classList.contains(s)&&t.contains(e.target))return;const o=e.target?.closest?.(".article-content .mermaid");if(!o)return;const i=o.querySelector("svg");if(!i)return;const a=window.getSelection?.();if(a&&String(a).length>0)return;_(i)})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",c):c()})()</script></footer><div id=search-wrapper class="invisible fixed inset-0 flex h-screen w-screen cursor-default flex-col bg-neutral-500/50 p-4 backdrop-blur-sm dark:bg-neutral-900/50 sm:p-6 md:p-[10vh] lg:p-[12vh] z-500" data-url=https://blog.xiadengma.com/><div id=search-modal class="flex flex-col w-full max-w-3xl min-h-0 mx-auto border rounded-md shadow-lg top-20 border-neutral-200 bg-neutral dark:border-neutral-700 dark:bg-neutral-800"><header class="relative z-10 flex items-center justify-between flex-none px-2"><form class="flex items-center flex-auto min-w-0"><div class="flex items-center justify-center w-8 h-8 text-neutral-400"><span class="relative block icon"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="search" class="svg-inline--fa fa-search fa-w-16" role="img" viewBox="0 0 512 512"><path fill="currentColor" d="M505 442.7 405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9.0 208 0S0 93.1.0 208s93.1 208 208 208c48.3.0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9.0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7.0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7.0 128 57.2 128 128 0 70.7-57.2 128-128 128z"/></svg></span></div><input type=search id=search-query class="flex flex-auto h-12 mx-1 bg-transparent appearance-none focus:outline-dotted focus:outline-2 focus:outline-transparent" placeholder=搜索 tabindex=0></form><button id=close-search-button class="flex items-center justify-center w-8 h-8 text-neutral-700 hover:text-primary-600 dark:text-neutral dark:hover:text-primary-400" title="关闭 (Esc)">
<span class="relative block icon"><svg viewBox="0 0 320 512"><path fill="currentColor" d="M310.6 361.4c12.5 12.5 12.5 32.75.0 45.25C304.4 412.9 296.2 416 288 416s-16.38-3.125-22.62-9.375L160 301.3 54.63 406.6C48.38 412.9 40.19 416 32 416S15.63 412.9 9.375 406.6c-12.5-12.5-12.5-32.75.0-45.25l105.4-105.4L9.375 150.6c-12.5-12.5-12.5-32.75.0-45.25s32.75-12.5 45.25.0L160 210.8l105.4-105.4c12.5-12.5 32.75-12.5 45.25.0s12.5 32.75.0 45.25l-105.4 105.4L310.6 361.4z"/></svg></span></button></header><section class="flex-auto px-2 overflow-auto"><ul id=search-results></ul></section></div></div></div></body></html>