Files
clice/guide/quick-start.html
2026-01-03 08:23:38 +00:00

25 lines
24 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en-US" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Quick Start | clice</title>
<meta name="description" content="a powerful and modern C++ language server">
<meta name="generator" content="VitePress v1.6.4">
<link rel="preload stylesheet" href="/assets/style.C0Yaiv_5.css" as="style">
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
<script type="module" src="/assets/app.DQoL_1fX.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.CLpq7zWO.js">
<link rel="modulepreload" href="/assets/chunks/framework.l7bN90nj.js">
<link rel="modulepreload" href="/assets/guide_quick-start.md.CTAi4GI0.lean.js">
<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-24511351><!--[--><!--]--><!--[--><span tabindex="-1" data-v-83a3f712></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-83a3f712>Skip to content</a><!--]--><!----><header class="VPNav" data-v-24511351 data-v-8d64a174><div class="VPNavBar" data-v-8d64a174 data-v-fa22aa31><div class="wrapper" data-v-fa22aa31><div class="container" data-v-fa22aa31><div class="title" data-v-fa22aa31><div class="VPNavBarTitle has-sidebar" data-v-fa22aa31 data-v-4392cbaa><a class="title" href="/" data-v-4392cbaa><!--[--><!--]--><!----><span data-v-4392cbaa>clice</span><!--[--><!--]--></a></div></div><div class="content" data-v-fa22aa31><div class="content-body" data-v-fa22aa31><!--[--><!--]--><div class="VPNavBarSearch search" data-v-fa22aa31><!----></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-fa22aa31 data-v-4fbe08f7><span id="main-nav-aria-label" class="visually-hidden" data-v-4fbe08f7> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-4fbe08f7 data-v-27efe891><!--[--><span data-v-27efe891>Home</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-fa22aa31 data-v-3eed34a3 data-v-134c4b98><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-134c4b98><span class="text" data-v-134c4b98><span class="vpi-languages option-icon" data-v-134c4b98></span><!----><span class="vpi-chevron-down text-icon" data-v-134c4b98></span></span></button><div class="menu" data-v-134c4b98><div class="VPMenu" data-v-134c4b98 data-v-3b514283><!----><!--[--><!--[--><div class="items" data-v-3eed34a3><p class="title" data-v-3eed34a3>English</p><!--[--><div class="VPMenuLink" data-v-3eed34a3 data-v-cd255f6d><a class="VPLink link" href="/zh/guide/quick-start" data-v-cd255f6d><!--[--><span data-v-cd255f6d>简体中文</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-fa22aa31 data-v-687fd4c1><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-687fd4c1 data-v-c8168445 data-v-35846bb7><span class="check" data-v-35846bb7><span class="icon" data-v-35846bb7><!--[--><span class="vpi-sun sun" data-v-c8168445></span><span class="vpi-moon moon" data-v-c8168445></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-fa22aa31 data-v-84f3cb2c data-v-0a01d640><!--[--><a class="VPSocialLink no-icon" href="https://discord.gg/PA3UxW2VA3" aria-label="discord" target="_blank" rel="noopener" data-v-0a01d640 data-v-36865dac><span class="vpi-social-discord"></span></a><a class="VPSocialLink no-icon" href="https://github.com/clice-io/clice" aria-label="github" target="_blank" rel="noopener" data-v-0a01d640 data-v-36865dac><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-fa22aa31 data-v-20cb852c data-v-134c4b98><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-134c4b98><span class="vpi-more-horizontal icon" data-v-134c4b98></span></button><div class="menu" data-v-134c4b98><div class="VPMenu" data-v-134c4b98 data-v-3b514283><!----><!--[--><!--[--><div class="group translations" data-v-20cb852c><p class="trans-title" data-v-20cb852c>English</p><!--[--><div class="VPMenuLink" data-v-20cb852c data-v-cd255f6d><a class="VPLink link" href="/zh/guide/quick-start" data-v-cd255f6d><!--[--><span data-v-cd255f6d>简体中文</span><!--]--></a></div><!--]--></div><div class="group" data-v-20cb852c><div class="item appearance" data-v-20cb852c><p class="label" data-v-20cb852c>Appearance</p><div class="appearance-action" data-v-20cb852c><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-20cb852c data-v-c8168445 data-v-35846bb7><span class="check" data-v-35846bb7><span class="icon" data-v-35846bb7><!--[--><span class="vpi-sun sun" data-v-c8168445></span><span class="vpi-moon moon" data-v-c8168445></span><!--]--></span></span></button></div></div></div><div class="group" data-v-20cb852c><div class="item social-links" data-v-20cb852c><div class="VPSocialLinks social-links-list" data-v-20cb852c data-v-0a01d640><!--[--><a class="VPSocialLink no-icon" href="https://discord.gg/PA3UxW2VA3" aria-label="discord" target="_blank" rel="noopener" data-v-0a01d640 data-v-36865dac><span class="vpi-social-discord"></span></a><a class="VPSocialLink no-icon" href="https://github.com/clice-io/clice" aria-label="github" target="_blank" rel="noopener" data-v-0a01d640 data-v-36865dac><span class="vpi-social-github"></span></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-fa22aa31 data-v-017f7456><span class="container" data-v-017f7456><span class="top" data-v-017f7456></span><span class="middle" data-v-017f7456></span><span class="bottom" data-v-017f7456></span></span></button></div></div></div></div><div class="divider" data-v-fa22aa31><div class="divider-line" data-v-fa22aa31></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-24511351 data-v-d5903e19><div class="container" data-v-d5903e19><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-d5903e19><span class="vpi-align-left menu-icon" data-v-d5903e19></span><span class="menu-text" data-v-d5903e19>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-d5903e19 data-v-4b731308><button data-v-4b731308>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-24511351 data-v-1489031f><div class="curtain" data-v-1489031f></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-1489031f><span class="visually-hidden" id="sidebar-aria-label" data-v-1489031f> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-06590693><section class="VPSidebarItem level-0 collapsible" data-v-06590693 data-v-7098a323><div class="item" role="button" tabindex="0" data-v-7098a323><div class="indicator" data-v-7098a323></div><h2 class="text" data-v-7098a323>Design</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-7098a323><span class="vpi-chevron-right caret-icon" data-v-7098a323></span></div></div><div class="items" data-v-7098a323><!--[--><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/design/architecture" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Architecture</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/design/compilation" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Compilation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/design/header-context" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Header Context</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/design/template-resolver" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Template Resolver</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-06590693><section class="VPSidebarItem level-0 collapsible" data-v-06590693 data-v-7098a323><div class="item" role="button" tabindex="0" data-v-7098a323><div class="indicator" data-v-7098a323></div><h2 class="text" data-v-7098a323>Development</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-7098a323><span class="vpi-chevron-right caret-icon" data-v-7098a323></span></div></div><div class="items" data-v-7098a323><!--[--><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/dev/build" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Build from Source</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/dev/contribution" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Contribution</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/dev/extension" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Extension</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/dev/test-and-debug" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Test and Debug</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-06590693><section class="VPSidebarItem level-0 collapsible has-active" data-v-06590693 data-v-7098a323><div class="item" role="button" tabindex="0" data-v-7098a323><div class="indicator" data-v-7098a323></div><h2 class="text" data-v-7098a323>Guide</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-7098a323><span class="vpi-chevron-right caret-icon" data-v-7098a323></span></div></div><div class="items" data-v-7098a323><!--[--><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/guide/configuration" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Configuration</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/guide/quick-start" data-v-7098a323><!--[--><p class="text" data-v-7098a323>Quick Start</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-7098a323 data-v-7098a323><div class="item" data-v-7098a323><div class="indicator" data-v-7098a323></div><a class="VPLink link link" href="/guide/what-is-clice" data-v-7098a323><!--[--><p class="text" data-v-7098a323>What is clice?</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-24511351 data-v-5cfd54a6><div class="VPDoc has-sidebar has-aside" data-v-5cfd54a6 data-v-bbef34fe><!--[--><!--]--><div class="container" data-v-bbef34fe><div class="aside" data-v-bbef34fe><div class="aside-curtain" data-v-bbef34fe></div><div class="aside-container" data-v-bbef34fe><div class="aside-content" data-v-bbef34fe><div class="VPDocAside" data-v-bbef34fe data-v-606ad2c6><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-606ad2c6 data-v-52cb4cd4><div class="content" data-v-52cb4cd4><div class="outline-marker" data-v-52cb4cd4></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-52cb4cd4>On this page</div><ul class="VPDocOutlineItem root" data-v-52cb4cd4 data-v-6c15f963><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-606ad2c6></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-bbef34fe><div class="content-container" data-v-bbef34fe><!--[--><!--]--><main class="main" data-v-bbef34fe><div style="position:relative;" class="vp-doc _guide_quick-start" data-v-bbef34fe><div><h1 id="quick-start" tabindex="-1">Quick Start <a class="header-anchor" href="#quick-start" aria-label="Permalink to &quot;Quick Start&quot;"></a></h1><h2 id="editor-plugins" tabindex="-1">Editor Plugins <a class="header-anchor" href="#editor-plugins" aria-label="Permalink to &quot;Editor Plugins&quot;"></a></h2><p>clice implements the <a href="https://microsoft.github.io/language-server-protocol" target="_blank" rel="noreferrer">Language Server Protocol</a>. Any editor that supports this protocol can theoretically work with clice to provide features like <code>code completion</code>, <code>diagnostics</code>, <code>go-to-definition</code>, and more.</p><p>However, beyond the standard protocol, clice also supports some protocol extensions. For better handling of these protocol extensions and better integration with editors, using clice plugins in specific editors is often a better choice. Most of them work out of the box and support clice&#39;s protocol extensions.</p><h3 id="visual-studio-code" tabindex="-1">Visual Studio Code <a class="header-anchor" href="#visual-studio-code" aria-label="Permalink to &quot;Visual Studio Code&quot;"></a></h3><h3 id="vim-neovim" tabindex="-1">Vim/Neovim <a class="header-anchor" href="#vim-neovim" aria-label="Permalink to &quot;Vim/Neovim&quot;"></a></h3><h3 id="others" tabindex="-1">Others <a class="header-anchor" href="#others" aria-label="Permalink to &quot;Others&quot;"></a></h3><p>Other editors don&#39;t have available clice plugins yet (contributions welcome!). To use clice in them, please install clice yourself and refer to the specific editor&#39;s documentation on how to use a language server.</p><h2 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-label="Permalink to &quot;Installation&quot;"></a></h2><p>If your editor plugin handles clice&#39;s download, you can skip this step.</p><h3 id="download-prebuilt-binary" tabindex="-1">Download Prebuilt Binary <a class="header-anchor" href="#download-prebuilt-binary" aria-label="Permalink to &quot;Download Prebuilt Binary&quot;"></a></h3><p>Download clice binary version through the Release page.</p><h3 id="build-from-source" tabindex="-1">Build from Source <a class="header-anchor" href="#build-from-source" aria-label="Permalink to &quot;Build from Source&quot;"></a></h3><p>Build clice from source yourself. For specific steps, refer to <a href="./../dev/build">build</a>.</p><h2 id="project-setup" tabindex="-1">Project Setup <a class="header-anchor" href="#project-setup" aria-label="Permalink to &quot;Project Setup&quot;"></a></h2><p>For clice to correctly understand your code (e.g., find header file locations), you need to provide clice with a <code>compile_commands.json</code> file, also known as a <a href="https://clang.llvm.org/docs/JSONCompilationDatabase.html" target="_blank" rel="noreferrer">compilation database</a>. The compilation database provides compilation options for each source file.</p><h3 id="cmake" tabindex="-1">CMake <a class="header-anchor" href="#cmake" aria-label="Permalink to &quot;CMake&quot;"></a></h3><p>For build systems using cmake, add the <code>-DCMAKE_EXPORT_COMPILE_COMMANDS=ON</code> option during build, for example:</p><div class="language-cmake vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">cmake</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">ON</span></span></code></pre></div><p>This will generate a <code>compile_commands.json</code> file in the <code>build</code> directory.</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Note: This option only works when cmake&#39;s generator is set to makefile and ninja. For other generators, this option will be ignored, meaning the compilation database cannot be generated.</p></div><h3 id="bazel" tabindex="-1">Bazel <a class="header-anchor" href="#bazel" aria-label="Permalink to &quot;Bazel&quot;"></a></h3><p>Bazel has no native support to generate a compilation database. The recommended solution is to use <a href="https://github.com/hedronvision/bazel-compile-commands-extractor" target="_blank" rel="noreferrer">bazel-compile-commands-extractor</a>. After setting it up, you can generate <code>compile_commands.json</code> with:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</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;">bazel</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> run</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> @hedron_compile_commands//:refresh_all</span></span></code></pre></div><h3 id="visual-studio" tabindex="-1">Visual Studio <a class="header-anchor" href="#visual-studio" aria-label="Permalink to &quot;Visual Studio&quot;"></a></h3><p>TODO:</p><h3 id="makefile" tabindex="-1">Makefile <a class="header-anchor" href="#makefile" aria-label="Permalink to &quot;Makefile&quot;"></a></h3><p>TODO:</p><h3 id="xmake" tabindex="-1">Xmake <a class="header-anchor" href="#xmake" aria-label="Permalink to &quot;Xmake&quot;"></a></h3><h3 id="others-1" tabindex="-1">Others <a class="header-anchor" href="#others-1" aria-label="Permalink to &quot;Others&quot;"></a></h3><p>For any other build system, you can try using <a href="https://github.com/rizsotto/Bear" target="_blank" rel="noreferrer">bear</a> or <a href="https://github.com/rizsotto/scan-build" target="_blank" rel="noreferrer">scan-build</a> to intercept compilation commands and obtain the compilation database (no guarantee of success). We plan to write a <strong>new tool</strong> in the future that captures compilation commands through a fake compiler approach.</p></div></div></main><footer class="VPDocFooter" data-v-bbef34fe data-v-3de8f80a><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-3de8f80a><span class="visually-hidden" id="doc-footer-aria-label" data-v-3de8f80a>Pager</span><div class="pager" data-v-3de8f80a><a class="VPLink link pager-link prev" href="/guide/configuration" data-v-3de8f80a><!--[--><span class="desc" data-v-3de8f80a>Previous page</span><span class="title" data-v-3de8f80a>Configuration</span><!--]--></a></div><div class="pager" data-v-3de8f80a><a class="VPLink link pager-link next" href="/guide/what-is-clice" data-v-3de8f80a><!--[--><span class="desc" data-v-3de8f80a>Next page</span><span class="title" data-v-3de8f80a>What is clice?</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"design_architecture.md\":\"B-ctAdqa\",\"design_compilation.md\":\"CgLBgVWN\",\"design_header-context.md\":\"CLeWGHwo\",\"design_index.md\":\"Buyl5Jmv\",\"design_template-resolver.md\":\"BNn_jKB5\",\"dev_build.md\":\"BMRSQYou\",\"dev_contribution.md\":\"DhEkIBdN\",\"dev_extension.md\":\"XVgKd8kt\",\"dev_test-and-debug.md\":\"Cd8ZNQsd\",\"guide_configuration.md\":\"D4nmP_A7\",\"guide_quick-start.md\":\"CTAi4GI0\",\"guide_what-is-clice.md\":\"D2ebPDnR\",\"index.md\":\"BIyS1X5z\",\"zh_design_architecture.md\":\"Dtjvys6J\",\"zh_design_compilation.md\":\"spz_aNkl\",\"zh_design_header-context.md\":\"ySoc9rIE\",\"zh_design_index.md\":\"C7K-QRDi\",\"zh_design_template-resolver.md\":\"DDSv4CNK\",\"zh_dev_build.md\":\"25ZHlRiJ\",\"zh_dev_contribution.md\":\"DxaaX3ax\",\"zh_dev_extension.md\":\"CNVomHxL\",\"zh_dev_test-and-debug.md\":\"Cv4TROgb\",\"zh_guide_configuration.md\":\"z9oxX9Dn\",\"zh_guide_quick-start.md\":\"B-Yy5Njn\",\"zh_guide_what-is-clice.md\":\"CEXKoZ_c\",\"zh_index.md\":\"Ddga0o0y\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"clice\",\"description\":\"a powerful and modern C++ language server\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"}],\"sidebar\":{\"/zh/\":[{\"text\":\"Design\",\"collapsed\":false,\"items\":[{\"text\":\"Architecture\",\"link\":\"/zh/design/architecture\"},{\"text\":\"Compilation\",\"link\":\"/zh/design/compilation\"},{\"text\":\"Header Context\",\"link\":\"/zh/design/header-context\"},{\"text\":\"Template Resolver\",\"link\":\"/zh/design/template-resolver\"}]},{\"text\":\"Development\",\"collapsed\":false,\"items\":[{\"text\":\"Build from Source\",\"link\":\"/zh/dev/build\"},{\"text\":\"Contribution\",\"link\":\"/zh/dev/contribution\"},{\"text\":\"Extension\",\"link\":\"/zh/dev/extension\"},{\"text\":\"Test and Debug\",\"link\":\"/zh/dev/test-and-debug\"}]},{\"text\":\"Guide\",\"collapsed\":false,\"items\":[{\"text\":\"Configuration\",\"link\":\"/zh/guide/configuration\"},{\"text\":\"Quick Start\",\"link\":\"/zh/guide/quick-start\"},{\"text\":\"What is clice?\",\"link\":\"/zh/guide/what-is-clice\"}]}],\"/\":[{\"text\":\"Design\",\"collapsed\":false,\"items\":[{\"text\":\"Architecture\",\"link\":\"/design/architecture\"},{\"text\":\"Compilation\",\"link\":\"/design/compilation\"},{\"text\":\"Header Context\",\"link\":\"/design/header-context\"},{\"text\":\"Template Resolver\",\"link\":\"/design/template-resolver\"}]},{\"text\":\"Development\",\"collapsed\":false,\"items\":[{\"text\":\"Build from Source\",\"link\":\"/dev/build\"},{\"text\":\"Contribution\",\"link\":\"/dev/contribution\"},{\"text\":\"Extension\",\"link\":\"/dev/extension\"},{\"text\":\"Test and Debug\",\"link\":\"/dev/test-and-debug\"}]},{\"text\":\"Guide\",\"collapsed\":false,\"items\":[{\"text\":\"Configuration\",\"link\":\"/guide/configuration\"},{\"text\":\"Quick Start\",\"link\":\"/guide/quick-start\"},{\"text\":\"What is clice?\",\"link\":\"/guide/what-is-clice\"}]}]},\"socialLinks\":[{\"icon\":\"discord\",\"link\":\"https://discord.gg/PA3UxW2VA3\"},{\"icon\":\"github\",\"link\":\"https://github.com/clice-io/clice\"}],\"outline\":\"deep\"},\"locales\":{\"root\":{\"label\":\"English\"},\"zh\":{\"label\":\"简体中文\"}},\"scrollOffset\":134,\"cleanUrls\":true}");</script>
</body>
</html>