豫言源码浏览器 / Source Browser

浏览项目文件与源码

yuyan · 483 行 · 25396 字节 · UTF-8
§
「:
豫言源码树静态网站生成器。

用法:
  yybs_源码树网站 构建 【输出目录】

默认输出目录是 dist/源码树浏览器。目录与全部页面标记由豫言在构建期生成,
文言:循词着色,不待包依赖,未成之书亦可阅。
汉语:源码以独立词法规则在构建时着色,不要求导入包存在或程序语法完整。
浏览器只加载 HTML 与 CSS。生成后可直接交给
「应用/开发工具/简易网页服务器/入口。豫」预览。
:」

寻观「标准库」之书。
寻观「标准库」之「语言核心」之「异常」之书。
寻观「标准库」之「数据结构」之「整数操作」之书。
寻观「标准库」之「数据结构」之「字符串术」之书。
寻观「标准库」之「数据结构」之「多态列」之书。
寻观「标准库」之「数据结构」之「特殊字符」之书。
寻观「标准库」之「操作系统」之「命令行参数」之书。
寻观「标准库」之「操作系统」之「文件系统」之书。
寻观「标准库」之「操作系统」之「路径」之书。
寻观「标准库」之「输入输出」之「笔」之书。
寻观「网页客户端」之「核心」之书。
寻观「网页客户端」之「文档组件」之书。
寻观「网页客户端」之「源码高亮」之书。
寻观「编译器核心」之「编译数据」之「语义标记信息」之书。
寻观「编译器核心」之「编译数据」之「操作符」之「操作符数据结构」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「词法解析」之书。
寻观「编译器核心」之「编译步骤」之「语法分析」之「抽象语法分析」之书。

「站点片段」即
  「字符串」 「:目录标记:」
  合
    (「列」于「字符串」) 「:源码相对路径们,逐页读取:」
  合
    「整数」 「:文件数量:」
也。

「合并站点片段」乃化「站点片段」而化「站点片段」而「站点片段」也。
「合并站点片段」者会「甲」而会「乙」而
  ((「甲」中「零」)附(「乙」中「零」))与
    (「附加」授以「字符串」于(「甲」中「一」)于(「乙」中「一」))
      与
    (「加」于(「甲」中「二」)于(「乙」中「二」))
也。

「源码后缀们」乃「列」于「字符串」也。
「源码后缀们」者(「列」【『。豫』】)也。

「结尾属于」乃化「字符串」而化(「列」于「字符串」)而「爻」也。
「结尾属于」者会「名称」而会「后缀们」而
  鉴「后缀们」而
    有「罄」则「阴」
    或有(「缀」于「后缀」于「余下」)则
      若「串结尾是它吗」于「后缀」于「名称」则「阳」否则「结尾属于」于「名称」于「余下」
也。

「可阅读文件」乃化「字符串」而「爻」也。
「可阅读文件」者会「名称」而
  「结尾属于」于「名称」于「源码后缀们」
也。

「忽略目录」乃化「字符串」而「爻」也。
「忽略目录」者会「名称」而
  「或者」
    于(「字符串相等吗」于「名称」于『.』)
    于(「或者」
      于(「字符串相等吗」于「名称」于『..』)
      于(「或者」
        于(「串结尾是它吗」于『_v0』于「名称」)
        于(「或者」
          于(「字符串相等吗」于「名称」于『.git』)
          于(「或者」
            于(「字符串相等吗」于「名称」于『.codex』)
            于(「或者」
              于(「字符串相等吗」于「名称」于『.agents』)
              于(「或者」
                于(「字符串相等吗」于「名称」于『.yybuild』)
                于(「或者」
                  于(「字符串相等吗」于「名称」于『node_modules』)
                  于(「或者」
                    于(「字符串相等吗」于「名称」于『__pycache__』)
                    于(「字符串相等吗」于「名称」于『dist』)))))))))
也。

「语言名称」乃化「字符串」而「字符串」也。
「语言名称」者会「忽略名称」而
  『yuyan』
也。

「数新行」乃化(「列」于「字符串」)而化「整数」而「整数」也。
「数新行」者会「字符们」而会「积」而
  鉴「字符们」而
    有「罄」则「积」
    或有(「缀」于「当前」于「余下」)则
      「数新行」于「余下」于(「加」于「积」于(
        若「字符串相等吗」于「当前」于「新行」则「一」否则「零」))
也。

「源码行数」乃化「字符串」而「整数」也。
「源码行数」者会「内容」而
  若「字符串相等吗」于「内容」于『』则
    「一」
  否则
    虑「换行数」者「数新行」于(「获取字符」于「内容」)于「零」
    而
    若「串结尾是它吗」于「新行」于「内容」则
      「换行数」
    否则
      「加」于「换行数」于「一」
也。

「构建行号」乃化「整数」而化「整数」而化(「列」于「字符串」)而「字符串」也。
「构建行号」者会「当前」而会「总数」而会「倒序行号」而
  若「大于」于「当前」于「总数」则
    「串组合并」于((「反转」授以「字符串」)于「倒序行号」)
  否则
    「构建行号」
      于(「加」于「当前」于「一」)于「总数」
        于(「缀」于((「整数表示」于「当前」)附「新行」)于「倒序行号」)
也。

「默认文件吗」乃化「字符串」而化「字符串」而化「整数」而「爻」也。
「默认文件吗」者会「相对路径」而会「首选路径」而会「序数」而
  「或者」
    于(「字符串相等吗」于「相对路径」于「首选路径」)
    于(「且」于(「字符串相等吗」于「首选路径」于『』)于(「等于」于「序数」于「一」))
也。

「语义标记样式」乃化「语义标记种类」而「字符串」也。
「语义标记样式」者会「种类」而
  鉴「种类」而
    有「结构操作符标记」则『tok-structure』
    或有「类型操作符标记」则『tok-type』
    或有「控制操作符标记」则『tok-control』
    或有「普通操作符标记」则『tok-operator』
    或有「内建类型标记」则『tok-builtin-type』
    或有「内建函数标记」则
      『tok-builtin-function』
    或有「内建常量标记」则
      『tok-builtin-constant』
    或有「绑定标识符标记」则『tok-binder』
    或有「引用标识符标记」则『tok-identifier』
    或有「数值标记」则『tok-number』
    或有「字符串标记」则『tok-string』
    或有「注释标记」则『tok-comment』
    或有「结构终止符标记」则
      『tok-structure-terminator』
也。

「按语义标记着色」乃化「字符串」而化「字符串」而「字符串」也。
「按语义标记着色」者会「源码」而会「语义JSON」而
  虑「标记们」者(「语义标记信息自JSON」于「语义JSON」)中「一」而
  递归虑「着色」其化「整数」而化(「列」于「语义标记」)而化(「列」于「字符串」)而「字符串」者
    会「当前偏移」而会「余下标记」而会「反片段」而
      鉴「余下标记」而
        有「罄」则
          「串组合并」于(「反转」于(「缀」
            于(「转义网页文字」于(「获取子字符串」于「当前偏移」于(「串长度」于「源码」)于「源码」))
            于「反片段」))
        或有(「缀」
          于(「构造语义标记」
            于「种类」
            于「开始」
            于「结束」
            于「忽略开始行」于「忽略开始列」于「忽略结束行」于「忽略结束列」)
            于「标记尾」)则
          若「大于」于「当前偏移」于「开始」则
            「发生事故」于『语义标记范围重叠或未排序』
          否则
            虑「原文前缀」者
              「转义网页文字」于(「获取子字符串」于「当前偏移」于「开始」于「源码」)
            而
            虑「标记原文」者
              「转义网页文字」于(「获取子字符串」于「开始」于「结束」于「源码」)
            而
            虑「着色片段」者
              『<span class="』附(「语义标记样式」于「种类」)附『">』附「标记原文」附『</span>』
            而
            「着色」
              于「结束」
              于「标记尾」
              于(「缀」于「着色片段」于(「缀」于「原文前缀」于「反片段」))
  而
  「着色」于「零」于「标记们」于「罄」
也。

「构建豫言源码高亮」乃
  化「字符串」而
  化「字符串」而
  化「字符串」而
  化「字符串」而
  「字符串」
也。
「构建豫言源码高亮」者会「输出目录」而会「实际路径」而会「相对路径」而会「源码」而
  「:文言:着色循字,不待书籍齐备。汉语:基础高亮仅依词法,不解析导入;缺失依赖和未完成源码仍可阅读。:」
  「高亮源码」于「源码」于(「语言名称」于「相对路径」)
也。

「构建文件文档」乃
  化「字符串」而
  化「字符串」而
  化「字符串」而
  化「字符串」而
  化「整数」而
  化「字符串」而
  「站点片段」
也。
「构建文件文档」者会「输出目录」而会「实际路径」而会「相对路径」而会「名称」而会「序数」而会「首选路径」而
  虑「锚点」者『源码-』附(「整数表示」于「序数」)而
  虑「语言」者「语言名称」于「名称」而
  虑「内容」者「读文件」于「实际路径」而
  虑「高亮内容」者
    「构建豫言源码高亮」于「输出目录」于「实际路径」于「相对路径」于「内容」而
    虑「行数」者「源码行数」于「内容」而
    虑「默认」者「默认文件吗」于「相对路径」于「首选路径」于「序数」而
    虑「目录类」者
      若「默认」则『tree-link is-default』否则『tree-link』
    而
    虑「文档类」者
      若「默认」则『source-document is-default』否则『source-document』
    而
    虑「目录标记」者
      『<li class="tree-item file-item"><a class="』附「目录类」附『" href="』附「锚点」附『.html#』附「锚点」附
      『"><span class="node-icon file" aria-hidden="true"></span><span class="tree-name">』附(「转义网页文字」
        于「名称」)附『</span></a></li>』
    而
    虑「文档标记」者
      『<article id="』附「锚点」附『" class="』附「文档类」附
      『"><header class="reader-head"><div class="path-block"><div class="breadcrumb">』附(「转义网页文字」
        于「相对路径」)附『</div><div class="file-meta">』附(「转义网页文字」于「语言」)附『 · 』附(「整数表示」
          于「行数」)附『 行 · 』附(「整数表示」于(「字节长度」于「内容」))附
            『 字节 · UTF-8</div></div><a class="source-link" href="#』附「锚点」附
            『" aria-label="此文件的永久链接">§</a></header><div class="code-viewport"><div class="code-layout"><pre class="line-numbers" aria-hidden="true">』
              附(「构建行号」于「一」于「行数」于「罄」)附『</pre><pre class="source-code"><code data-language="』附(「转义网页文字」
                于「语言」)附『">』附「高亮内容」附『</code></pre></div></div></article>』
    而
    「目录标记」与((「列」【「文档标记」】))与「一」
也。

「构建文件索引」乃
  化「字符串」而
  化「字符串」而
  化「整数」而
  化「字符串」而
  「站点片段」
也。
「构建文件索引」者会「相对路径」而会「名称」而会「序数」而会「首选路径」而
  虑「锚点」者『源码-』附(「整数表示」于「序数」)而
  虑「默认」者「默认文件吗」于「相对路径」于「首选路径」于「序数」而
  虑「目录类」者
    若「默认」则『tree-link is-default』否则『tree-link』而
    虑「目录标记」者
      『<li class="tree-item file-item"><a class="』附「目录类」附『" href="』附「锚点」附『.html#』附「锚点」附
        『"><span class="node-icon file" aria-hidden="true"></span><span class="tree-name">』附(「转义网页文字」
          于「名称」)附『</span></a></li>』
    而
    「目录标记」与(「列」【「相对路径」】)与「一」
也。

「构建源码列表」乃
  化「字符串」而
  化「字符串」而
  化「字符串」而
  化(「列」于「字符串」)而
  化「整数」而
  化「字符串」而
  「站点片段」
也。
「构建源码列表」者会「根目录」而会「输出目录」而会「相对目录」而会「名称们」而会「序数」而会「首选路径」而
  「从左折叠」授以「字符串」授以「站点片段」
    于(会「名称」而会「积」而
    虑「本序」者「加」于「序数」于(「积」中「二」)而
    虑「相对路径」者
      若「字符串相等吗」于「相对目录」于『』则「名称」否则「相对目录」附『/』附「名称」
    而
    虑「实际路径」者「路径合并」于「根目录」于「相对路径」而
    虑「当前结果」者
      若「路径是文件夹」于「实际路径」则
        若「忽略目录」于「名称」则
          『』与「罄」与「零」
        否则
          虑「子结果」者
            「构建源码列表」
              于「根目录」
              于「输出目录」
              于「相对路径」
              于(「读文件夹」于「实际路径」)于「本序」于「首选路径」
          而
          若「等于」于(「子结果」中「二」)于「零」则
            『』与「罄」与「零」
          否则
            (『<li class="tree-item directory-item"><details><summary class="tree-summary"><span class="node-icon folder" aria-hidden="true"></span><span class="tree-name">』
              附(「转义网页文字」于「名称」)附『</span></summary><ul>』附(「子结果」中「零」)附
                『</ul></details></li>』)
                  与(「子结果」中「一」)与(「子结果」中「二」)
      否则若「且」于(「路径是普通文件」于「实际路径」)于(「可阅读文件」于「名称」)
      则
        「构建文件索引」于「相对路径」于「名称」于「本序」于「首选路径」
      否则
        『』与「罄」与「零」
    而
    「合并站点片段」于「积」于「当前结果」
    )
    于(『』与(「罄」授以「字符串」)与「零」)
    于「名称们」
也。

「节点列一」乃化「网页节点」而(「列」于「网页节点」)也。
「节点列一」者会「甲」而
  (「列」【「甲」】)
也。

「节点列三」乃
  化「网页节点」而
  化「网页节点」而
  化「网页节点」而
  (「列」于「网页节点」)
也。
「节点列三」者会「甲」而会「乙」而会「丙」而
  (「列」【「甲」,「乙」,「丙」】)
也。

「节点列四」乃
  化「网页节点」而
  化「网页节点」而
  化「网页节点」而
  化「网页节点」而
  (「列」于「网页节点」)
也。
「节点列四」者会「甲」而会「乙」而会「丙」而会「丁」而
  (「列」【「甲」,「乙」,「丙」,「丁」】)
也。

「属性列一」乃化「网页属性」而(「列」于「网页属性」)也。
「属性列一」者会「甲」而
  (「列」【「甲」】)
也。

「属性列二」乃化「网页属性」而化「网页属性」而(「列」于「网页属性」)也。
「属性列二」者会「甲」而会「乙」而
  (「列」【「甲」,「乙」】)
也。

「编制网页」乃化「字符串」而化「站点片段」而「字符串」也。
「编制网页」者会「根名称」而会「站点」而
  虑「头部」者
    「文档头」于(「节点列四」
      于(「元信息」于(「属性列一」于(「属性」于『charset』于『utf-8』)))
      于(「元信息」
        于(「属性列二」
          于(「属性」于『name』于『viewport』)
          于(「属性」于『content』于『width=device-width, initial-scale=1』)))
          于(「网页标题」于『豫言源码浏览器』)
          于(「元素」
            于『link』
            于(「属性列二」于(「属性」于『rel』于『stylesheet』)于(「属性」于『href』于『界面.css』))
            于「罄」))
  而
  虑「正文标记」者
    『<link rel="stylesheet" href="主题.css"><script defer src="通用.js"></script><div data-yuyan-site="source" data-home="index.html"></div><input class="state-toggle" id="writing-toggle" type="checkbox" checked><div class="shell"><header class="masthead"><div class="identity"><div class="seal" aria-hidden="true">豫</div><div class="title-group"><h1>豫言源码浏览器 <span>/ Source Browser</span></h1><p class="subtitle">浏览项目文件与源码</p></div></div><nav class="toolbar" aria-label="阅读设置"><label class="tool-button writing-button" for="writing-toggle" aria-label="切换排版方向"><span class="tool-icon">排</span><span class="horizontal-label">竖排</span><span class="vertical-label">横排</span></label></nav></header><main class="workspace"><aside class="sidebar" aria-label="源码树"><div class="sidebar-head"><p class="section-label">文件</p><p class="sidebar-note">选择文件查看源码</p></div><nav class="tree" aria-label="文件目录"><ul class="tree-list">』
      附(「站点」中「零」)附『</ul></nav><div class="sidebar-foot"><span>』附(「转义网页文字」于「根名称」)附
        『</span><span>』附(「整数表示」于(「站点」中「二」))附
          『 个文件</span></div></aside><section class="reader" aria-label="源码阅读器"><div class="source-stack">』附(「串组合并」
            于(「站点」中「一」))附『</div></section></main></div>』
  而
  「网页文档」
    于『zh-CN』
    于「头部」
    于(「文档体」
      于「罄」
      于(「节点列一」于(「可信原文」于(『<script defer src="浏览.js"></script>』附「正文标记」))))
也。

「默认输出目录」乃「字符串」也。
「默认输出目录」者『dist/源码树浏览器』也。

「:文言:一页一书,不以全库累初阅。汉语:每个文件独立生成页面,首页只包含默认文件,旧锚点由轻量脚本兼容。:」
「写源码分页」乃
  化「字符串」而
  化「字符串」而
  化「字符串」而
  化「站点片段」而
  化「字符串」而
  「有」
也。
「写源码分页」者会「根目录」而会「输出」而会「根名」而会「站点」而会「首选路径」而
  虑「终序」者
    「从左折叠」授以「字符串」授以「整数」
    于(会「相对路径」而会「序」而
    虑「实际路径」者「路径合并」于「根目录」于「相对路径」而
    虑「本篇」者
      (「构建文件文档」于「输出」于「实际路径」于「相对路径」于(「获取文件名」于「相对路径」)于「序」于「首选路径」)
      中「一」而
      虑「单页」者
        「编制网页」
          于「根名」
          于((「站点」中「零」)与「本篇」与(「站点」中「二」))而
          虑「无」者
            「写文件」
              于(「路径合并」于「输出」于(『源码-』附(「整数表示」于「序」)附『.html』))
              于「单页」而
              虑「无」者
                若「默认文件吗」于「相对路径」于「首选路径」于「序」则
                  「写文件」
                    于(「路径合并」于「输出」于『index.html』)于「单页」
                否则
                  「元」
              而
              「加」于「序」于「一」
    )于「一」于(「站点」中「一」)
  而
  「元」
也。

「构建静态站以资源」乃化「字符串」而化「字符串」而化「字符串」而「有」也。
「构建静态站以资源」者会「源码根目录」而会「输出目录」而会「资源根」而
  虑「无」者「标准错误打印行」于(『正在扫描源码:』附「源码根目录」)而
  虑「首选候选」者『应用/豫言编译器/入口。豫』而
  虑「首选路径」者
    若「路径存在」于(「路径合并」于「源码根目录」于「首选候选」)则「首选候选」否则『』而
    虑「站点」者
      「构建源码列表」于「源码根目录」于「输出目录」于『』于(「读文件夹」于「源码根目录」)于「一」于「首选路径」
    而
    虑「无」者「标准错误打印行」于『源码扫描完成』而
    若「等于」于(「站点」中「二」)于「零」则
      「发生事故」于『没有找到可阅读的源码文件』
    否则
      「:古曰:诸站同章。今释:源码文本保持原样,仅共用界面与语言偏好。:」
      虑「无」者
        「写文件」
          于(「路径合并」于「输出目录」于『主题.css』)
          于(「读文件」于(「路径合并」于「资源根」于『应用/文档站/库/文档界面/主题.css』))
      而
      虑「无」者
        「写文件」
          于(「路径合并」于「输出目录」于『通用.js』)
          于(「读文件」于(「路径合并」于「资源根」于『应用/文档站/库/文档界面/界面.js』))
      而
      虑「资源目录」者
        「路径合并」于「资源根」于『应用/文档站/源码树浏览器/资源』
      而
      虑「索引路径」者「路径合并」于「输出目录」于『index.html』
      而
      虑「无」者
        「写源码分页」于「源码根目录」于「输出目录」于(「获取文件名」于「源码根目录」)于「站点」于「首选路径」
      而
      虑「无」者
        「写文件」
          于(「路径合并」于「输出目录」于『浏览.js』)
          于(「读文件」于(「路径合并」于「资源目录」于『浏览.js』))
      而
      虑「无」者
        「写文件」
          于(「路径合并」于「输出目录」于『界面.css』)
          于(「读文件」于(「路径合并」于「资源目录」于『界面.css』))
      而
      虑「无」者
        「写文件」于(「路径合并」于「输出目录」于『.nojekyll』)于『』
      而
      「打印行」于(『静态站已生成:』附「输出目录」附『(』附(「整数表示」于(「站点」中「二」))附『 个文件)』)
也。

「构建静态站」乃化「字符串」而化「字符串」而「有」也。
「构建静态站」者会「根」而会「输出」而
  「构建静态站以资源」于「根」于「输出」于「根」
也。

「:文言:源与饰分置,惟览所命之根。汉语:显式源码根用于发布暂存副本,界面资源仍从调用目录读取,不扫描依赖树。:」
虑「源码根目录」者
  「获取当前路径」于「元」而
鉴「获取参数」于「元」而
  有「罄」则「构建静态站」于「源码根目录」于「默认输出目录」
  或有((「列」【『构建』】))则
    「构建静态站」于「源码根目录」于「默认输出目录」
  或有((「列」【『构建』,「输出目录」】))则
    「构建静态站」于「源码根目录」于「输出目录」
  或有((「列」【『构建源码』,「输入目录」,「输出目录」】))则
    「构建静态站以资源」于「输入目录」于「输出目录」于「源码根目录」
  或有「其他」则
    「发生事故」于『用法:yy源码树浏览器 构建 【输出目录】;构建源码 源码目录 输出目录』
。