mirror of
https://github.com/tuna/mirror-web.git
synced 2025-12-26 05:02:48 +00:00
Source code of the web interface of https://mirrors.tuna.tsinghua.edu.cn/
|
|
||
|---|---|---|
| _includes | ||
| _layouts | ||
| _posts | ||
| static | ||
| .editorconfig | ||
| .gitignore | ||
| Gemfile | ||
| README.md | ||
| _config.yml | ||
| help.html | ||
| index.html | ||
| news.html | ||
| robots.txt | ||
| status.html | ||
TUNA mirrors 主页
运行 Demo
本站使用 Jekyll 编写,并使用 babel 编译 ECMAScript6,因此必须安装 ruby >= 2.0 和 nodejs.
bundle
jekyll build
为正常运行,一些动态数据文件需要下载
wget https://mirrors.tuna.tsinghua.edu.cn/static/tunasync.json -O static/tunasync.json
wget https://mirrors.tuna.tsinghua.edu.cn/static/tunet.json -O static/tunet.json
之后 jekyll serve 即可运行 demo.
贡献文档
基本步骤
- Fork 本项目并 clone
- 创建分支
git checkout -b foo-doc - 在
_posts/help中建立文档文件,文件名格式为年-月-日-名称.md - 用 markdown 语法编写文档
- 提交并推送代码
- 发送 Pull Request
写作规范
- 对于相对不知名的镜像项目,首先用一两句话介绍该项目
- 写明使用方法, 使用 Github Flavored Markdown 格式
- 注意多行代码的
```之前应有一个空行(否则 jekyll 无法正确渲染) - 中英文字符间应留一个空格
特殊用法
表单选择
例如 http://mirrors.tuna.tsinghua.edu.cn/help/gitlab-ce/ 中,通过表单选择操作系统和版本号,生成对应配置文件的代码为:
<form class="form-inline">
<div class="form-group">
<label>你的Debian/Ubuntu版本: </label>
<select class="form-control release-select" data-template="#apt-template" data-target="#apt-content">
<option data-os="debian" data-release="wheezy">Debian 7 (Wheezy)</option>
<option data-os="debian" data-release="jessie" selected>Debian 8 (Jessie)</option>
<option data-os="ubuntu" data-release="trusty">Ubuntu 14.04 LTS</option>
</select>
</div>
</form>
<p></p>
<pre>
<code id="apt-content">
</code>
</pre>
{% raw %}
<script id="apt-template" type="x-tmpl-markup">
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/{{os_name}} {{release_name}} main
</script>
{% endraw %}
<form>包含的内容即为表单, select标签的data-template和data-target属性分别指定配置文件模板和 placeholder 的 id,
option标签为选项,data-os 和 data-release 分别指定操作系统名称和版本号。
code#apt-content部分是占位符,{% raw %}{% endraw %}包含的部分是配置文件模板,通过 {% raw %} 标记防止被 jekyll 转义。
模板使用 Markup.js 语法,可使用 {{os_name}} 和 {{release_name}} 两个变量,
对应于option中的操作系统和版本号设定。