跳转至

F.A.Q.

本頁面主要解答一些常見的問題。

我想問點與這個 Wiki 相關的問題

Q:你們是為什麼想要做這個 Wiki 的呢?

A:不知道你在學 OI 的時候,面對龐大的知識體系,有沒有感到過迷茫無助的時候?OI Wiki 想要做的事情可能類似於「讓更多競賽資源不充裕的同學能方便地接觸到訓練資源」。當然這麼表述也不完全,做 Wiki 的動機可能也很純粹,只是簡單地想要對 OI 的發展做出一點點微小的貢獻吧。XD


Q:我很感興趣,怎麼參與?

A:OI Wiki 現在託管在 GitHub 上,你可以直接訪問這個 repo 來查看最新進展。參與的途徑包括在 GitHub 上面開 IssuePull Request,或者在交流羣中分享你的想法、直接向管理員投稿。目前,我們使用的框架是用 Python 開發的 MkDocs,支持 Markdown 格式(也支持插入數學公式)。


Q:可是我比較弱……不知道我能做點什麼。

A:一切源於熱愛。你可以協助其他人審核修改稿件,幫助我們宣傳 OI Wiki,為社區營造良好學習交流氛圍!


Q:現在主要是誰在做這件事啊?感覺這是個大坑,真的能做好嗎?

A:最開始主要是一些退役老年選手在做這件事,後來遇到了很多志同道合的小夥伴:有現役選手,退役玩家,也有從未參加過 OI 的朋友。目前,這個項目主要是由 OI Wiki 項目組來維護(下面是一張合影)。

當然,這個項目只靠我們的力量是很難做得十全十美的,我們誠摯地邀請你一起來完善 OI Wiki


Q:你們怎麼保證我們添加的內容不會突然消失?

A:我們把內容託管在 GitHub 上面,即使我們的服務器翻車了,內容也不會丟失。另外,我們也會定期備份大家的心血,即使有一天 GitHub 倒閉了(?),我們的內容也不會丟失。


Q:OI Wiki 好像有空的頁面啊!

A:是的。受限於項目組成員的水平和時間,我們暫時無法完成這些空頁面。所以我們在這裏進行徵稿和招募,希望可以遇到有同樣想法的朋友,我們一起把 OI Wiki 完善起來。


Q:為什麼不直接去寫 中文維基百科 呢?

A:因為我們希望可以真正幫到更多的選手或者對這些內容感興趣的人。而且由於眾所周知的原因,中文維基上的內容並不是無門檻就可以獲取到的。

我想參與進來!

Q:我要怎麼與項目組交流?

A:可以通過 關於本項目裏的交流方式 聯繫我們。


Q:我要怎麼貢獻代碼或者內容?

請參考 如何參與 頁面。


Q:目錄在哪?

A:目錄在項目根目錄下的 mkdocs.yml 文件中。


Q:如何修改一個 topic 的內容?

A:在對應頁面右上方有一個編輯按鈕edit,點擊並確認閲讀了 如何貢獻 之後會跳轉到 GitHub 上對應文件的位置。

或者也可以自行閲讀目錄 (mkdocs.yml) 查找文件位置。


Q:如何添加一個 topic?

A:有兩種選擇:

  • 可以開一個 Issue,註明希望能添加的內容。
  • 可以開一個 Pull Request,在目錄 (mkdocs.yml) 中加上新的 topic,並在 docs 文件夾下對應位置創建一個空的 .md 文件。文檔的格式細節請參考 格式手冊

Q:我嘗試訪問 GitHub 的時候遇到了困難。

A:推薦在 hosts 文件中加入如下幾行1

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# GitHub Start
140.82.114.25                 alive.github.com
140.82.113.5                  api.github.com
185.199.110.153               assets-cdn.github.com
185.199.111.133               avatars.githubusercontent.com
185.199.111.133               avatars0.githubusercontent.com
185.199.111.133               avatars1.githubusercontent.com
185.199.111.133               avatars2.githubusercontent.com
185.199.111.133               avatars3.githubusercontent.com
185.199.111.133               avatars4.githubusercontent.com
185.199.111.133               avatars5.githubusercontent.com
185.199.111.133               camo.githubusercontent.com
140.82.112.22                 central.github.com
185.199.111.133               cloud.githubusercontent.com
140.82.114.9                  codeload.github.com
140.82.113.22                 collector.github.com
185.199.111.133               desktop.githubusercontent.com
185.199.111.133               favicons.githubusercontent.com
140.82.112.3                  gist.github.com
52.216.163.147                github-cloud.s3.amazonaws.com
52.217.124.1                  github-com.s3.amazonaws.com
52.216.144.83                 github-production-release-asset-2e65be.s3.amazonaws.com
52.217.121.249                github-production-repository-file-5c1aeb.s3.amazonaws.com
52.217.206.57                 github-production-user-asset-6210df.s3.amazonaws.com
192.0.66.2                    github.blog
140.82.114.4                  github.com
140.82.113.18                 github.community
185.199.110.154               github.githubassets.com
151.101.1.194                 github.global.ssl.fastly.net
185.199.110.153               github.io
185.199.111.133               github.map.fastly.net
185.199.110.153               githubstatus.com
140.82.112.25                 live.github.com
185.199.111.133               media.githubusercontent.com
185.199.111.133               objects.githubusercontent.com
13.107.42.16                  pipelines.actions.githubusercontent.com
185.199.111.133               raw.githubusercontent.com
185.199.111.133               user-images.githubusercontent.com
13.107.253.40                 vscode.dev
140.82.112.21                 education.github.com
# GitHub End

可以在 GitHub520 上了解到最新內容和更多信息。

Linux 和 macOS 用户可以嘗試使用 依雲gh-check 腳本 獲取訪問最快的 IP,使用 --hosts 參數可以直接更新 hosts 文件。使用 --help 參數可以獲取使用幫助。使用先需要安裝 Python3 和 aiohttp(pip install aiohttp -i https://pypi.tuna.tsinghua.edu.cn/simple/)。依雲博客的介紹:尋找最快的 GitHub IP

同時,您可以使用 Gitclone 服務加速 Clone,可以閲讀其首頁上的説明。

如果您僅僅是想 Clone OI Wiki 的倉庫,那麼:

1
git clone https://gitclone.com/github.com/OI-wiki/OI-wiki

如果您需要向 OI Wiki 貢獻,那麼首先 fork OI Wiki 的倉庫,然後(將 username 替換為您的用户名),需要注意的是提供的示例將使您使用 SSH 連接到 GitHub5

1
2
git clone https://gitclone.com/github.com/username/OI-wiki
git remote set-url origin git@github.com:username/OI-wiki.git

Q:我這裏 pip 也太慢了!

A:可以選擇更換國內源2,或者:

1
pip install -U -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

Q:我在客户端 clone 了這個項目,速度太慢。

A:如果有安裝 git bash,可以加幾個限制來減少下載量。3

1
git clone https://github.com/OI-wiki/OI-wiki.git --depth=1 -b master

Q:我沒裝過 Python 3。

A:可以訪問 Python 官網 瞭解更多信息。


Q:好像提示我 pip 版本過低。

A:進入 cmd/shell 之後,執行以下命令:

1
python -m pip install --upgrade pip

Q:我安裝依賴失敗了。

A:檢查一下:網絡?權限?查看錯誤信息?


Q:我已經 clone 下來了,為什麼部署不了?

A:檢查一下是否安裝好了依賴?


Q:我 clone 了很久之前的 repo,怎麼更新到新版本呢?

A:請參考 GitHub 官方的幫助頁面 Syncing a fork - GitHub Docs


Q:如果是裝了之前的依賴怎麼更新?

A:請輸入以下命令:

1
pip install -U -r requirements.txt

Q:為什麼我的 markdown 格式亂了?

A:可以查閲 cyent 的筆記,或者 MkDocs 使用説明

我們目前使用 remark-lint 來自動化修正格式,可能還有一些 配置 不夠好的地方,歡迎指出。


Q:GitHub 是不是不顯示我的數學公式?

A:是的,GitHub 的預覽不顯示數學公式。但是請放心,MkDocs 是支持數學公式的,可以正常使用,只要是 MathJax 支持的句式都可以使用。


Q:我的數學公式怎麼亂碼了?

A:如果是行間公式(用的 $$),目前已知的問題是需要在 $$ 兩側留有空行,且 $$單獨 放在一行裏(且不要在前加空格)。格式如下:

1
2
3
4
5
// 空行
$$
a_i
$$
// 空行

Q:我的公式為什麼在目錄裏沒有正常顯示?好像雙倍了。

A:是的,這個是 python-markdown 的一個 bug,可能近期會修復。

如果想要避免目錄中出現雙倍公式,可以參考 string 分類下 SAM 的目錄寫法

1
結束位置 <script type="math/tex">endpos</script>

在目錄中會變成

1
結束位置 endpos

注:現在請儘量避免在目錄中引入 MathJax 公式。


Q:如何給一個頁面單獨聲明版權信息?

A:在頁面開頭加一行即可。4

比如:

1
copyright: SATA

注:默認的是 CC BY-SA 4.0 和 SATA。


Q:為什麼作者信息統計處沒有我的名字?

A:如果你發現自己寫過一個頁面中的部分內容,但是你沒有被記錄進作者列表,可以把自己的 GitHub ID 加入到文件頭的 author 字段


感謝你看到了最後,我們現在亟需的,就是你的幫助。

OI Wiki 項目組

2018.8

參考資料與註釋