mirror of
https://github.com/LiteyukiStudio/LiteyukiBot.git
synced 2024-11-25 12:25:05 +08:00
88 lines
83 KiB
HTML
88 lines
83 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>liteyuki.plugin.load | LiteyukiBot</title>
|
||
<meta name="description" content="A high-performance, easy-to-use chatbot framework and application">
|
||
<meta name="generator" content="VitePress v1.5.0">
|
||
<link rel="preload stylesheet" href="/assets/style.ibT9l-Gp.css" as="style">
|
||
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
|
||
|
||
<script type="module" src="/assets/app.WL1zyONR.js"></script>
|
||
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
|
||
<link rel="modulepreload" href="/assets/chunks/theme.IeHI1BgD.js">
|
||
<link rel="modulepreload" href="/assets/chunks/framework._avq4Ty7.js">
|
||
<link rel="modulepreload" href="/assets/en_dev_api_plugin_load.md.DBI0e8uW.lean.js">
|
||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||
<link rel="stylesheet" href="https://fonts.font.im/css?family=Cousine:400,400i,700,700i|Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i">
|
||
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
|
||
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
|
||
</head>
|
||
<body>
|
||
<div id="app"><div class="Layout" data-v-2391887b data-v-cf959ac2><!--[--><!--]--><!--[--><span tabindex="-1" data-v-09f1bf64></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-09f1bf64> Skip to content </a><!--]--><!----><header class="VPNav" data-v-cf959ac2 data-v-4a2d6202><div class="VPNavBar" data-v-4a2d6202 data-v-8c2dd89c><div class="wrapper" data-v-8c2dd89c><div class="container" data-v-8c2dd89c><div class="title" data-v-8c2dd89c><div class="VPNavBarTitle has-sidebar" data-v-8c2dd89c data-v-60cf36d1><a class="title" href="/en/" data-v-60cf36d1><!--[--><!--]--><!--[--><!--[--><!--[--><img class="VPImage dark logo" src="/liteyuki-dark.svg" alt="LiteyukiBot Logo" data-v-e656d635><!--]--><!--[--><img class="VPImage light logo" src="/liteyuki.svg" alt="LiteyukiBot Logo" data-v-e656d635><!--]--><!--]--><!--]--><span data-v-60cf36d1>LiteyukiBot</span><!--[--><!--]--></a></div></div><div class="content" data-v-8c2dd89c><div class="content-body" data-v-8c2dd89c><!--[--><!--]--><div class="VPNavBarSearch search" data-v-8c2dd89c><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><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-8c2dd89c data-v-fb179ef2><span id="main-nav-aria-label" class="visually-hidden" data-v-fb179ef2> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/en/deploy/install.html" tabindex="0" data-v-fb179ef2 data-v-f6113321><!--[--><span data-v-f6113321>Deploy</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/en/usage/basic.html" tabindex="0" data-v-fb179ef2 data-v-f6113321><!--[--><span data-v-f6113321>Usage</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/en/store/resource.html" tabindex="0" data-v-fb179ef2 data-v-f6113321><!--[--><span data-v-f6113321>Extension</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/en/dev/guide.html" tabindex="0" data-v-fb179ef2 data-v-f6113321><!--[--><span data-v-f6113321>Develop</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-8c2dd89c data-v-7a36dbca data-v-32e61f0e><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Language" data-v-32e61f0e><span class="text" data-v-32e61f0e><span class="vpi-languages option-icon" data-v-32e61f0e></span><!----><span class="vpi-chevron-down text-icon" data-v-32e61f0e></span></span></button><div class="menu" data-v-32e61f0e><div class="VPMenu" data-v-32e61f0e data-v-12ef594d><!----><!--[--><!--[--><div class="items" data-v-7a36dbca><p class="title" data-v-7a36dbca>English</p><!--[--><div class="VPMenuLink" data-v-7a36dbca data-v-a334e8c3><a class="VPLink link" href="/dev/api/plugin/load.html" data-v-a334e8c3><!--[--><span data-v-a334e8c3>简体中文</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-8c2dd89c data-v-824ec8bd><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-824ec8bd data-v-d8e7d9d8 data-v-61ab5455><span class="check" data-v-61ab5455><span class="icon" data-v-61ab5455><!--[--><span class="vpi-sun sun" data-v-d8e7d9d8></span><span class="vpi-moon moon" data-v-d8e7d9d8></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-8c2dd89c data-v-b9e91830 data-v-0d378c5e><!--[--><a class="VPSocialLink no-icon" href="https://github.com/LiteyukiStudio/LiteyukiBot" aria-label="github" target="_blank" rel="noopener" data-v-0d378c5e data-v-229dabda><span class="vpi-social-github"></span></a><a class="VPSocialLink no-icon" href="https://git.liteyuki.icu/bot/app" aria-label target="_blank" rel="noopener" data-v-0d378c5e data-v-229dabda><svg t="1725391346807" class="icon" viewBox="0 0 1025 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5067" width="256" height="256"><path d="M1004.692673 466.396616l-447.094409-447.073929c-25.743103-25.763582-67.501405-25.763582-93.264987 0l-103.873521 103.873521 78.171378 78.171378c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928 0 14.827372-3.358686 28.856031-9.359266 41.389666l127.97824 127.97824c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928s-42.98709 96.00928-96.00928 96.00928-96.00928-42.98709-96.00928-96.00928c0-14.827372 3.358686-28.856031 9.359266-41.389666l-127.97824-127.97824c-3.051489 1.454065-6.184898 2.744293-9.379746 3.870681l0 266.97461c37.273227 13.188988 63.99936 48.721433 63.99936 90.520695 0 53.02219-42.98709 96.00928-96.00928 96.00928s-96.00928-42.98709-96.00928-96.00928c0-41.799262 26.726133-77.331707 63.99936-90.520695l0-266.97461c-37.273227-13.188988-63.99936-48.721433-63.99936-90.520695 0-14.827372 3.358686-28.856031 9.359266-41.389666l-78.171378-78.171378-295.892081 295.871601c-25.743103 25.784062-25.743103 67.542365 0 93.285467l447.114889 447.073929c25.743103 25.743103 67.480925 25.743103 93.264987 0l445.00547-445.00547c25.763582-25.763582 25.763582-67.542365 0-93.285467z" fill="#a2d8f4" p-id="5068"></path></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-8c2dd89c data-v-ecf54355 data-v-32e61f0e><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-32e61f0e><span class="vpi-more-horizontal icon" data-v-32e61f0e></span></button><div class="menu" data-v-32e61f0e><div class="VPMenu" data-v-32e61f0e data-v-12ef594d><!----><!--[--><!--[--><div class="group translations" data-v-ecf54355><p class="trans-title" data-v-ecf54355>English</p><!--[--><div class="VPMenuLink" data-v-ecf54355 data-v-a334e8c3><a class="VPLink link" href="/dev/api/plugin/load.html" data-v-a334e8c3><!--[--><span data-v-a334e8c3>简体中文</span><!--]--></a></div><!--]--></div><div class="group" data-v-ecf54355><div class="item appearance" data-v-ecf54355><p class="label" data-v-ecf54355>Theme</p><div class="appearance-action" data-v-ecf54355><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-ecf54355 data-v-d8e7d9d8 data-v-61ab5455><span class="check" data-v-61ab5455><span class="icon" data-v-61ab5455><!--[--><span class="vpi-sun sun" data-v-d8e7d9d8></span><span class="vpi-moon moon" data-v-d8e7d9d8></span><!--]--></span></span></button></div></div></div><div class="group" data-v-ecf54355><div class="item social-links" data-v-ecf54355><div class="VPSocialLinks social-links-list" data-v-ecf54355 data-v-0d378c5e><!--[--><a class="VPSocialLink no-icon" href="https://github.com/LiteyukiStudio/LiteyukiBot" aria-label="github" target="_blank" rel="noopener" data-v-0d378c5e data-v-229dabda><span class="vpi-social-github"></span></a><a class="VPSocialLink no-icon" href="https://git.liteyuki.icu/bot/app" aria-label target="_blank" rel="noopener" data-v-0d378c5e data-v-229dabda><svg t="1725391346807" class="icon" viewBox="0 0 1025 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5067" width="256" height="256"><path d="M1004.692673 466.396616l-447.094409-447.073929c-25.743103-25.763582-67.501405-25.763582-93.264987 0l-103.873521 103.873521 78.171378 78.171378c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928 0 14.827372-3.358686 28.856031-9.359266 41.389666l127.97824 127.97824c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928s-42.98709 96.00928-96.00928 96.00928-96.00928-42.98709-96.00928-96.00928c0-14.827372 3.358686-28.856031 9.359266-41.389666l-127.97824-127.97824c-3.051489 1.454065-6.184898 2.744293-9.379746 3.870681l0 266.97461c37.273227 13.188988 63.99936 48.721433 63.99936 90.520695 0 53.02219-42.98709 96.00928-96.00928 96.00928s-96.00928-42.98709-96.00928-96.00928c0-41.799262 26.726133-77.331707 63.99936-90.520695l0-266.97461c-37.273227-13.188988-63.99936-48.721433-63.99936-90.520695 0-14.827372 3.358686-28.856031 9.359266-41.389666l-78.171378-78.171378-295.892081 295.871601c-25.743103 25.784062-25.743103 67.542365 0 93.285467l447.114889 447.073929c25.743103 25.743103 67.480925 25.743103 93.264987 0l445.00547-445.00547c25.763582-25.763582 25.763582-67.542365 0-93.285467z" fill="#a2d8f4" p-id="5068"></path></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-8c2dd89c data-v-8ae7def0><span class="container" data-v-8ae7def0><span class="top" data-v-8ae7def0></span><span class="middle" data-v-8ae7def0></span><span class="bottom" data-v-8ae7def0></span></span></button></div></div></div></div><div class="divider" data-v-8c2dd89c><div class="divider-line" data-v-8c2dd89c></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-cf959ac2 data-v-c207e03d><div class="container" data-v-c207e03d><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-c207e03d><span class="vpi-align-left menu-icon" data-v-c207e03d></span><span class="menu-text" data-v-c207e03d>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-c207e03d data-v-5ce1e66e><button data-v-5ce1e66e>Back to top</button><!----></div></div></div><aside class="VPSidebar" data-v-cf959ac2 data-v-fc0344af><div class="curtain" data-v-fc0344af></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-fc0344af><span class="visually-hidden" id="sidebar-aria-label" data-v-fc0344af> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-011116a8><section class="VPSidebarItem level-0 has-active" data-v-011116a8 data-v-a5d4cd7a><div class="item" role="button" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><h2 class="text" data-v-a5d4cd7a>LITEYUKIBOT</h2><!----></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/guide.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Development Guide</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/resource.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Resource Pack</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/lyfunc.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Liteyuki Function</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/plugin.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Plugin</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/comm.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Process Communication</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/best_practices.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>Best Practices</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1 collapsible collapsed is-link has-active" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/index.html" data-v-a5d4cd7a><!--[--><h3 class="text" data-v-a5d4cd7a>liteyuki API</h3><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/bot/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.bot</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/bot/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.bot</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/bot/lifespan.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.bot.lifespan</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/comm/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.comm</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/comm/channel.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.comm.channel</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/comm/event.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.comm.event</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/comm/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.comm</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/comm/storage.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.comm.storage</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-2 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/config.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.config</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/core/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.core</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/core/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.core</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/core/manager.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.core.manager</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/dev/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.dev</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/dev/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.dev</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/dev/observer.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.dev.observer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/dev/plugin.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.dev.plugin</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-2 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/exception.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.exception</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/log.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.log</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-2 collapsible collapsed is-link has-active" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugin/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.plugin</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugin/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugin</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugin/load.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugin.load</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugin/manager.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugin.manager</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugin/model.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugin.model</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugins/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.plugins</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugins/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugins</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugins/liteecho.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugins.liteecho</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-3 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugins/plugin_loader/index.html" data-v-a5d4cd7a><!--[--><h5 class="text" data-v-a5d4cd7a>liteyuki.plugins.plugin_loader</h5><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-4 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/plugins/plugin_loader/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.plugins.plugin_loader</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/index.html" data-v-a5d4cd7a><!--[--><h4 class="text" data-v-a5d4cd7a>liteyuki.session</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/event.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.event</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/matcher.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.matcher</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-3 collapsible collapsed" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" role="button" tabindex="0" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><h5 class="text" data-v-a5d4cd7a>message</h5><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-a5d4cd7a><span class="vpi-chevron-right caret-icon" data-v-a5d4cd7a></span></div></div><div class="items" data-v-a5d4cd7a><!--[--><div class="VPSidebarItem level-4 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/message/segments.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.message.segments</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/models.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.models</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/on.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.on</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/session/rule.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.session.rule</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-2 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/utils.html" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki.utils</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-a5d4cd7a data-v-a5d4cd7a><div class="item" data-v-a5d4cd7a><div class="indicator" data-v-a5d4cd7a></div><a class="VPLink link link" href="/en/dev/api/" data-v-a5d4cd7a><!--[--><p class="text" data-v-a5d4cd7a>liteyuki API</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-cf959ac2 data-v-b8a3f39d><div class="VPDoc has-sidebar has-aside" data-v-b8a3f39d data-v-92d339c1><!--[--><!--]--><div class="container" data-v-92d339c1><div class="aside" data-v-92d339c1><div class="aside-curtain" data-v-92d339c1></div><div class="aside-container" data-v-92d339c1><div class="aside-content" data-v-92d339c1><div class="VPDocAside" data-v-92d339c1 data-v-d894a65d><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-d894a65d data-v-f1cd1f83><div class="content" data-v-f1cd1f83><div class="outline-marker" data-v-f1cd1f83></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-f1cd1f83>Page Content</div><ul class="VPDocOutlineItem root" data-v-f1cd1f83 data-v-4cc82222><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-d894a65d></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-92d339c1><div class="content-container" data-v-92d339c1><!--[--><!--]--><main class="main" data-v-92d339c1><div style="position:relative;" class="vp-doc _en_dev_api_plugin_load" data-v-92d339c1><div><h1 id="module-liteyuki-plugin-load" tabindex="-1"><strong>Module</strong> <code>liteyuki.plugin.load</code> <a class="header-anchor" href="#module-liteyuki-plugin-load" aria-label="Permalink to "**Module** `liteyuki.plugin.load`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : load.py @Software: PyCharm</p><hr><h3 id="func-load-plugin-module-path-str-path-optional-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugin(module_path: str | Path) -> Optional[Plugin]</code> <a class="header-anchor" href="#func-load-plugin-module-path-str-path-optional-plugin" aria-label="Permalink to "***func*** `load_plugin(module_path: str | Path) -> Optional[Plugin]`""></a></h3><p><strong>Description</strong>: 加载单个插件,可以是本地插件或是通过 <code>pip</code> 安装的插件。</p><p><strong>Arguments</strong>:</p><blockquote><ul><li>module_path: 插件名称 <code>path.to.your.plugin</code></li><li>或插件路径 <code>pathlib.Path(path/to/your/plugin)</code>:</li></ul></blockquote><details><summary><b>Source code</b> or <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L30" target="_blank">View on GitHub</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path) -> Optional[Plugin]:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> path_to_module_name(Path(module_path)) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path, Path) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> try</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> import_module(module_path)</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins[module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Plugin(</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">module</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module, </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">module_name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.get(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__plugin_metadata__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> metadata: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'PluginMetadata'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__plugin_metadata__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> display_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.split(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'.'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)[</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.get(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__liteyuki_plugin_meta__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> metadata: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'PluginMetadata'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__liteyuki_plugin_meta__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> display_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> format_display_name(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">metadata.name</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.split(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'.'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)[</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">)"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, metadata.type)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.get(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__plugin_meta__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> metadata: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'PluginMetadata'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__dict__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__plugin_meta__'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> display_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> format_display_name(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">metadata.name</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.split(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'.'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)[</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">)"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, metadata.type)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.opt(</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">colors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">True</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">).warning(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'The metadata of Liteyuki plugin "</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">" is not specified, use empty.'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata(</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> display_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.split(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'.'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)[</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins[module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">].metadata </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> metadata</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.opt(</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">colors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">True</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">).success(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Succeeded to load liteyuki plugin "</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">display_name</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins[module.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__name__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> except</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> Exception</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> as</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> e:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.opt(</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">colors</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">True</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">).success(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Failed to load liteyuki plugin "<r></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"></r>"'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> traceback.print_exc()</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> None</span></span></code></pre></div></details><hr><h3 id="func-load-plugins-plugin-dir-str-ignore-warning-bool-true-set-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugins(*plugin_dir: str, *, ignore_warning: bool = True) -> set[Plugin]</code> <a class="header-anchor" href="#func-load-plugins-plugin-dir-str-ignore-warning-bool-true-set-plugin" aria-label="Permalink to "***func*** `load_plugins(*plugin_dir: str, *, ignore_warning: bool = True) -> set[Plugin]`""></a></h3><p><strong>Description</strong>: 导入文件夹下多个插件</p><p><strong>Arguments</strong>:</p><blockquote><ul><li>plugin_dir: 文件夹路径</li><li>ignore_warning: 是否忽略警告,通常是目录不存在或目录为空</li></ul></blockquote><details><summary><b>Source code</b> or <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L87" target="_blank">View on GitHub</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">plugin_dir: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, ignore_warning: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">True</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> set[Plugin]:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> set</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">()</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> dir_path </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_dir:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.path.exists(dir_path):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ignore_warning:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.warning(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Plugins dir '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">dir_path</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">' does not exist."</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> continue</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.listdir(dir_path):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ignore_warning:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.warning(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Plugins dir '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">dir_path</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">' is empty."</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> continue</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.path.isdir(dir_path):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> not</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ignore_warning:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.warning(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"Plugins dir '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">dir_path</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">' is not a directory."</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> continue</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> f </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.listdir(dir_path):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> path </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path(os.path.join(dir_path, f))</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> None</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.path.isfile(path) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">and</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> f.endswith(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'.py'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">and</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (f </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">!=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> '__init__.py'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">path_to_module_name(Path(dir_path))</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">f[:</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">3</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.path.isdir(path) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">and</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> os.path.exists(os.path.join(path, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'__init__.py'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> path_to_module_name(path)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_name:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(module_name)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins.get(module_name):</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins.add(_plugins[module_name])</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins</span></span></code></pre></div></details><hr><h3 id="func-format-display-name-display-name-str-plugin-type-plugintype-str" tabindex="-1"><em><strong>func</strong></em> <code>format_display_name(display_name: str, plugin_type: PluginType) -> str</code> <a class="header-anchor" href="#func-format-display-name-display-name-str-plugin-type-plugintype-str" aria-label="Permalink to "***func*** `format_display_name(display_name: str, plugin_type: PluginType) -> str`""></a></h3><p><strong>Description</strong>: 设置插件名称颜色,根据不同类型插件设置颜色</p><p><strong>Arguments</strong>:</p><blockquote><ul><li>display_name: 插件名称</li><li>plugin_type: 插件类型</li></ul></blockquote><p><strong>Return</strong>: str: 设置后的插件名称 <!----></p><details><summary><b>Source code</b> or <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L131" target="_blank">View on GitHub</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> format_display_name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(display_name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, plugin_type: PluginType) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'y'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> match</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_type:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">APPLICATION</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'm'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">TEST</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'g'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">MODULE</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'e'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">SERVICE</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'c'</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'<</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">color</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">></span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">display_name</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> [</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">plugin_type.name</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">]</</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">color</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">>'</span></span></code></pre></div></details></div></div></main><footer class="VPDocFooter" data-v-92d339c1 data-v-d71d06df><!--[--><!--]--><div class="edit-info" data-v-d71d06df><div class="edit-link" data-v-d71d06df><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py" target="_blank" rel="noreferrer" data-v-d71d06df><!--[--><span class="vpi-square-pen edit-link-icon" data-v-d71d06df></span> Edit this page on GitHub<!--]--></a></div><div class="last-updated" data-v-d71d06df><p class="VPLastUpdated" data-v-d71d06df data-v-2530b5c9>Last updated: <time datetime="2024-08-31T10:57:48.000Z" data-v-2530b5c9></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-d71d06df><span class="visually-hidden" id="doc-footer-aria-label" data-v-d71d06df>Pager</span><div class="pager" data-v-d71d06df><a class="VPLink link pager-link prev" href="/en/dev/api/plugin/" data-v-d71d06df><!--[--><span class="desc" data-v-d71d06df>Prev Page</span><span class="title" data-v-d71d06df>liteyuki.plugin</span><!--]--></a></div><div class="pager" data-v-d71d06df><a class="VPLink link pager-link next" href="/en/dev/api/plugin/manager.html" data-v-d71d06df><!--[--><span class="desc" data-v-d71d06df>Next Page</span><span class="title" data-v-d71d06df>liteyuki.plugin.manager</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-cf959ac2 data-v-2c1ead0b><div class="container" data-v-2c1ead0b><p class="message" data-v-2c1ead0b>Documentation built with <a href="https://vitepress.dev/">VitePress</a> | API references generated by <a href="https://github.com/LiteyukiStudio/litedoc">litedoc</a></p><p class="copyright" data-v-2c1ead0b>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p></div></footer><!--[--><!--]--></div></div>
|
||
<script>window.__VP_HASH_MAP__=JSON.parse("{\"deploy_config.md\":\"1_CQ0FbK\",\"deploy_fandq.md\":\"BPleytoW\",\"deploy_install.md\":\"Sk9eehU9\",\"dev_api_bot_index.md\":\"Bi674fgO\",\"dev_api_bot_lifespan.md\":\"2zK906gE\",\"dev_api_comm_channel.md\":\"2kL837ew\",\"dev_api_comm_event.md\":\"BU5q7K5I\",\"dev_api_comm_index.md\":\"BQ4CZLqP\",\"dev_api_comm_storage.md\":\"DqJ8aVqB\",\"dev_api_config.md\":\"BF9ZWJMD\",\"dev_api_core_index.md\":\"C7-mYcFb\",\"dev_api_core_manager.md\":\"D-46Ej1L\",\"dev_api_dev_index.md\":\"C-Z4jV0w\",\"dev_api_dev_observer.md\":\"C8n3KGB-\",\"dev_api_dev_plugin.md\":\"kuS0l6X3\",\"dev_api_exception.md\":\"B1ZNvi-7\",\"dev_api_index.md\":\"DCSHyQNH\",\"dev_api_log.md\":\"Cht1l-z0\",\"dev_api_plugin_index.md\":\"Ob9cT1Tw\",\"dev_api_plugin_load.md\":\"B8TUs35a\",\"dev_api_plugin_manager.md\":\"CV_EY-n_\",\"dev_api_plugin_model.md\":\"B6zUTgyK\",\"dev_api_plugins_index.md\":\"BJaF6GJo\",\"dev_api_plugins_liteecho.md\":\"0olLW-gF\",\"dev_api_plugins_plugin_loader_index.md\":\"Bk_JMvR5\",\"dev_api_session_event.md\":\"eoIRQPSp\",\"dev_api_session_index.md\":\"BB5rwUqh\",\"dev_api_session_matcher.md\":\"DY05_Eet\",\"dev_api_session_message_segments.md\":\"0beZiwPd\",\"dev_api_session_models.md\":\"Jq2lUC1f\",\"dev_api_session_on.md\":\"ClG5jupL\",\"dev_api_session_rule.md\":\"Jlr6fWcz\",\"dev_api_utils.md\":\"BCPR7M6j\",\"dev_best_practices.md\":\"Cymrt9FM\",\"dev_comm.md\":\"BdU9h70O\",\"dev_guide.md\":\"Dv_76mVA\",\"dev_lyfunc.md\":\"CTyKZzIv\",\"dev_plugin.md\":\"Cw4jmM1r\",\"dev_resource.md\":\"DHaliAic\",\"en_deploy_config.md\":\"BQn5E2Bj\",\"en_deploy_fandq.md\":\"BrjsxnAp\",\"en_deploy_install.md\":\"YWJCbrQ9\",\"en_dev_api_bot_index.md\":\"D7pBXyxE\",\"en_dev_api_bot_lifespan.md\":\"CB0llI1b\",\"en_dev_api_comm_channel.md\":\"BEDKOQou\",\"en_dev_api_comm_event.md\":\"DZFP2XdR\",\"en_dev_api_comm_index.md\":\"fm8_o36k\",\"en_dev_api_comm_storage.md\":\"CrdoT2Rt\",\"en_dev_api_config.md\":\"DXvPY7q0\",\"en_dev_api_core_index.md\":\"B8YwtibJ\",\"en_dev_api_core_manager.md\":\"DY8pAztC\",\"en_dev_api_dev_index.md\":\"BsvLsbb9\",\"en_dev_api_dev_observer.md\":\"Z8JLVw48\",\"en_dev_api_dev_plugin.md\":\"B4YGlvi7\",\"en_dev_api_exception.md\":\"Bi5kZE7B\",\"en_dev_api_index.md\":\"BRwWnJjT\",\"en_dev_api_log.md\":\"CYlQgvc9\",\"en_dev_api_plugin_index.md\":\"DMMLxcgg\",\"en_dev_api_plugin_load.md\":\"DBI0e8uW\",\"en_dev_api_plugin_manager.md\":\"YuROJtz4\",\"en_dev_api_plugin_model.md\":\"DzkLtdgt\",\"en_dev_api_plugins_index.md\":\"CcwDiD2t\",\"en_dev_api_plugins_liteecho.md\":\"XcPv4epx\",\"en_dev_api_plugins_plugin_loader_index.md\":\"DfULXUOM\",\"en_dev_api_session_event.md\":\"C68739Mu\",\"en_dev_api_session_index.md\":\"DlOjeQ_f\",\"en_dev_api_session_matcher.md\":\"Dsdkm06f\",\"en_dev_api_session_message_segments.md\":\"C40mpa6j\",\"en_dev_api_session_models.md\":\"5kxE35_Q\",\"en_dev_api_session_on.md\":\"CF0RXj7a\",\"en_dev_api_session_rule.md\":\"e29t-o48\",\"en_dev_api_utils.md\":\"IxF_QKMD\",\"en_dev_best_practices.md\":\"BL1nZ6wX\",\"en_dev_comm.md\":\"BD35_Pc4\",\"en_dev_guide.md\":\"S3tTiid2\",\"en_dev_lyfunc.md\":\"C0J7k9S-\",\"en_dev_plugin.md\":\"CZ1fZOSs\",\"en_dev_resource.md\":\"gbYl02_m\",\"en_index.md\":\"B7vJePRY\",\"en_store_plugin.md\":\"CKMtd26v\",\"en_store_resource.md\":\"B0jzMlOl\",\"en_usage_agreement.md\":\"DB-DF9k9\",\"en_usage_basic.md\":\"CqXCUHon\",\"en_usage_extra.md\":\"NcwXX0cF\",\"index.md\":\"DHOhfNpJ\",\"store_plugin.md\":\"BG-hPX54\",\"store_resource.md\":\"DxmwBnW7\",\"usage_agreement.md\":\"DgIDC_u9\",\"usage_basic.md\":\"D0kl3gm6\",\"usage_extra.md\":\"CsRUq0wh\"}");function deserializeFunctions(r){return Array.isArray(r)?r.map(deserializeFunctions):typeof r=="object"&&r!==null?Object.keys(r).reduce((t,n)=>(t[n]=deserializeFunctions(r[n]),t),{}):typeof r=="string"&&r.startsWith("_vp-fn_")?new Function(`return ${r.slice(7)}`)():r};window.__VP_SITE_DATA__=deserializeFunctions(JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"VitePress\",\"description\":\"A VitePress site\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"light\":\"/liteyuki.svg\",\"dark\":\"/liteyuki-dark.svg\",\"alt\":\"LiteyukiBot Logo\"},\"sidebar\":{\"/dev/\":{\"base\":\"/dev/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"开发指南\",\"link\":\"guide\"},{\"text\":\"资源包开发\",\"link\":\"resource\"},{\"text\":\"轻雪函数\",\"link\":\"lyfunc\"},{\"text\":\"插件开发\",\"link\":\"plugin\"},{\"text\":\"进程通信\",\"link\":\"comm\"},{\"text\":\"最佳实践\",\"link\":\"best_practices\"},{\"text\":\"liteyuki API\",\"link\":\"api/index.md\",\"items\":[{\"text\":\"liteyuki.bot\",\"link\":\"api/bot/index.md\",\"items\":[{\"text\":\"liteyuki.bot\",\"link\":\"api/bot/\"},{\"text\":\"liteyuki.bot.lifespan\",\"link\":\"api/bot/lifespan\"}],\"collapsed\":true},{\"text\":\"liteyuki.comm\",\"link\":\"api/comm/index.md\",\"items\":[{\"text\":\"liteyuki.comm.channel\",\"link\":\"api/comm/channel\"},{\"text\":\"liteyuki.comm.event\",\"link\":\"api/comm/event\"},{\"text\":\"liteyuki.comm\",\"link\":\"api/comm/\"},{\"text\":\"liteyuki.comm.storage\",\"link\":\"api/comm/storage\"}],\"collapsed\":true},{\"text\":\"liteyuki.config\",\"link\":\"api/config\"},{\"text\":\"liteyuki.core\",\"link\":\"api/core/index.md\",\"items\":[{\"text\":\"liteyuki.core\",\"link\":\"api/core/\"},{\"text\":\"liteyuki.core.manager\",\"link\":\"api/core/manager\"}],\"collapsed\":true},{\"text\":\"liteyuki.dev\",\"link\":\"api/dev/index.md\",\"items\":[{\"text\":\"liteyuki.dev\",\"link\":\"api/dev/\"},{\"text\":\"liteyuki.dev.observer\",\"link\":\"api/dev/observer\"},{\"text\":\"liteyuki.dev.plugin\",\"link\":\"api/dev/plugin\"}],\"collapsed\":true},{\"text\":\"liteyuki.exception\",\"link\":\"api/exception\"},{\"text\":\"liteyuki.log\",\"link\":\"api/log\"},{\"text\":\"liteyuki.plugin\",\"link\":\"api/plugin/index.md\",\"items\":[{\"text\":\"liteyuki.plugin\",\"link\":\"api/plugin/\"},{\"text\":\"liteyuki.plugin.load\",\"link\":\"api/plugin/load\"},{\"text\":\"liteyuki.plugin.manager\",\"link\":\"api/plugin/manager\"},{\"text\":\"liteyuki.plugin.model\",\"link\":\"api/plugin/model\"}],\"collapsed\":true},{\"text\":\"liteyuki.plugins\",\"link\":\"api/plugins/index.md\",\"items\":[{\"text\":\"liteyuki.plugins\",\"link\":\"api/plugins/\"},{\"text\":\"liteyuki.plugins.liteecho\",\"link\":\"api/plugins/liteecho\"},{\"text\":\"liteyuki.plugins.plugin_loader\",\"link\":\"api/plugins/plugin_loader/index.md\",\"items\":[{\"text\":\"liteyuki.plugins.plugin_loader\",\"link\":\"api/plugins/plugin_loader/\"}],\"collapsed\":true}],\"collapsed\":true},{\"text\":\"liteyuki.session\",\"link\":\"api/session/index.md\",\"items\":[{\"text\":\"liteyuki.session.event\",\"link\":\"api/session/event\"},{\"text\":\"liteyuki.session\",\"link\":\"api/session/\"},{\"text\":\"liteyuki.session.matcher\",\"link\":\"api/session/matcher\"},{\"text\":\"message\",\"items\":[{\"text\":\"liteyuki.session.message.segments\",\"link\":\"api/session/message/segments\"}],\"collapsed\":true},{\"text\":\"liteyuki.session.models\",\"link\":\"api/session/models\"},{\"text\":\"liteyuki.session.on\",\"link\":\"api/session/on\"},{\"text\":\"liteyuki.session.rule\",\"link\":\"api/session/rule\"}],\"collapsed\":true},{\"text\":\"liteyuki.utils\",\"link\":\"api/utils\"},{\"text\":\"liteyuki API\",\"link\":\"api/\"}],\"collapsed\":true}]}]},\"/store/\":{\"base\":\"/store/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"资源商店\",\"link\":\"resource\"},{\"text\":\"插件商店\",\"link\":\"plugin\"}]}]},\"/usage/\":{\"base\":\"/usage/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"基础插件\",\"link\":\"basic\"},{\"text\":\"功能命令\",\"link\":\"extra\"},{\"text\":\"用户协议\",\"link\":\"agreement\"}]}]},\"/deploy/\":{\"base\":\"/deploy/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"安装\",\"link\":\"install\"},{\"text\":\"配置\",\"link\":\"config\"},{\"text\":\"答疑\",\"link\":\"fandq\"}]}]},\"/en/dev/\":{\"base\":\"/en/dev/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"Development Guide\",\"link\":\"guide\"},{\"text\":\"Resource Pack\",\"link\":\"resource\"},{\"text\":\"Liteyuki Function\",\"link\":\"lyfunc\"},{\"text\":\"Plugin\",\"link\":\"plugin\"},{\"text\":\"Process Communication\",\"link\":\"comm\"},{\"text\":\"Best Practices\",\"link\":\"best_practices\"},{\"text\":\"liteyuki API\",\"link\":\"api/index.md\",\"items\":[{\"text\":\"liteyuki.bot\",\"link\":\"api/bot/index.md\",\"items\":[{\"text\":\"liteyuki.bot\",\"link\":\"api/bot/\"},{\"text\":\"liteyuki.bot.lifespan\",\"link\":\"api/bot/lifespan\"}],\"collapsed\":true},{\"text\":\"liteyuki.comm\",\"link\":\"api/comm/index.md\",\"items\":[{\"text\":\"liteyuki.comm.channel\",\"link\":\"api/comm/channel\"},{\"text\":\"liteyuki.comm.event\",\"link\":\"api/comm/event\"},{\"text\":\"liteyuki.comm\",\"link\":\"api/comm/\"},{\"text\":\"liteyuki.comm.storage\",\"link\":\"api/comm/storage\"}],\"collapsed\":true},{\"text\":\"liteyuki.config\",\"link\":\"api/config\"},{\"text\":\"liteyuki.core\",\"link\":\"api/core/index.md\",\"items\":[{\"text\":\"liteyuki.core\",\"link\":\"api/core/\"},{\"text\":\"liteyuki.core.manager\",\"link\":\"api/core/manager\"}],\"collapsed\":true},{\"text\":\"liteyuki.dev\",\"link\":\"api/dev/index.md\",\"items\":[{\"text\":\"liteyuki.dev\",\"link\":\"api/dev/\"},{\"text\":\"liteyuki.dev.observer\",\"link\":\"api/dev/observer\"},{\"text\":\"liteyuki.dev.plugin\",\"link\":\"api/dev/plugin\"}],\"collapsed\":true},{\"text\":\"liteyuki.exception\",\"link\":\"api/exception\"},{\"text\":\"liteyuki.log\",\"link\":\"api/log\"},{\"text\":\"liteyuki.plugin\",\"link\":\"api/plugin/index.md\",\"items\":[{\"text\":\"liteyuki.plugin\",\"link\":\"api/plugin/\"},{\"text\":\"liteyuki.plugin.load\",\"link\":\"api/plugin/load\"},{\"text\":\"liteyuki.plugin.manager\",\"link\":\"api/plugin/manager\"},{\"text\":\"liteyuki.plugin.model\",\"link\":\"api/plugin/model\"}],\"collapsed\":true},{\"text\":\"liteyuki.plugins\",\"link\":\"api/plugins/index.md\",\"items\":[{\"text\":\"liteyuki.plugins\",\"link\":\"api/plugins/\"},{\"text\":\"liteyuki.plugins.liteecho\",\"link\":\"api/plugins/liteecho\"},{\"text\":\"liteyuki.plugins.plugin_loader\",\"link\":\"api/plugins/plugin_loader/index.md\",\"items\":[{\"text\":\"liteyuki.plugins.plugin_loader\",\"link\":\"api/plugins/plugin_loader/\"}],\"collapsed\":true}],\"collapsed\":true},{\"text\":\"liteyuki.session\",\"link\":\"api/session/index.md\",\"items\":[{\"text\":\"liteyuki.session.event\",\"link\":\"api/session/event\"},{\"text\":\"liteyuki.session\",\"link\":\"api/session/\"},{\"text\":\"liteyuki.session.matcher\",\"link\":\"api/session/matcher\"},{\"text\":\"message\",\"items\":[{\"text\":\"liteyuki.session.message.segments\",\"link\":\"api/session/message/segments\"}],\"collapsed\":true},{\"text\":\"liteyuki.session.models\",\"link\":\"api/session/models\"},{\"text\":\"liteyuki.session.on\",\"link\":\"api/session/on\"},{\"text\":\"liteyuki.session.rule\",\"link\":\"api/session/rule\"}],\"collapsed\":true},{\"text\":\"liteyuki.utils\",\"link\":\"api/utils\"},{\"text\":\"liteyuki API\",\"link\":\"api/\"}],\"collapsed\":true}]}]},\"/en/store/\":{\"base\":\"/en/store/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"Resource Store\",\"link\":\"resource\"},{\"text\":\"Plugin Store\",\"link\":\"plugin\"}]}]},\"/en/usage/\":{\"base\":\"/en/usage/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"基础插件\",\"link\":\"basic\"},{\"text\":\"功能命令\",\"link\":\"extra\"},{\"text\":\"用户协议\",\"link\":\"agreement\"}]}]},\"/en/deploy/\":{\"base\":\"/en/deploy/\",\"items\":[{\"text\":\"LITEYUKIBOT\",\"items\":[{\"text\":\"Install\",\"link\":\"install\"},{\"text\":\"Configurations\",\"link\":\"config\"},{\"text\":\"FAQ\",\"link\":\"fandq\"}]}]}},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/LiteyukiStudio/LiteyukiBot\"},{\"icon\":{\"svg\":\"<svg t=\\\"1725391346807\\\" class=\\\"icon\\\" viewBox=\\\"0 0 1025 1024\\\" version=\\\"1.1\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" p-id=\\\"5067\\\" width=\\\"256\\\" height=\\\"256\\\"><path d=\\\"M1004.692673 466.396616l-447.094409-447.073929c-25.743103-25.763582-67.501405-25.763582-93.264987 0l-103.873521 103.873521 78.171378 78.171378c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928 0 14.827372-3.358686 28.856031-9.359266 41.389666l127.97824 127.97824c12.533635-6.00058 26.562294-9.359266 41.389666-9.359266 53.02219 0 96.00928 42.98709 96.00928 96.00928s-42.98709 96.00928-96.00928 96.00928-96.00928-42.98709-96.00928-96.00928c0-14.827372 3.358686-28.856031 9.359266-41.389666l-127.97824-127.97824c-3.051489 1.454065-6.184898 2.744293-9.379746 3.870681l0 266.97461c37.273227 13.188988 63.99936 48.721433 63.99936 90.520695 0 53.02219-42.98709 96.00928-96.00928 96.00928s-96.00928-42.98709-96.00928-96.00928c0-41.799262 26.726133-77.331707 63.99936-90.520695l0-266.97461c-37.273227-13.188988-63.99936-48.721433-63.99936-90.520695 0-14.827372 3.358686-28.856031 9.359266-41.389666l-78.171378-78.171378-295.892081 295.871601c-25.743103 25.784062-25.743103 67.542365 0 93.285467l447.114889 447.073929c25.743103 25.743103 67.480925 25.743103 93.264987 0l445.00547-445.00547c25.763582-25.763582 25.763582-67.542365 0-93.285467z\\\" fill=\\\"#a2d8f4\\\" p-id=\\\"5068\\\"></path></svg>\"},\"link\":\"https://git.liteyuki.icu/bot/app\"}],\"search\":{\"provider\":\"local\",\"options\":{\"locales\":{\"root\":{\"translations\":{\"button\":{\"buttonText\":\"搜索文档\",\"buttonAriaLabel\":\"打开搜索框\"},\"modal\":{\"noResultsText\":\"没有找到搜索结果\",\"resetButtonTitle\":\"清除查询条件\",\"footer\":{\"selectText\":\"选择\",\"navigateText\":\"切换\"}}}},\"en\":{\"translations\":{\"button\":{\"buttonText\":\"Search\",\"buttonAriaLabel\":\"Search\"},\"modal\":{\"noResultsText\":\"No results found\",\"resetButtonTitle\":\"Reset search query\",\"footer\":{\"selectText\":\"Select\",\"navigateText\":\"Navigate\"}}}}}}}},\"locales\":{\"root\":{\"label\":\"简体中文\",\"lang\":\"zh-Hans\",\"title\":\"轻雪机器人\",\"description\":\"一个综合性的机器人应用及管理框架\",\"themeConfig\":{\"nav\":[{\"text\":\"部署\",\"link\":\"/deploy/install\"},{\"text\":\"使用\",\"link\":\"/usage/basic\"},{\"text\":\"扩展\",\"link\":\"/store/resource\"},{\"text\":\"开发\",\"link\":\"/dev/guide\"}],\"docFooter\":{\"prev\":\"上一页\",\"next\":\"下一页\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/dev\\\\/api/;\\n console.log(filePath);\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n if (filePath.split(\\\"/\\\").pop().split(\\\".\\\")[0] === filePath.split(\\\"/\\\").slice(-2, -1)[0]) {\\n filePath = filePath.split(\\\"/\\\").slice(0, -1).join(\\\"/\\\") + \\\"/__init__.py\\\";\\n }\\n return `https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki${filePath}`;\\n } else {\\n return `https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"在 GitHub 上编辑此页\"},\"footer\":{\"message\":\"文档由 <a href=\\\"https://vitepress.dev/\\\">VitePress</a> 构建 | API引用由 <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a> 生成\",\"copyright\":\"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved\"},\"outline\":{\"label\":\"页面内容\",\"level\":[2,6]},\"langMenuLabel\":\"语言\",\"returnToTopLabel\":\"返回顶部\",\"sidebarMenuLabel\":\"菜单\",\"darkModeSwitchLabel\":\"主题\",\"lightModeSwitchTitle\":\"轻色模式\",\"darkModeSwitchTitle\":\"深色模式\"}},\"en\":{\"label\":\"English\",\"lang\":\"en-US\",\"title\":\"LiteyukiBot\",\"description\":\"A high-performance, easy-to-use chatbot framework and application\",\"themeConfig\":{\"nav\":[{\"text\":\"Deploy\",\"link\":\"/en/deploy/install\"},{\"text\":\"Usage\",\"link\":\"/en/usage/basic\"},{\"text\":\"Extension\",\"link\":\"/en/store/resource\"},{\"text\":\"Develop\",\"link\":\"/en/dev/guide\"}],\"docFooter\":{\"prev\":\"Prev Page\",\"next\":\"Next Page\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/dev\\\\/api/;\\n console.log(filePath);\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n if (filePath.split(\\\"/\\\").pop().split(\\\".\\\")[0] === filePath.split(\\\"/\\\").slice(-2, -1)[0]) {\\n filePath = filePath.split(\\\"/\\\").slice(0, -1).join(\\\"/\\\") + \\\"/__init__.py\\\";\\n }\\n return `https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki${filePath}`;\\n } else {\\n return `https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"Edit this page on GitHub\"},\"footer\":{\"message\":\"Documentation built with <a href=\\\"https://vitepress.dev/\\\">VitePress</a> | API references generated by <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a>\",\"copyright\":\"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved\"},\"outline\":{\"label\":\"Page Content\",\"level\":[2,6]},\"langMenuLabel\":\"Language\",\"returnToTopLabel\":\"Back to top\",\"sidebarMenuLabel\":\"Menu\",\"darkModeSwitchLabel\":\"Theme\",\"lightModeSwitchTitle\":\"Light Mode\",\"darkModeSwitchTitle\":\"Dark Mode\"}}},\"scrollOffset\":134,\"cleanUrls\":false}"));</script>
|
||
|
||
</body>
|
||
</html> |