mirror of
				https://gitee.com/SuperManito/LinuxMirrors
				synced 2025-11-04 08:20:28 +08:00 
			
		
		
		
	Update
This commit is contained in:
		
							
								
								
									
										12
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								README.md
									
									
									
									
									
								
							@@ -41,7 +41,7 @@
 | 
			
		||||
</tr>
 | 
			
		||||
</table>
 | 
			
		||||
 | 
			
		||||
> 目前仅支持上述基于 Debian 与 Redhat 系的发行版和及其部分衍生版本 \
 | 
			
		||||
> 目前仅支持上述基于 Debian 与 RedHat 系的发行版和及其部分衍生版本 \
 | 
			
		||||
> 同样支持上述版本中拥有相同底层核心的其它发行版,例如 [`Armbian`](https://www.armbian.com) [`Kubuntu`](https://kubuntu.org) [`Oracle Linux`](https://www.oracle.com/cn/technical-resources) 等
 | 
			
		||||
 | 
			
		||||
### 脚本当前使用的开源镜像站
 | 
			
		||||
@@ -77,11 +77,11 @@
 | 
			
		||||
***
 | 
			
		||||
 | 
			
		||||
### 如何使用
 | 
			
		||||
> 1. 完整复制下面的命令到终端按回车键即可执行,若无法安装 `curl` 软件包可复制源码到本地后手动执行。
 | 
			
		||||
> 2. 为了适配所有环境,建议使用 `Root` 用户执行脚本,切换命令为 `sudo -i` ,如遇报错请查看常见问题与帮助。
 | 
			
		||||
> 3. 如果您使用的环境没有安装或不支持简体中文环境,请通过 `SSH客户端工具` 使用,否则将无法正确选择交互内容。
 | 
			
		||||
> 4. 执行脚本过程中会自动备份原有源无需手动备份,期间会在终端输出多个主观选择交互内容,可按回车键快速确认。
 | 
			
		||||
> 5. 脚本支持在原有源配置错误或者不存在的情况下使用,并且可以重复使用;脚本变更的软件源默认使用 `Http 协议`。
 | 
			
		||||
> 完整复制上面的命令到终端按回车键即可执行,若无法安装 `curl` 软件包可复制源码到本地后手动执行\
 | 
			
		||||
> 为了适配所有环境,建议使用 `Root` 用户执行脚本,切换命令为 `sudo -i` ,如遇报错请查看常见问题与帮助\
 | 
			
		||||
> 如果您使用的环境没有安装或不支持简体中文环境,请通过 `SSH客户端工具` 使用,否则将无法正确选择交互内容\
 | 
			
		||||
> 执行脚本过程中会自动备份原有源无需手动备份,期间会在终端输出多个主观选择交互内容,可按回车键快速确认\
 | 
			
		||||
> 脚本支持在原有源配置错误或者不存在的情况下使用,并且可以重复使用;脚本变更的软件源默认使用 `HTTP 协议`
 | 
			
		||||
 | 
			
		||||
- `GNU/Linux` 一键更换国内软件源脚本
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -34,7 +34,8 @@
 | 
			
		||||
</tr>
 | 
			
		||||
</table>
 | 
			
		||||
 | 
			
		||||
> 目前仅支持上述基于 Debian 与 Redhat 系的发行版和及其部分衍生版本 \
 | 
			
		||||
> [!NOTE|label:说明]
 | 
			
		||||
> 目前仅支持上述基于 Debian 与 RedHat 系的发行版和及其部分衍生版本 \
 | 
			
		||||
> 同样支持上述版本中拥有相同底层核心的其它发行版,例如 [`Armbian`](https://www.armbian.com) [`Kubuntu`](https://kubuntu.org) [`Oracle Linux`](https://www.oracle.com/cn/technical-resources) 等
 | 
			
		||||
 | 
			
		||||
## 软件源
 | 
			
		||||
@@ -42,22 +43,23 @@
 | 
			
		||||
 | 
			
		||||
| | 镜像站名称 | 镜像站地址 | IPv6 | Kali Linux | Fedora | EPEL |
 | 
			
		||||
| :------: | :------: | :------: | :------: | :------: | :------: | :------: |
 | 
			
		||||
| 1 | 阿里云 | [mirrors.aliyun.com](https://developer.aliyun.com/special/mirrors/notice) | √ | √ | √ | √ |
 | 
			
		||||
| 2 | 腾讯云 | [mirrors.cloud.tencent.com](https://mirrors.cloud.tencent.com) | √ | √ | √ | √ |
 | 
			
		||||
| 3 | 华为云 | [mirrors.huaweicloud.com](https://mirrors.huaweicloud.com) | √ | √ | √ | √ |
 | 
			
		||||
| 4 | 网易 | [mirrors.163.com](https://mirrors.163.com) |  |  | √ |  |
 | 
			
		||||
| 1 | 阿里云 | [mirrors.aliyun.com](https://developer.aliyun.com/special/mirrors/notice) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 2 | 腾讯云 | [mirrors.cloud.tencent.com](https://mirrors.cloud.tencent.com) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 3 | 华为云 | [mirrors.huaweicloud.com](https://mirrors.huaweicloud.com) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 4 | 网易 | [mirrors.163.com](https://mirrors.163.com) |  |  | :fa-solid fa-check: |  |
 | 
			
		||||
| 5 | 搜狐 | [mirrors.sohu.com](https://mirrors.sohu.com) |  |  |  |  |
 | 
			
		||||
| 6 | 清华大学 | [mirrors.tuna.tsinghua.edu.cn](https://mirrors.tuna.tsinghua.edu.cn) | √ | √ | √ | √ |
 | 
			
		||||
| 7 | 浙江大学 | [mirrors.zju.edu.cn](https://mirrors.zju.edu.cn) |  | √ | √ | √ |
 | 
			
		||||
| 8 | 南京大学 | [mirrors.nju.edu.cn](https://mirrors.nju.edu.cn) |  | √ | √ | √ |
 | 
			
		||||
| 9 | 重庆大学 | [mirrors.cqu.edu.cn](https://mirrors.cqu.edu.cn) |  | √ | √ | √ |
 | 
			
		||||
| 10 | 兰州大学 | [mirror.lzu.edu.cn](https://mirror.lzu.edu.cn) | √ |  | √ | √ |
 | 
			
		||||
| 11 | 上海交通大学 | [mirror.sjtu.edu.cn](https://mirror.sjtu.edu.cn) | √ | √ | √ | √ |
 | 
			
		||||
| 12 | 哈尔滨工业大学 | [mirrors.hit.edu.cn](https://mirrors.hit.edu.cn) | √ | √ |  | √ |
 | 
			
		||||
| 13 | 中国科学技术大学 | [mirrors.ustc.edu.cn](https://mirrors.ustc.edu.cn) | √ | √ | √ | √ |
 | 
			
		||||
| 6 | 清华大学 | [mirrors.tuna.tsinghua.edu.cn](https://mirrors.tuna.tsinghua.edu.cn) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 7 | 浙江大学 | [mirrors.zju.edu.cn](https://mirrors.zju.edu.cn) |  | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 8 | 南京大学 | [mirrors.nju.edu.cn](https://mirrors.nju.edu.cn) |  | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 9 | 重庆大学 | [mirrors.cqu.edu.cn](https://mirrors.cqu.edu.cn) |  | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 10 | 兰州大学 | [mirror.lzu.edu.cn](https://mirror.lzu.edu.cn) | :fa-solid fa-check: |  | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 11 | 上海交通大学 | [mirror.sjtu.edu.cn](https://mirror.sjtu.edu.cn) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
| 12 | 哈尔滨工业大学 | [mirrors.hit.edu.cn](https://mirrors.hit.edu.cn) | :fa-solid fa-check: | :fa-solid fa-check: |  | :fa-solid fa-check: |
 | 
			
		||||
| 13 | 中国科学技术大学 | [mirrors.ustc.edu.cn](https://mirrors.ustc.edu.cn) | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: | :fa-solid fa-check: |
 | 
			
		||||
> 所有镜像站均支持 `Debian` `Ubuntu` `CentOS` 软件源,建议优先选择由企业提供的软件源
 | 
			
		||||
 | 
			
		||||
?> 如果使用过程中脚本不能正常输出中文内容则可对照此列表使用,顺序与脚本一致
 | 
			
		||||
> [!TIP]
 | 
			
		||||
> 如果使用过程中脚本不能正常输出中文内容则可对照此列表使用,顺序与脚本一致
 | 
			
		||||
 | 
			
		||||
## 执行流程
 | 
			
		||||
- └ 选择国内源 `交互`
 | 
			
		||||
@@ -76,26 +78,28 @@
 | 
			
		||||
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/ChangeMirrors.sh)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
- 1. 完整复制上面的命令到终端按回车键即可执行,若无法安装 `curl` 软件包可复制源码到本地后手动执行。
 | 
			
		||||
- 2. 为了适配所有环境,建议使用 `Root` 用户执行脚本,切换命令为 `sudo -i` ,如遇报错请查看常见问题与帮助。
 | 
			
		||||
- 3. 如果您使用的环境没有安装或不支持简体中文环境,请通过 `SSH客户端工具` 使用,否则将无法正确选择交互内容。
 | 
			
		||||
- 4. 执行脚本过程中会自动备份原有源无需手动备份,期间会在终端输出多个主观选择交互内容,可按回车键快速确认。
 | 
			
		||||
- 5. 脚本支持在原有源配置错误或者不存在的情况下使用,并且可以重复使用;脚本变更的软件源默认使用 `HTTP 协议`。
 | 
			
		||||
- 完整复制上面的命令到终端按回车键即可执行,若无法安装 `curl` 软件包可复制源码到本地后手动执行
 | 
			
		||||
- 为了适配所有环境,建议使用 `Root` 用户执行脚本,切换命令为 `sudo -i` ,如遇报错请查看常见问题与帮助
 | 
			
		||||
- 如果您使用的环境没有安装或不支持简体中文环境,请通过 `SSH客户端工具` 使用,否则将无法正确选择交互内容
 | 
			
		||||
- 执行脚本过程中会自动备份原有源无需手动备份,期间会在终端输出多个主观选择交互内容,可按回车键快速确认
 | 
			
		||||
- 脚本支持在原有源配置错误或者不存在的情况下使用,并且可以重复使用;脚本变更的软件源默认使用 `HTTP 协议`
 | 
			
		||||
 | 
			
		||||
> [!ATTENTION|label:未启用的源]
 | 
			
		||||
> **Debian** 系 Linux 默认禁用了**源码仓库**和**预发布软件源**,若需启用请将 `list` 源文件中相关内容的所在行**取消注释**\
 | 
			
		||||
> **RedHat** 系 Linux 配置了所有可以配置的仓库,但有一些仓库**默认没有启用**,若需启用请将 `repo` 源文件中的 `enabled=0` 修改成 `enabled=1`
 | 
			
		||||
 | 
			
		||||
## 其它脚本
 | 
			
		||||
- #### `Docker` 一键安装脚本 <!-- {docsify-ignore} -->
 | 
			
		||||
- #### :fa-brands fa-docker:`Docker` 一键安装脚本 <!-- {docsify-ignore} -->
 | 
			
		||||
 | 
			
		||||
    ```bash
 | 
			
		||||
    bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
> `Docker CE`:Docker Community Edition 镜像仓库,用于下载并安装 Docker 相关软件包。\
 | 
			
		||||
> `Docker Hub`:Docker Hub 镜像仓库,默认为官方提供的公共库,用于切换下载镜像时的来源仓库,简称镜像加速器。
 | 
			
		||||
    > [!NOTE|label:定义]
 | 
			
		||||
    > `Docker CE`:Docker Community Edition 镜像仓库,用于下载并安装 Docker 相关软件包。\
 | 
			
		||||
    > `Docker Hub`:Docker Hub 镜像仓库,默认为官方提供的公共库,用于切换下载镜像时的来源仓库,简称镜像加速器。
 | 
			
		||||
 | 
			
		||||
> 脚本集成安装 `Docker Engine`与 `Docker Compose`,可手动选择安装版本、下载源、镜像加速器,支持国内外服务器环境和 `ARM`架构处理器环境使用
 | 
			
		||||
    > 脚本集成安装 `Docker Engine`与 `Docker Compose`,可手动选择安装版本、下载源、镜像加速器,支持国内外服务器环境和 `ARM`架构处理器环境使用
 | 
			
		||||
 | 
			
		||||
## 常见问题
 | 
			
		||||
- #### 如果提示 `Command 'curl' not found` 则说明当前未安装 `curl` 软件包 <!-- {docsify-ignore} -->
 | 
			
		||||
 
 | 
			
		||||
@@ -4,9 +4,7 @@
 | 
			
		||||
   <a href="https://gitee.com/SuperManito/LinuxMirrors"><img src="./img/icon/gitee.svg" width="100" height="50"/></a>
 | 
			
		||||
 | 
			
		||||
### 脚本一键更换 Linux 软件源
 | 
			
		||||
 | 
			
		||||
### 让换源更简单
 | 
			
		||||
 | 
			
		||||
[Github](https://github.com/SuperManito/LinuxMirrors)
 | 
			
		||||
[Gitee](https://gitee.com/SuperManito/LinuxMirrors)
 | 
			
		||||
[Github](https://github.com/SuperManito/LinuxMirrors)[Gitee](https://gitee.com/SuperManito/LinuxMirrors)\
 | 
			
		||||
[开始使用](#适配系统)
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										31
									
								
								docs/css/fontawesome.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								docs/css/fontawesome.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@@ -7,12 +7,13 @@
 | 
			
		||||
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
 | 
			
		||||
  <meta name="description" content="Description">
 | 
			
		||||
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
 | 
			
		||||
  <link rel="stylesheet" href="./css/vue.css">
 | 
			
		||||
  <link rel="stylesheet" href="./css/vue.css" />
 | 
			
		||||
  <link rel="stylesheet" href="./css/fontawesome.css" />
 | 
			
		||||
  <link rel="icon" type="image/x-icon" href="./img/icon/linux.svg" />
 | 
			
		||||
</head>
 | 
			
		||||
 | 
			
		||||
<body>
 | 
			
		||||
  <div id="app">网页加载中...</div>
 | 
			
		||||
  <div id="app">正在加载...</div>
 | 
			
		||||
  <script>
 | 
			
		||||
    window.$docsify = {
 | 
			
		||||
      name: 'LinuxMirrors',
 | 
			
		||||
@@ -50,9 +51,49 @@
 | 
			
		||||
        pathNamespaces: /^(\/(zh-cn|ru-ru))?(\/(v1|v2))?/
 | 
			
		||||
      },
 | 
			
		||||
 | 
			
		||||
      // 字数统计
 | 
			
		||||
      count: {
 | 
			
		||||
        countable: true,
 | 
			
		||||
        position: 'bottom',
 | 
			
		||||
        margin: "30px",
 | 
			
		||||
        float: 'right',
 | 
			
		||||
        fontsize: '1em',
 | 
			
		||||
        color: 'var(--textColor)',
 | 
			
		||||
        language: 'chinese',
 | 
			
		||||
        localization: {
 | 
			
		||||
          words: "",
 | 
			
		||||
          minute: ""
 | 
			
		||||
        },
 | 
			
		||||
        isExpected: true
 | 
			
		||||
      },
 | 
			
		||||
 | 
			
		||||
      // 灵活警告插件
 | 
			
		||||
      'flexible-alerts': {
 | 
			
		||||
        note: {
 | 
			
		||||
          label: {
 | 
			
		||||
            '/': '注释'
 | 
			
		||||
          }
 | 
			
		||||
        },
 | 
			
		||||
        tip: {
 | 
			
		||||
          label: {
 | 
			
		||||
            '/': '友情提示'
 | 
			
		||||
          }
 | 
			
		||||
        },
 | 
			
		||||
        warning: {
 | 
			
		||||
          label: {
 | 
			
		||||
            '/': '警告'
 | 
			
		||||
          }
 | 
			
		||||
        },
 | 
			
		||||
        attention: {
 | 
			
		||||
          label: {
 | 
			
		||||
            '/': '注意'
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      },
 | 
			
		||||
 | 
			
		||||
      // 页脚内容
 | 
			
		||||
      footer: {
 | 
			
		||||
        copy: '<span>Copyright © 2022,</span>',
 | 
			
		||||
        copy: '<span>Copyright <i class="fa-regular fa-copyright"></i> </span> 2022,</span>',
 | 
			
		||||
        auth: ' <a href="javascript:window.open(\'https://github.com/SuperManito\')">SuperManito</a> . Released under the <a href="javascript:window.open(\'https://github.com/SuperManito/LinuxMirrors/blob/main/LICENSE\')">GPL-2.0</a>',
 | 
			
		||||
        pre: '',
 | 
			
		||||
        style: 'text-align: center;',
 | 
			
		||||
@@ -113,13 +154,20 @@
 | 
			
		||||
  </script>
 | 
			
		||||
 | 
			
		||||
  <!-- Docsify v4 -->
 | 
			
		||||
  <script src="./js/docsify@4.js"></script>
 | 
			
		||||
  <script src="./js/docsify.min.js"></script>
 | 
			
		||||
  <!-- 暗黑主题 -->
 | 
			
		||||
  <script src="./js/dark-theme.js"></script>
 | 
			
		||||
  <!-- Font Awesome 图标 -->
 | 
			
		||||
  <script src="./js/docsify-fontawesome.min.js"></script>
 | 
			
		||||
  <script src="./js/docsify-fontawesome.sub.js"></script>
 | 
			
		||||
  <!-- 灵活警告插件 -->
 | 
			
		||||
  <script src="./js/docsify-flexible-alerts.min.js"></script>
 | 
			
		||||
  <!-- 页脚内容 -->
 | 
			
		||||
  <script src="./js/docsify-footer-enh.min.js"></script>
 | 
			
		||||
  <!-- 复制代码到剪贴板 -->
 | 
			
		||||
  <script src="./js/docsify-copy-code.min.js"></script>
 | 
			
		||||
  <!-- 字数统计 -->
 | 
			
		||||
  <script src="./js/docsify-countable.min.js"></script>
 | 
			
		||||
  <!-- 阅读进度条 -->
 | 
			
		||||
  <script src="./js/docsify-progress.min.js"></script>
 | 
			
		||||
  <!-- Emoji表情支持 -->
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								docs/js/docsify-copy-code.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								docs/js/docsify-copy-code.min.js
									
									
									
									
										vendored
									
									
								
							@@ -5,5 +5,5 @@
 | 
			
		||||
 * (c) 2017-2020 JP Erasmus <jperasmus11@gmail.com>
 | 
			
		||||
 * MIT license
 | 
			
		||||
 */
 | 
			
		||||
!function(){function s(o){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o})(o)}!function(o,e){void 0===e&&(e={});var t=e.insertAt;if(o&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],c=document.createElement("style");c.type="text/css","top"===t&&n.firstChild?n.insertBefore(c,n.firstChild):n.appendChild(c),c.styleSheet?c.styleSheet.cssText=o:c.appendChild(document.createTextNode(o))}}(".docsify-copy-code-button,.docsify-copy-code-button span{cursor:pointer;transition:all .25s ease}.docsify-copy-code-button{position:absolute;z-index:1;top:1.5em;right:.5em;overflow:visible;padding:.2em .4em;border:0;border-radius:3px;outline:0;font-size:1em;background:#8d8d8d2e;color:var(--themeColor);opacity:0}.docsify-copy-code-button span{border-radius:7px;pointer-events:none}.docsify-copy-code-button .error,.docsify-copy-code-button .success{position:absolute;z-index:-100;top:50%;right:0;padding:.5em .65em;font-size:.825em;opacity:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.docsify-copy-code-button.error .error{right:60%;opacity:1;-webkit-transform:translate(-115%,-50%);color:red;background-color:#8d8d8d2e;transform:translate(-115%,-50%)}.docsify-copy-code-button.success .success{right:60%;opacity:1;-webkit-transform:translate(-115%,-50%);color:#00a300;background-color:#8d8d8d2e;transform:translate(-115%,-50%)}.docsify-copy-code-button:focus,pre:hover .docsify-copy-code-button{opacity:1}"),document.querySelector('link[href*="docsify-copy-code"]')&&console.warn("[Deprecation] Link to external docsify-copy-code stylesheet is no longer necessary."),window.DocsifyCopyCodePlugin={init:function(){return function(o,e){o.ready(function(){console.warn("[Deprecation] Manually initializing docsify-copy-code using window.DocsifyCopyCodePlugin.init() is no longer necessary.")})}}},window.$docsify=window.$docsify||{},window.$docsify.plugins=[function(o,r){o.doneEach(function(){var o=Array.apply(null,document.querySelectorAll("pre[data-lang]")),c={buttonText:"复制",errorText:"×",successText:"✔"};r.config.copyCode&&Object.keys(c).forEach(function(t){var n=r.config.copyCode[t];"string"==typeof n?c[t]=n:"object"===s(n)&&Object.keys(n).some(function(o){var e=-1<location.href.indexOf(o);return c[t]=e?n[o]:c[t],e})});var e=['<button class="docsify-copy-code-button">','<span class="label">'.concat(c.buttonText,"</span>"),'<span class="error">'.concat(c.errorText,"</span>"),'<span class="success">'.concat(c.successText,"</span>"),"</button>"].join("");o.forEach(function(o){o.insertAdjacentHTML("beforeend",e)})}),o.mounted(function(){document.querySelector(".content").addEventListener("click",function(o){if(o.target.classList.contains("docsify-copy-code-button")){var e="BUTTON"===o.target.tagName?o.target:o.target.parentNode,t=document.createRange(),n=e.parentNode.querySelector("code"),c=window.getSelection();t.selectNode(n),c.removeAllRanges(),c.addRange(t);try{document.execCommand("copy")&&(e.classList.add("success"),setTimeout(function(){e.classList.remove("success")},1000))}catch(o){console.error("docsify-copy-code: ".concat(o)),e.classList.add("error"),setTimeout(function(){e.classList.remove("error")},1000)}"function"==typeof(c=window.getSelection()).removeRange?c.removeRange(t):"function"==typeof c.removeAllRanges&&c.removeAllRanges()}})})}].concat(window.$docsify.plugins||[])}();
 | 
			
		||||
!function(){function s(o){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o})(o)}!function(o,e){void 0===e&&(e={});var t=e.insertAt;if(o&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],c=document.createElement("style");c.type="text/css","top"===t&&n.firstChild?n.insertBefore(c,n.firstChild):n.appendChild(c),c.styleSheet?c.styleSheet.cssText=o:c.appendChild(document.createTextNode(o))}}(".docsify-copy-code-button,.docsify-copy-code-button span{cursor:pointer;transition:all .25s ease}.docsify-copy-code-button{position:absolute;z-index:1;top:1.2em;right:.5em;overflow:visible;padding:.3em .4em;border:0;border-radius:6px;outline:0;font-size:1.2em;background:#a8a8a825;color:var(--themeColor);opacity:0}.docsify-copy-code-button span{border-radius:7px;pointer-events:none}.docsify-copy-code-button .error,.docsify-copy-code-button .success{position:absolute;z-index:-100;top:50%;right:0;padding:.5em .65em;font-size:.825em;opacity:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.docsify-copy-code-button.error .error{right:60%;opacity:1;-webkit-transform:translate(-115%,-50%);color:red;background-color:#a8a8a825;transform:translate(-115%,-50%)}.docsify-copy-code-button.success .success{right:-25%;opacity:1;-webkit-transform:translate(-115%,-50%);color:#00a300;background-color:transparent;transform:translate(-115%,-50%)}.docsify-copy-code-button:focus,pre:hover .docsify-copy-code-button{opacity:1}"),document.querySelector('link[href*="docsify-copy-code"]')&&console.warn("[Deprecation] Link to external docsify-copy-code stylesheet is no longer necessary."),window.DocsifyCopyCodePlugin={init:function(){return function(o,e){o.ready(function(){console.warn("[Deprecation] Manually initializing docsify-copy-code using window.DocsifyCopyCodePlugin.init() is no longer necessary.")})}}},window.$docsify=window.$docsify||{},window.$docsify.plugins=[function(o,r){o.doneEach(function(){var o=Array.apply(null,document.querySelectorAll("pre[data-lang]")),c={buttonText:'<i class="fa-regular fa-copy"></i>',errorText:'<i class="fa-solid fa-xmark"></i>',successText:'<i class="fa-solid fa-circle-check"></i>'};r.config.copyCode&&Object.keys(c).forEach(function(t){var n=r.config.copyCode[t];"string"==typeof n?c[t]=n:"object"===s(n)&&Object.keys(n).some(function(o){var e=-1<location.href.indexOf(o);return c[t]=e?n[o]:c[t],e})});var e=['<button class="docsify-copy-code-button">','<span class="label">'.concat(c.buttonText,"</span>"),'<span class="error">'.concat(c.errorText,"</span>"),'<span class="success">'.concat(c.successText,"</span>"),"</button>"].join("");o.forEach(function(o){o.insertAdjacentHTML("beforeend",e)})}),o.mounted(function(){document.querySelector(".content").addEventListener("click",function(o){if(o.target.classList.contains("docsify-copy-code-button")){var e="BUTTON"===o.target.tagName?o.target:o.target.parentNode,t=document.createRange(),n=e.parentNode.querySelector("code"),c=window.getSelection();t.selectNode(n),c.removeAllRanges(),c.addRange(t);try{document.execCommand("copy")&&(e.classList.add("success"),setTimeout(function(){e.classList.remove("success")},1000))}catch(o){console.error("docsify-copy-code: ".concat(o)),e.classList.add("error"),setTimeout(function(){e.classList.remove("error")},1000)}"function"==typeof(c=window.getSelection()).removeRange?c.removeRange(t):"function"==typeof c.removeAllRanges&&c.removeAllRanges()}})})}].concat(window.$docsify.plugins||[])}();
 | 
			
		||||
//# sourceMappingURL=docsify-copy-code.min.js.map
 | 
			
		||||
							
								
								
									
										1
									
								
								docs/js/docsify-countable.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								docs/js/docsify-countable.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
var defaultOptions={countable:!0,position:"top",margin:"10px",float:"right",fontsize:"0.9em",color:"rgb(90,90,90)",language:"english",isExpected:!0};function plugin(t,n){if(!defaultOptions.countable)return;let o;t.beforeEach(function(t){return o=t.match(/([\u4e00-\u9fa5]+?|[a-zA-Z0-9]+)/g).length,t}),t.afterEach(function(t,n){let i=o+" words",e=Math.ceil(o/400)+" min";"chinese"===defaultOptions.language&&(i=o+" 字",e=Math.ceil(o/400)+" 分钟"),n(`\n        ${"bottom"===defaultOptions.position?t:""}\n        <div style="margin-${defaultOptions.position?"bottom":"top"}: ${defaultOptions.margin};">\n            <span style="\n                  float: ${"right"===defaultOptions.float?"right":"left"};\n                  font-size: ${defaultOptions.fontsize};\n                  color:${defaultOptions.color};">\n           共 ${i}\n            ${defaultOptions.isExpected?`  |  阅读 ${e}`:""}\n            </span>\n            <div style="clear: both"></div>\n        </div>\n        ${"bottom"!==defaultOptions.position?t:""}\n        `)})}window.$docsify.count=Object.assign(defaultOptions,window.$docsify.count),window.$docsify.plugins=[].concat(plugin,window.$docsify.plugins);
 | 
			
		||||
							
								
								
									
										1
									
								
								docs/js/docsify-fontawesome.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								docs/js/docsify-fontawesome.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
!function(e){var n={};function r(t){if(n[t])return n[t].exports;var o=n[t]={i:t,l:!1,exports:{}};return e[t].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=n,r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,n){if(1&n&&(e=r(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(r.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)r.d(t,o,function(n){return e[n]}.bind(null,o));return t},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,"a",n),n},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r.p="",r(r.s=0)}([function(e,n,r){"use strict";r.r(n),window.$docsify=window.$docsify||{},window.$docsify.plugins=(window.$docsify.plugins||[]).concat((function(e){const n=/:fa[\w -]+:/gm;e.beforeEach(e=>e.replace(n,(function(e,n){return console.log("m: "+e.replace(/:/gi,"")),`<i class="${e.replace(/:/gi,"")}"></i>`}))),e.afterEach((function(e,r){r(e.replace(n,(function(e,n){return console.log("m: "+e.replace(/:/gi,"")),`<i class="${e.replace(/:/gi,"")}"></i>`})))}))}))}]);
 | 
			
		||||
							
								
								
									
										1
									
								
								docs/js/docsify-fontawesome.sub.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								docs/js/docsify-fontawesome.sub.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								docs/js/docsify-progress.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								docs/js/docsify-progress.min.js
									
									
									
									
										vendored
									
									
								
							@@ -4,5 +4,5 @@
 | 
			
		||||
 *
 | 
			
		||||
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 | 
			
		||||
 */
 | 
			
		||||
 function plugin(o,e){let t;o.mounted((function(){const o=document.getElementsByClassName("content")[0];t=parseFloat(window.getComputedStyle(o).paddingTop.replace("px",""));let e=`\n        <div style="position: fixed; width: 100%; z-index: 999; height: ${window.$docsify.progress.height};\n        ${"top"===window.$docsify.progress.position?"top: 0;":"bottom: 0;"}">\n            <div id="progress-display" style="background-color: ${window.$docsify.progress.color}; width: 0; border-radius: 2px; height: ${window.$docsify.progress.height}; transition: width 0.3s;"></div>\n        </div>\n        `;const n=document.getElementsByTagName("body")[0];n.innerHTML=n.innerHTML+e;document.querySelector("div.sidebar-toggle-button").addEventListener("click",(function(o){o.stopPropagation(),function(){const o=document.getElementsByTagName("body")[0];o.classList.contains("close")?o.classList.remove("close"):o.classList.add("close")}()}))})),o.ready((function(){window.addEventListener("scroll",(function(o){let e=t+parseFloat(window.getComputedStyle(document.getElementById("main")).height.replace("px","")),n=document.body.scrollTop+document.documentElement.scrollTop,i=e-document.body.offsetHeight;document.getElementById("progress-display").style.width=Math.ceil(n/i*100)+"%"}))}))}window.$docsify.progress=Object.assign({position:"top",color:"var(--theme-color,#42b983)",height:"3px"},window.$docsify.progress),window.$docsify.plugins=[].concat(plugin,window.$docsify.plugins);
 | 
			
		||||
 function plugin(o,e){let t;o.mounted((function(){const o=document.getElementsByClassName("content")[0];t=parseFloat(window.getComputedStyle(o).paddingTop.replace("px",""));let e=`\n        <div style="position: fixed; width: 100%; z-index: 999; height: ${window.$docsify.progress.height};\n        ${"top"===window.$docsify.progress.position?"top: 0;":"bottom: 0;"}">\n            <div id="progress-display" style="background-color: ${window.$docsify.progress.color}; width: 0; border-radius: 2px; height: ${window.$docsify.progress.height}; transition: width 0.3s;"></div>\n        </div>\n        `;const n=document.getElementsByTagName("body")[0];n.innerHTML=n.innerHTML+e;document.querySelector("div.sidebar-toggle-button").addEventListener("click",(function(o){o.stopPropagation(),function(){const o=document.getElementsByTagName("body")[0];o.classList.contains("close")?o.classList.remove("close"):o.classList.add("close")}()}))})),o.ready((function(){window.addEventListener("scroll",(function(o){let e=t+parseFloat(window.getComputedStyle(document.getElementById("main")).height.replace("px","")),n=document.body.scrollTop+document.documentElement.scrollTop,i=e-document.body.offsetHeight;document.getElementById("progress-display").style.width=Math.ceil(n/i*100)+"%"}))}))}window.$docsify.progress=Object.assign({position:"top",color:"var(--themeColor,#42b983)",height:"3px"},window.$docsify.progress),window.$docsify.plugins=[].concat(plugin,window.$docsify.plugins);
 | 
			
		||||
 //# sourceMappingURL=/sm/751d64f4b5f0684c3d90329d52ec68d82ee2d95f859eb9ffc311aed273874276.map
 | 
			
		||||
							
								
								
									
										1
									
								
								docs/js/docsify.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								docs/js/docsify.min.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2
									
								
								docs/js/prism-bash.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								docs/js/prism-bash.min.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Reference in New Issue
	
	Block a user