This commit is contained in:
远野千束 2024-09-20 19:13:26 +00:00
parent d797e3d6ec
commit 6c6d142f6d
134 changed files with 553 additions and 497 deletions

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{R as p}from"./chunks/theme.C8yLQ2CM.js";import{U as o,aa as u,ab as l,ac as c,ad as f,ae as d,af as m,ag as h,ah as g,ai as A,aj as y,d as P,u as v,y as w,x as C,ak as R,al as b,am as E,an as S}from"./chunks/framework.C4_mTacX.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=v();return w(()=>{C(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&R(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function j(){globalThis.__VITEPRESS__=!0;const e=D(),a=x();a.provide(l,e);const t=c(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function x(){return g(T)}function D(){let e=o,a;return A(t=>{let n=y(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&j().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{j as createApp};
import{R as p}from"./chunks/theme.CnRznGU7.js";import{U as o,aa as u,ab as l,ac as c,ad as f,ae as d,af as m,ag as h,ah as g,ai as A,aj as y,d as P,u as v,y as w,x as C,ak as R,al as b,am as E,an as S}from"./chunks/framework.C4_mTacX.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=v();return w(()=>{C(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&R(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function j(){globalThis.__VITEPRESS__=!0;const e=D(),a=x();a.provide(l,e);const t=c(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function x(){return g(T)}function D(){let e=o,a;return A(t=>{let n=y(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&j().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{j as createApp};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{g as c}from"./theme.C8yLQ2CM.js";import{d as e,o as a,c as n,j as t,t as i,k as p,_ as u}from"./framework.C4_mTacX.js";const _="https://github.com/",o="LiteyukiStudio/LiteyukiBot",b=`${_}${o}`,m={class:"contributor-bar"},l=e({__name:"ContributorBar",setup(h){const r=`https://contrib.rocks/image?repo=${o}`,s=`${b}/graphs/contributors`;return(d,f)=>(a(),n("div",m,[t("h2",null,i(p(c)("thx_contributors")),1),t("a",{href:s},[t("div",{class:"contributor-list"},[t("img",{src:r,alt:"Contributors"})])])]))}}),k=u(l,[["__scopeId","data-v-bc374713"]]);export{k as C};
import{g as c}from"./theme.CnRznGU7.js";import{d as e,o as a,c as n,j as t,t as i,k as p,_ as u}from"./framework.C4_mTacX.js";const _="https://github.com/",o="LiteyukiStudio/LiteyukiBot",b=`${_}${o}`,m={class:"contributor-bar"},l=e({__name:"ContributorBar",setup(h){const r=`https://contrib.rocks/image?repo=${o}`,s=`${b}/graphs/contributors`;return(d,f)=>(a(),n("div",m,[t("h2",null,i(p(c)("thx_contributors")),1),t("a",{href:s},[t("div",{class:"contributor-list"},[t("img",{src:r,alt:"Contributors"})])])]))}}),k=u(l,[["__scopeId","data-v-bc374713"]]);export{k as C};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as e,c as t,o as i,a9 as a}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726859552000}'),r={name:"dev/best_practices.md"},o=a('<h1 id="最佳实践" tabindex="-1">最佳实践 <a class="header-anchor" href="#最佳实践" aria-label="Permalink to &quot;最佳实践&quot;"></a></h1><h2 id="机器人应用" tabindex="-1">机器人应用 <a class="header-anchor" href="#机器人应用" aria-label="Permalink to &quot;机器人应用&quot;"></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>:轻雪官方机器人</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>TriM 官方定制轻雪机器人</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>:基于 轻雪 和 github model 的可爱猫娘机器人</li></ul><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to &quot;插件&quot;"></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>:轻雪机器人 NoneBot 插件,让轻雪支持 NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>NoneBot 插件,让 NoneBot 支持轻雪</li></ul><h2 id="其他" tabindex="-1">其他 <a class="header-anchor" href="#其他" aria-label="Permalink to &quot;其他&quot;"></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>:轻雪官方星图,展示轻雪的所有实例及其位置分布</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>TRSS LiteyukiBot 管理脚本</li></ul>',7),l=[o];function n(u,s,h,c,_,d){return i(),t("div",null,l)}const p=e(r,[["render",n]]);export{k as __pageData,p as default};

View File

@ -0,0 +1 @@
import{_ as e,c as t,o as i,a9 as a}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726859552000}'),r={name:"dev/best_practices.md"},o=a("",7),l=[o];function n(u,s,h,c,_,d){return i(),t("div",null,l)}const p=e(r,[["render",n]]);export{k as __pageData,p as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{C as e}from"./chunks/ContributorBar.BjlgZyYr.js";import{c as o,I as i,a9 as l,o as t}from"./chunks/framework.C4_mTacX.js";import"./chunks/theme.C8yLQ2CM.js";const a=l("",16),g=JSON.parse('{"title":"开发指南","description":"","frontmatter":{"title":"开发指南","order":0},"headers":[],"relativePath":"dev/guide.md","filePath":"zh/dev/guide.md","lastUpdated":1725389024000}'),r={name:"dev/guide.md"},m=Object.assign(r,{setup(d){return(c,u)=>(t(),o("div",null,[a,i(e)]))}});export{g as __pageData,m as default};
import{C as e}from"./chunks/ContributorBar.B0Ast80K.js";import{c as o,I as i,a9 as l,o as t}from"./chunks/framework.C4_mTacX.js";import"./chunks/theme.CnRznGU7.js";const a=l("",16),g=JSON.parse('{"title":"开发指南","description":"","frontmatter":{"title":"开发指南","order":0},"headers":[],"relativePath":"dev/guide.md","filePath":"zh/dev/guide.md","lastUpdated":1725389024000}'),r={name:"dev/guide.md"},m=Object.assign(r,{setup(d){return(c,u)=>(t(),o("div",null,[a,i(e)]))}});export{g as __pageData,m as default};

View File

@ -0,0 +1 @@
import{_ as t,c as e,o as i,a9 as a}from"./chunks/framework.C4_mTacX.js";const d=JSON.parse('{"title":"Best Practices","description":"","frontmatter":{"title":"Best Practices","order":10},"headers":[],"relativePath":"en/dev/best_practices.md","filePath":"en/dev/best_practices.md","lastUpdated":1726859552000}'),r={name:"en/dev/best_practices.md"},o=a('<h1 id="best-practices" tabindex="-1">Best Practices <a class="header-anchor" href="#best-practices" aria-label="Permalink to &quot;Best Practices&quot;"></a></h1><h2 id="bot-applications" tabindex="-1">Bot applications <a class="header-anchor" href="#bot-applications" aria-label="Permalink to &quot;Bot applications&quot;"></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>: Liteyuki Official Bot</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>: TriM Official Custom Liteyuki Bot</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>: A cute cat girl bot based on Liteyuki and the github model</li></ul><h2 id="plugins" tabindex="-1">plugins <a class="header-anchor" href="#plugins" aria-label="Permalink to &quot;plugins&quot;"></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>: Liteyuki Bot NoneBot plugin, allowing Liteyuki to support NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>: NoneBot plugin, allowing NoneBot to support Liteyuki</li></ul><h2 id="others" tabindex="-1">Others <a class="header-anchor" href="#others" aria-label="Permalink to &quot;Others&quot;"></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>: Liteyuki official star map, showing all instances of Liteyuki and their location distribution</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>: LiteyukiBot management script</li></ul>',7),l=[o];function n(s,u,c,h,p,k){return i(),e("div",null,l)}const _=t(r,[["render",n]]);export{d as __pageData,_ as default};

View File

@ -0,0 +1 @@
import{_ as t,c as e,o as i,a9 as a}from"./chunks/framework.C4_mTacX.js";const d=JSON.parse('{"title":"Best Practices","description":"","frontmatter":{"title":"Best Practices","order":10},"headers":[],"relativePath":"en/dev/best_practices.md","filePath":"en/dev/best_practices.md","lastUpdated":1726859552000}'),r={name:"en/dev/best_practices.md"},o=a("",7),l=[o];function n(s,u,c,h,p,k){return i(),e("div",null,l)}const _=t(r,[["render",n]]);export{d as __pageData,_ as default};

View File

@ -1 +0,0 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const g=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"en/dev/comm.md","filePath":"en/dev/comm.md","lastUpdated":1725102337000}'),e={name:"en/dev/comm.md"},t=n("",19),l=[t];function h(p,k,r,o,d,c){return a(),i("div",null,l)}const y=s(e,[["render",h]]);export{g as __pageData,y as default};

View File

@ -1,4 +1,4 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const g=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"en/dev/comm.md","filePath":"en/dev/comm.md","lastUpdated":1725102337000}'),e={name:"en/dev/comm.md"},t=n(`<h1 id="channel-communication" tabindex="-1"><strong>Channel Communication</strong> <a class="header-anchor" href="#channel-communication" aria-label="Permalink to &quot;**Channel Communication**&quot;"></a></h1><h3 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-label="Permalink to &quot;Introduction&quot;"></a></h3><p>LiteyukiBot is running in the main process MainProcess, and other plugin framework processes are child processes that come with it. Therefore, it is impossible to communicate through shared memory and direct object transfer. Liteyuki provides a channel <a href="./api/comm/channel.html#class-channel-generic-t"><code>Channel</code></a> for inter-process communication like <code>go</code>. You can send messages to other processes through <a href="./api/comm/channel.html#class-channel-generic-t"><code>Channel</code></a> and listen to messages from other processes.</p><h3 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to &quot;Example&quot;"></a></h3><p>The channel is full-duplex, with two receiving modes, but only one mode can be used for a channel, that is, passive mode and active mode, passive mode is implemented by the <code>chan.on_receive()</code> decorator callback function, and active mode needs to call <code>chan.receive()</code> to implement</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code></li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><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;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const g=JSON.parse('{"title":"Process Communication","description":"","frontmatter":{"title":"Process Communication","order":4},"headers":[],"relativePath":"en/dev/comm.md","filePath":"en/dev/comm.md","lastUpdated":1726859552000}'),e={name:"en/dev/comm.md"},t=n(`<h1 id="channel-communication" tabindex="-1"><strong>Channel Communication</strong> <a class="header-anchor" href="#channel-communication" aria-label="Permalink to &quot;**Channel Communication**&quot;"></a></h1><h3 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-label="Permalink to &quot;Introduction&quot;"></a></h3><p>LiteyukiBot is running in the main process MainProcess, and other plugin framework processes are child processes that come with it. Therefore, it is impossible to communicate through shared memory and direct object transfer. Liteyuki provides a channel <a href="./api/comm/channel.html#class-channel-generic-t"><code>Channel</code></a> for inter-process communication like <code>go</code>. You can send messages to other processes through <a href="./api/comm/channel.html#class-channel-generic-t"><code>Channel</code></a> and listen to messages from other processes.</p><h3 id="example" tabindex="-1">Example <a class="header-anchor" href="#example" aria-label="Permalink to &quot;Example&quot;"></a></h3><p>The channel is full-duplex, with two receiving modes, but only one mode can be used for a channel, that is, passive mode and active mode, passive mode is implemented by the <code>chan.on_receive()</code> decorator callback function, and active mode needs to call <code>chan.receive()</code> to implement</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code></li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><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;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.comm </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_channel, Channel</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_bot</span></span>

View File

@ -0,0 +1 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const g=JSON.parse('{"title":"Process Communication","description":"","frontmatter":{"title":"Process Communication","order":4},"headers":[],"relativePath":"en/dev/comm.md","filePath":"en/dev/comm.md","lastUpdated":1726859552000}'),e={name:"en/dev/comm.md"},t=n("",19),l=[t];function h(p,k,r,o,d,c){return a(),i("div",null,l)}const y=s(e,[["render",h]]);export{g as __pageData,y as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{C as e}from"./chunks/ContributorBar.BjlgZyYr.js";import{c as o,I as t,a9 as i,o as r}from"./chunks/framework.C4_mTacX.js";import"./chunks/theme.C8yLQ2CM.js";const a=i("",16),p=JSON.parse('{"title":"Development Guide","description":"","frontmatter":{"title":"Development Guide","order":0},"headers":[],"relativePath":"en/dev/guide.md","filePath":"en/dev/guide.md","lastUpdated":1725389024000}'),l={name:"en/dev/guide.md"},g=Object.assign(l,{setup(n){return(d,s)=>(r(),o("div",null,[a,t(e)]))}});export{p as __pageData,g as default};
import{C as e}from"./chunks/ContributorBar.B0Ast80K.js";import{c as o,I as t,a9 as i,o as r}from"./chunks/framework.C4_mTacX.js";import"./chunks/theme.CnRznGU7.js";const a=i("",16),p=JSON.parse('{"title":"Development Guide","description":"","frontmatter":{"title":"Development Guide","order":0},"headers":[],"relativePath":"en/dev/guide.md","filePath":"en/dev/guide.md","lastUpdated":1725389024000}'),l={name:"en/dev/guide.md"},g=Object.assign(l,{setup(n){return(d,s)=>(r(),o("div",null,[a,t(e)]))}});export{p as __pageData,g as default};

View File

@ -1 +0,0 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const F=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"en/dev/lyfunc.md","filePath":"en/dev/lyfunc.md","lastUpdated":1725102337000}'),t={name:"en/dev/lyfunc.md"},l=n("",19),e=[l];function h(p,k,d,r,o,c){return a(),i("div",null,e)}const y=s(t,[["render",h]]);export{F as __pageData,y as default};

View File

@ -1,4 +1,4 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const F=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"en/dev/lyfunc.md","filePath":"en/dev/lyfunc.md","lastUpdated":1725102337000}'),t={name:"en/dev/lyfunc.md"},l=n(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to &quot;**轻雪函数**&quot;"></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能它允许你在轻雪中运行一些自定义的由数据驱动的命令类似于Minecraft的mcfunction属于资源包的一部分但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to &quot;**函数文件**&quot;"></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出&quot;hello world&quot;</span></span>
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const F=JSON.parse('{"title":"Liteyuki Function","description":"","frontmatter":{"title":"Liteyuki Function","order":2},"headers":[],"relativePath":"en/dev/lyfunc.md","filePath":"en/dev/lyfunc.md","lastUpdated":1726859552000}'),t={name:"en/dev/lyfunc.md"},l=n(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to &quot;**轻雪函数**&quot;"></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能它允许你在轻雪中运行一些自定义的由数据驱动的命令类似于Minecraft的mcfunction属于资源包的一部分但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to &quot;**函数文件**&quot;"></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出&quot;hello world&quot;</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cmd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> world</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 如果你想同时输出多行内容可以尝试换行符(Python格式)</span></span>

View File

@ -0,0 +1 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const F=JSON.parse('{"title":"Liteyuki Function","description":"","frontmatter":{"title":"Liteyuki Function","order":2},"headers":[],"relativePath":"en/dev/lyfunc.md","filePath":"en/dev/lyfunc.md","lastUpdated":1726859552000}'),t={name:"en/dev/lyfunc.md"},l=n("",19),e=[l];function h(p,k,d,r,o,c){return a(),i("div",null,e)}const y=s(t,[["render",h]]);export{F as __pageData,y as default};

View File

@ -1 +0,0 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const y=JSON.parse('{"title":"轻雪插件开发","description":"","frontmatter":{"title":"轻雪插件开发","order":3},"headers":[],"relativePath":"en/dev/plugin.md","filePath":"en/dev/plugin.md","lastUpdated":1725102337000}'),t={name:"en/dev/plugin.md"},h=n("",19),l=[h];function p(e,k,d,r,E,o){return a(),i("div",null,l)}const c=s(t,[["render",p]]);export{y as __pageData,c as default};

View File

@ -1,4 +1,4 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const y=JSON.parse('{"title":"轻雪插件开发","description":"","frontmatter":{"title":"轻雪插件开发","order":3},"headers":[],"relativePath":"en/dev/plugin.md","filePath":"en/dev/plugin.md","lastUpdated":1725102337000}'),t={name:"en/dev/plugin.md"},h=n(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to &quot;简介&quot;"></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to &quot;开始&quot;"></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to &quot;创建插件&quot;"></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><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;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const y=JSON.parse('{"title":"Liteyuki Plugin","description":"","frontmatter":{"title":"Liteyuki Plugin","order":3},"headers":[],"relativePath":"en/dev/plugin.md","filePath":"en/dev/plugin.md","lastUpdated":1726859552000}'),t={name:"en/dev/plugin.md"},h=n(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to &quot;简介&quot;"></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to &quot;开始&quot;"></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to &quot;创建插件&quot;"></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><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;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> .watch_dog </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # </span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 定义插件元数据</span></span>

View File

@ -0,0 +1 @@
import{_ as s,c as i,o as a,a9 as n}from"./chunks/framework.C4_mTacX.js";const y=JSON.parse('{"title":"Liteyuki Plugin","description":"","frontmatter":{"title":"Liteyuki Plugin","order":3},"headers":[],"relativePath":"en/dev/plugin.md","filePath":"en/dev/plugin.md","lastUpdated":1726859552000}'),t={name:"en/dev/plugin.md"},h=n("",19),l=[h];function p(e,k,d,r,E,o){return a(),i("div",null,l)}const c=s(t,[["render",p]]);export{y as __pageData,c as default};

View File

@ -1,4 +1,4 @@
import{_ as s,c as a,o as i,a9 as e}from"./chunks/framework.C4_mTacX.js";const m=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"en/dev/resource.md","filePath":"en/dev/resource.md","lastUpdated":1725102337000}'),l={name:"en/dev/resource.md"},t=e(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to &quot;简介&quot;"></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code><code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意主题包中的html渲染使用Js来规定数据的渲染位置请确保您所编写的html代码能被Bot解析否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to &quot;加载资源包&quot;"></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
import{_ as s,c as a,o as i,a9 as e}from"./chunks/framework.C4_mTacX.js";const m=JSON.parse('{"title":"Resource Pack","description":"","frontmatter":{"title":"Resource Pack","order":1},"headers":[],"relativePath":"en/dev/resource.md","filePath":"en/dev/resource.md","lastUpdated":1726859552000}'),l={name:"en/dev/resource.md"},t=e(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to &quot;简介&quot;"></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code><code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意主题包中的html渲染使用Js来规定数据的渲染位置请确保您所编写的html代码能被Bot解析否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to &quot;加载资源包&quot;"></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">resources</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">resource_pack_1</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> metadata.yml</span></span>

View File

@ -0,0 +1 @@
import{_ as s,c as a,o as i,a9 as e}from"./chunks/framework.C4_mTacX.js";const m=JSON.parse('{"title":"Resource Pack","description":"","frontmatter":{"title":"Resource Pack","order":1},"headers":[],"relativePath":"en/dev/resource.md","filePath":"en/dev/resource.md","lastUpdated":1726859552000}'),l={name:"en/dev/resource.md"},t=e("",12),n=[t];function p(c,d,h,o,r,k){return i(),a("div",null,n)}const y=s(l,[["render",p]]);export{m as __pageData,y as default};

View File

@ -1 +0,0 @@
import{_ as s,c as a,o as i,a9 as e}from"./chunks/framework.C4_mTacX.js";const m=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"en/dev/resource.md","filePath":"en/dev/resource.md","lastUpdated":1725102337000}'),l={name:"en/dev/resource.md"},t=e("",12),n=[t];function p(c,d,h,o,r,k){return i(),a("div",null,n)}const y=s(l,[["render",p]]);export{m as __pageData,y as default};

View File

@ -1 +0,0 @@
import{_ as e,c as t,o as i}from"./chunks/framework.C4_mTacX.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"LiteyukiBot","tagline":"An integrated chat bot application and management framework","actions":[{"theme":"brand","text":"🚀 Get Started","link":"./deploy/install"},{"theme":"alt","text":"📖 Manual","link":"./usage/basic"},{"theme":"alt","text":"📦 Extensions","link":"./store/"}],"image":{"light":"/liteyuki.svg","dark":"/liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"Ecological Diversity","icon":"🛠️","details":"Based on the liteyuki framework, compatible with any Python bot framework and application","link":"./dev/api"},{"title":"Pluggable","icon":"🧩","details":"Use package manager for convenient management of plugins and resource packs","link":"./store/plugin"},{"title":"Customizable","icon":"🎨","details":"Fully customize the appearance using resource packs","link":"./store/resource"},{"title":"Localization","icon":"🌐","details":"Support for multiple languages through resource packs","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"Easy to use","icon":"⚙️","details":"No complicated pre-process, ready to use out of the box","link":"./deploy/config"},{"title":"High Performance","icon":"🚀","details":"500 plugins, starts within 2 seconds"},{"title":"Rolling Updates","icon":"☁️","details":"Keep your robot up to date with the latest commits"},{"title":"Open Source","icon":"📄","details":"The project follows the LSO LICENSE and is open to contributions","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"en/index.md","filePath":"en/index.md","lastUpdated":1726858141000}'),a={name:"en/index.md"};function o(n,s,l,r,c,d){return i(),t("div")}const m=e(a,[["render",o]]);export{u as __pageData,m as default};

View File

@ -1 +0,0 @@
import{_ as e,c as t,o as i}from"./chunks/framework.C4_mTacX.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"LiteyukiBot","tagline":"An integrated chat bot application and management framework","actions":[{"theme":"brand","text":"🚀 Get Started","link":"./deploy/install"},{"theme":"alt","text":"📖 Manual","link":"./usage/basic"},{"theme":"alt","text":"📦 Extensions","link":"./store/"}],"image":{"light":"/liteyuki.svg","dark":"/liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"Ecological Diversity","icon":"🛠️","details":"Based on the liteyuki framework, compatible with any Python bot framework and application","link":"./dev/api"},{"title":"Pluggable","icon":"🧩","details":"Use package manager for convenient management of plugins and resource packs","link":"./store/plugin"},{"title":"Customizable","icon":"🎨","details":"Fully customize the appearance using resource packs","link":"./store/resource"},{"title":"Localization","icon":"🌐","details":"Support for multiple languages through resource packs","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"Easy to use","icon":"⚙️","details":"No complicated pre-process, ready to use out of the box","link":"./deploy/config"},{"title":"High Performance","icon":"🚀","details":"500 plugins, starts within 2 seconds"},{"title":"Rolling Updates","icon":"☁️","details":"Keep your robot up to date with the latest commits"},{"title":"Open Source","icon":"📄","details":"The project follows the LSO LICENSE and is open to contributions","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"en/index.md","filePath":"en/index.md","lastUpdated":1726858141000}'),a={name:"en/index.md"};function o(n,s,l,r,c,d){return i(),t("div")}const m=e(a,[["render",o]]);export{u as __pageData,m as default};

View File

@ -0,0 +1 @@
import{_ as e,c as t,o as i}from"./chunks/framework.C4_mTacX.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"LiteyukiBot","tagline":"An integrated chat bot application and management framework","actions":[{"theme":"brand","text":"🚀 Get Started","link":"./deploy/install"},{"theme":"alt","text":"📖 Manual","link":"./usage/basic"},{"theme":"alt","text":"📦 Extensions","link":"./store/"},{"theme":"alt","text":"🛠️ Development","link":"./dev/guide"}],"image":{"light":"/liteyuki.svg","dark":"/liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"Ecological Diversity","icon":"🛠️","details":"Based on the liteyuki framework, compatible with any Python bot framework and application","link":"./dev/api"},{"title":"Pluggable","icon":"🧩","details":"Use package manager for convenient management of plugins and resource packs","link":"./store/plugin"},{"title":"Customizable","icon":"🎨","details":"Fully customize the appearance using resource packs","link":"./store/resource"},{"title":"Localization","icon":"🌐","details":"Support for multiple languages through resource packs","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"Easy to use","icon":"⚙️","details":"No complicated pre-process, ready to use out of the box","link":"./deploy/config"},{"title":"High Performance","icon":"🚀","details":"500 plugins, starts within 2 seconds"},{"title":"Rolling Updates","icon":"☁️","details":"Keep your robot up to date with the latest commits"},{"title":"Open Source","icon":"📄","details":"The project follows the LSO LICENSE and is open to contributions","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"en/index.md","filePath":"en/index.md","lastUpdated":1726859552000}'),a={name:"en/index.md"};function o(n,l,s,r,c,d){return i(),t("div")}const m=e(a,[["render",o]]);export{u as __pageData,m as default};

View File

@ -0,0 +1 @@
import{_ as e,c as t,o as i}from"./chunks/framework.C4_mTacX.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"LiteyukiBot","tagline":"An integrated chat bot application and management framework","actions":[{"theme":"brand","text":"🚀 Get Started","link":"./deploy/install"},{"theme":"alt","text":"📖 Manual","link":"./usage/basic"},{"theme":"alt","text":"📦 Extensions","link":"./store/"},{"theme":"alt","text":"🛠️ Development","link":"./dev/guide"}],"image":{"light":"/liteyuki.svg","dark":"/liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"Ecological Diversity","icon":"🛠️","details":"Based on the liteyuki framework, compatible with any Python bot framework and application","link":"./dev/api"},{"title":"Pluggable","icon":"🧩","details":"Use package manager for convenient management of plugins and resource packs","link":"./store/plugin"},{"title":"Customizable","icon":"🎨","details":"Fully customize the appearance using resource packs","link":"./store/resource"},{"title":"Localization","icon":"🌐","details":"Support for multiple languages through resource packs","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"Easy to use","icon":"⚙️","details":"No complicated pre-process, ready to use out of the box","link":"./deploy/config"},{"title":"High Performance","icon":"🚀","details":"500 plugins, starts within 2 seconds"},{"title":"Rolling Updates","icon":"☁️","details":"Keep your robot up to date with the latest commits"},{"title":"Open Source","icon":"📄","details":"The project follows the LSO LICENSE and is open to contributions","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"en/index.md","filePath":"en/index.md","lastUpdated":1726859552000}'),a={name:"en/index.md"};function o(n,l,s,r,c,d){return i(),t("div")}const m=e(a,[["render",o]]);export{u as __pageData,m as default};

View File

@ -1 +0,0 @@
import{_ as t,c as e,o as i}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"轻雪机器人","tagline":"一个综合性的聊天机器人应用及管理框架","actions":[{"theme":"brand","text":"🚀 快速开始","link":"./deploy/install"},{"theme":"alt","text":"📖 使用手册","link":"./usage/basic"},{"theme":"alt","text":"📦 扩展","link":"./store/resource"}],"image":{"light":"./liteyuki.svg","dark":"./liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"生态良好","icon":"🛠️","details":"基于轻雪框架原生支持任意Python Bot框架和应用程序","link":"./dev/api"},{"title":"插件管理","icon":"🧩","details":"使用包管理器,便捷管理插件及资源包","link":"./store/plugin"},{"title":"自由定制","icon":"🎨","details":"使用资源包对外观进行完全自定义","link":"./store/resource"},{"title":"国际化","icon":"🌐","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"⚙️","details":"无需繁琐前期过程,开箱即用","link":"./deploy/config"},{"title":"超高性能","icon":"🚀","details":"500个插件2秒内启动"},{"title":"滚动更新","icon":"☁️","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"📄","details":"项目遵循LSO LICENCE开源欢迎各位的贡献","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"index.md","filePath":"zh/index.md","lastUpdated":1726858141000}'),a={name:"index.md"};function l(n,o,s,d,c,r){return i(),e("div")}const p=t(a,[["render",l]]);export{k as __pageData,p as default};

View File

@ -1 +0,0 @@
import{_ as t,c as e,o as i}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"轻雪机器人","tagline":"一个综合性的聊天机器人应用及管理框架","actions":[{"theme":"brand","text":"🚀 快速开始","link":"./deploy/install"},{"theme":"alt","text":"📖 使用手册","link":"./usage/basic"},{"theme":"alt","text":"📦 扩展","link":"./store/resource"}],"image":{"light":"./liteyuki.svg","dark":"./liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"生态良好","icon":"🛠️","details":"基于轻雪框架原生支持任意Python Bot框架和应用程序","link":"./dev/api"},{"title":"插件管理","icon":"🧩","details":"使用包管理器,便捷管理插件及资源包","link":"./store/plugin"},{"title":"自由定制","icon":"🎨","details":"使用资源包对外观进行完全自定义","link":"./store/resource"},{"title":"国际化","icon":"🌐","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"⚙️","details":"无需繁琐前期过程,开箱即用","link":"./deploy/config"},{"title":"超高性能","icon":"🚀","details":"500个插件2秒内启动"},{"title":"滚动更新","icon":"☁️","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"📄","details":"项目遵循LSO LICENCE开源欢迎各位的贡献","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"index.md","filePath":"zh/index.md","lastUpdated":1726858141000}'),a={name:"index.md"};function l(n,o,s,d,c,r){return i(),e("div")}const p=t(a,[["render",l]]);export{k as __pageData,p as default};

View File

@ -0,0 +1 @@
import{_ as t,c as e,o as i}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"轻雪机器人","tagline":"一个综合性的聊天机器人应用及管理框架","actions":[{"theme":"brand","text":"🚀 快速开始","link":"./deploy/install"},{"theme":"alt","text":"📖 使用手册","link":"./usage/basic"},{"theme":"alt","text":"📦 扩展","link":"./store/resource"},{"theme":"alt","text":"🛠️ 开发","link":"./dev/guide"}],"image":{"light":"./liteyuki.svg","dark":"./liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"生态良好","icon":"🛠️","details":"基于轻雪框架原生支持任意Python Bot框架和应用程序","link":"./dev/api"},{"title":"插件管理","icon":"🧩","details":"使用包管理器,便捷管理插件及资源包","link":"./store/plugin"},{"title":"自由定制","icon":"🎨","details":"使用资源包对外观进行完全自定义","link":"./store/resource"},{"title":"国际化","icon":"🌐","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"⚙️","details":"无需繁琐前期过程,开箱即用","link":"./deploy/config"},{"title":"超高性能","icon":"🚀","details":"500个插件2秒内启动"},{"title":"滚动更新","icon":"☁️","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"📄","details":"项目遵循LSO LICENCE开源欢迎各位的贡献","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"index.md","filePath":"zh/index.md","lastUpdated":1726859552000}'),a={name:"index.md"};function l(n,o,s,d,c,r){return i(),e("div")}const m=t(a,[["render",l]]);export{k as __pageData,m as default};

View File

@ -0,0 +1 @@
import{_ as t,c as e,o as i}from"./chunks/framework.C4_mTacX.js";const k=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"轻雪机器人","tagline":"一个综合性的聊天机器人应用及管理框架","actions":[{"theme":"brand","text":"🚀 快速开始","link":"./deploy/install"},{"theme":"alt","text":"📖 使用手册","link":"./usage/basic"},{"theme":"alt","text":"📦 扩展","link":"./store/resource"},{"theme":"alt","text":"🛠️ 开发","link":"./dev/guide"}],"image":{"light":"./liteyuki.svg","dark":"./liteyuki-dark.svg","alt":"Liteyuki Logo"}},"features":[{"title":"生态良好","icon":"🛠️","details":"基于轻雪框架原生支持任意Python Bot框架和应用程序","link":"./dev/api"},{"title":"插件管理","icon":"🧩","details":"使用包管理器,便捷管理插件及资源包","link":"./store/plugin"},{"title":"自由定制","icon":"🎨","details":"使用资源包对外观进行完全自定义","link":"./store/resource"},{"title":"国际化","icon":"🌐","details":"通过资源包支持多种语言","link":"https://baike.baidu.com/item/i18n/6771940"},{"title":"简易使用","icon":"⚙️","details":"无需繁琐前期过程,开箱即用","link":"./deploy/config"},{"title":"超高性能","icon":"🚀","details":"500个插件2秒内启动"},{"title":"滚动更新","icon":"☁️","details":"让你的机器人保持最新提交"},{"title":"开源项目","icon":"📄","details":"项目遵循LSO LICENCE开源欢迎各位的贡献","link":"https://github.com/LiteyukiStudio/LiteyukiStudioOpensourceLICENSE"}]},"headers":[],"relativePath":"index.md","filePath":"zh/index.md","lastUpdated":1726859552000}'),a={name:"index.md"};function l(n,o,s,d,c,r){return i(),e("div")}const m=t(a,[["render",l]]);export{k as __pageData,m as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

26
dev/best_practices.html Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More