|
|
本館粉絲專頁 |
|
|
使用者:Digipunk/XXT:修訂版本之間的差異
台灣棒球維基館
小 |
|||
| 第14行: | 第14行: | ||
: 設計此系列模板時,原本使用正式英文縮寫做為名稱,例如: | : 設計此系列模板時,原本使用正式英文縮寫做為名稱,例如: | ||
:* <tt>EF = Eighth Finals</tt>,十六強。 | :* <tt>EF = Eighth Finals</tt>,十六強。 | ||
| − | :* <tt>QF = Quarter Finals</tt> | + | :* <tt>QF = Quarter Finals</tt>,八強(半準決賽,準々決賽)。 |
:* <tt>SF = Semi Finals</tt>,四強(準決賽)。 | :* <tt>SF = Semi Finals</tt>,四強(準決賽)。 | ||
:* <tt>FF = Final</tt>,二強(決賽)。 | :* <tt>FF = Final</tt>,二強(決賽)。 | ||
: 瞬間又覺得這些名稱不夠直覺,我自己寫到一半都可能搞混,不如來個「台式邏輯」,改成現在的 <tt>TOP<I>n</I></tt> 形式,直覺多了: | : 瞬間又覺得這些名稱不夠直覺,我自己寫到一半都可能搞混,不如來個「台式邏輯」,改成現在的 <tt>TOP<I>n</I></tt> 形式,直覺多了: | ||
| − | :* <tt>TOP16</tt> | + | :* <tt>TOP16</tt>:十六強。 |
| − | :* <tt>TOP8</tt> | + | :* <tt>TOP8</tt>:八強。 |
| − | :* <tt>TOP4</tt> | + | :* <tt>TOP4</tt>:四強。 |
| − | :* <tt>TOP2</tt> | + | :* <tt>TOP2</tt>:二強。 |
| − | + | ||
| − | + | ||
</DIV> | </DIV> | ||
| − | == | + | ==適用隊數== |
<DIV STYLE="width:85%"> | <DIV STYLE="width:85%"> | ||
| − | : | + | :※所謂「適用隊數」,是指該模板在處理這些隊數有較恰當的版面,否則全部都用 <tt>TOP16</tt> 也可以,只是隊數太少時會有很多空白區域。 |
| − | :* | + | :* <B>{{User:Digipunk/TPL|XXT/TOP16|link}}</B>:十六強,適用於 <tt>14~16</tt> 隊。 |
| − | :* | + | :* <B>{{User:Digipunk/TPL|XXT/TOP13|link}}</B>:十三強,適用於 <tt>9~13</tt> 隊。 |
| + | :* <B>{{User:Digipunk/TPL|XXT/TOP8|link}}</B>:八強,適用於 <tt>5~8</tt> 隊。 | ||
| + | :* <B>{{User:Digipunk/TPL|XXT/TOP4|link}}</B>:四強,適用於 <tt>3~4</tt> 隊。 | ||
| + | :* <B><tt><nowiki>{{XXT/TOP2}}</nowiki></tt></B>:二強,實用性太低,沒打算提供前端界面。 | ||
</DIV> | </DIV> | ||
| − | == | + | ==架構== |
| − | + | ||
<DIV STYLE="width:85%"> | <DIV STYLE="width:85%"> | ||
| − | + | :* 依隊數之不同而分成不同階層的模板,這些層級並非獨立運作,而是將資料一層層傳遞,每一層都是前一層的 VPL,整理參數並繼續傳遞給下一層。 | |
| − | :* | + | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
</DIV> | </DIV> | ||
| − | === | + | ====TOP<I>n</I> 需要做的事==== |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | = | + | |
| − | + | ||
| − | + | ||
| − | + | ||
<DIV STYLE="85%"> | <DIV STYLE="85%"> | ||
: 以 <tt>TOP4</tt> 為例: | : 以 <tt>TOP4</tt> 為例: | ||
2016年8月5日 (五) 16:28的修訂版本
目次 |
命名
XXT
- 這類模板名稱只要簡短、有意義即可,不要落落長,也不要毫無意義的名稱。
- XXT 勉強符合要求,夠簡短,意義方面可聯想為「線形圖」漢語拼音的字首(Xian-Xing-Tu)。
TOPn
- 設計此系列模板時,原本使用正式英文縮寫做為名稱,例如:
- EF = Eighth Finals,十六強。
- QF = Quarter Finals,八強(半準決賽,準々決賽)。
- SF = Semi Finals,四強(準決賽)。
- FF = Final,二強(決賽)。
- 瞬間又覺得這些名稱不夠直覺,我自己寫到一半都可能搞混,不如來個「台式邏輯」,改成現在的 TOPn 形式,直覺多了:
- TOP16:十六強。
- TOP8:八強。
- TOP4:四強。
- TOP2:二強。
適用隊數
- ※所謂「適用隊數」,是指該模板在處理這些隊數有較恰當的版面,否則全部都用 TOP16 也可以,只是隊數太少時會有很多空白區域。
- {{XXT/TOP16}} :十六強,適用於 14~16 隊。
- {{XXT/TOP13}} :十三強,適用於 9~13 隊。
- {{XXT/TOP8}} :八強,適用於 5~8 隊。
- {{XXT/TOP4}} :四強,適用於 3~4 隊。
- {{XXT/TOP2}}:二強,實用性太低,沒打算提供前端界面。
架構
- 依隊數之不同而分成不同階層的模板,這些層級並非獨立運作,而是將資料一層層傳遞,每一層都是前一層的 VPL,整理參數並繼續傳遞給下一層。
TOPn 需要做的事
- 以 TOP4 為例:
- 處理 TOP4 相關參數。由於 TOP4 是前端介面,這些參數可能來自直接指定;TOP4 同時是 TOP8 的 VPL,故參數也可能從 TOP8 傳遞而來。
- 計算晉級 TOP2 的隊名,根據目前 TOP4 各隊比數。
- 檢查目前 TOP4 各隊比數是否有 -2 者(不顯示),若有的話,把它的前一輪(TOP8)兩隊也都設為 -2。
隊名表示法之進階探討
- 此系列線形圖以「場次」為單位,以 TOPn-Mx- 表示「n 強階段,第 x 場」比賽。
- 兩隊名稱:TOPn-Mx-TEAMS = team1/team2
- 兩隊得分:TOPn-Mx-SCORES = score1/score2
- 場次資訊:TOPn-Mx-INFO = game/field/time
- 使用的格式都是合併寫法(以 "/" 分隔)。其中,兩隊得分與場次資訊沒有什麼問題,前者只是單純數字,後者可以控制不在文字裡出現 "/",但是隊名的問題就大了。
- 為了擁有合併寫法的簡潔便利,此系列模板以國家代碼形式接受隊名,將自動呼叫 {{TeamX}} 顯示成小國旗與中文隊名。
| TOP8-M2-TEAMS = ROC / KOR | TOP8-M2-SCORES = 18 / 0 | TOP8-M2-INFO = Game 2 / 台中洲際 / 2016-07-25 17:30
技術觀點
- 模板在接受這種合併寫法時,必須利用 "/" 將字串切開,然而此功能的原始目的是進行路徑解析,也就是說,特殊符號不應該出現在 "/" 的兩邊,包括中括號、大括號等等,這意味著我們不能直接在隊名中使用其它模板(如 {{TeamX}} ),否則將造成解析失敗,無法判斷 "/" 兩邊的子字串。
- 即使這種表示法只能以代碼表示球隊,但已滿足絕大部份國際賽所需。
替代寫法
- 某些時候,上述輸入法不適用,例如:
- 全壘打大賽,參賽者為個人,若我們想在人名前面加上球隊 logo,上述輸入法就不適用了,因為球隊 logo 並沒有對應的國家代碼。
- 基於某些因素,在一場賽事裡有國家用兩個以上的分隊參賽,則上述表示法也不適用。例如日本以三個分隊參賽,而上述表示法只能以代碼 JPN 或 JP 代入,顯示出來的中文隊名都是日本,無法辨別其分隊。(2008年第五屆亞洲青少棒錦標賽便有三個日本分隊)
- 任何情況下都可以用另一種形式「單獨指定」隊名(或人名),而且不受限於所使用的文字或符號,只要把 -TEAMS 拆成 -TEAM1 與 -TEAM2 即可。以下三種寫法同義:
<!-- 寫法一:合併寫法,必須使用國名縮寫,將自動轉換成小國旗與國名 --> | TOP8-M3-TEAMS = USA / MEX
<!-- 寫法二:單獨指定,若為國名縮寫,則自動轉換成小國旗與國名 --> | TOP8-M3-TEAM1 = USA | TOP8-M3-TEAM2 = MEX
<!-- 寫法三:單獨指定,若非國名縮寫,則直接輸出 -->
| TOP8-M3-TEAM1 = {{TeamX|USA|美國 }}
| TOP8-M3-TEAM2 = {{TeamX|MEX|墨西哥}}
- 這種單獨指定的形式,自然也可以套用在球員:
<!-- 2016年中職全壘打大賽,八強階段,第二場,陽耀勳 vs 高國輝 -->
| TOP8-M2-TEAM1 = {{Lamigo桃猿}} [[陽耀勳]]
| TOP8-M2-TEAM2 = {{義大犀牛}} [[高國輝]]
- 以及分隊的情況:
<!-- 2008 BFA U15,以隊名為例,並非實際賽程,該比賽不是單淘汰制 -->
| TOP8-M1-TEAM1 = {{TeamX|JPN|日本伊豆}}
| TOP8-M1-TEAM2 = {{TeamX|JPN|日本座間}}
優先權
- 個人認為單獨指定的項目,優先權應該高於合併寫法,於是做了下列設計。
- 假設使用此系列模板時做了下列設定(同時使用兩種寫法),則以單獨指定者為優先,無關乎書寫順序:
| TOP8-M3-TEAM2 = JPN | TOP8-M3-TEAMS = USA / MEX | TOP8-M3-TEAM1 = RUS <!-- 該場次的兩隊將為:俄羅斯 vs 日本 -->
棄賽處理及賽程調整
- 這部份值得一提,此系列模板可利用「特殊值」處理某些狀況:
- 發生球隊棄賽的狀況。例如,不小心遇到印度隊。
- 參賽隊數不足。例如,欲使用八強圖,但晉級隊數僅有六隊,這種情況必須手動使其中兩個位置消失。
棄賽處理
- 方法一:不需處理,直接填入最終判決的比數即可,如此一來,讓該晉級的球隊就自動晉級,該淘汰的自動淘汰。舉例而言,正規九局的比賽,其中一隊棄賽後,依規定通常判決為 9:0;同理,七局的比賽便是 7:0。
- 方法二:使用此系列模板的特殊值 -1。其意義同上,但會把棄賽球隊的背景塗成較暗的顏色,而且分數欄標示為「棄」。(對於晉級的另一隊,應參照上述方式,將其比分正確填為「比賽局數」)
範例
{{XXT/TOP4
| TOP4-M1-TEAMS = JPN / ZAF
| TOP4-M2-TEAMS = IND / NZL
| TOP4-M1-SCORES = 2/11
| TOP4-M2-SCORES = -1/9
...
}}
|
2 | |||||||||||||||||
|
|
||||||||||||||||||
|
11 |
|
冠 軍 | |||||||||||||||
|
|
||||||||||||||||||
|
-1 |
|
||||||||||||||||
|
|
||||||||||||||||||
|
9 | |||||||||||||||||
碎碎唸Ⅰ
- [2016-08-01] 以上文字與範例裡都提到印度,本人並非對印度有成見,只是攤開過去的亞洲棒球賽事記錄來看,印度十場裡約有七場是以 0:9、0:7 那樣的比數做收。
碎碎唸Ⅱ
- [2016-08-01] 當某隊無法繼續比賽(罷賽、球員不足、其它因素等),由裁判「沒收」比賽。在任何棒球記錄文件裡,正式用詞都是 "forfeit",即「沒收」,被沒收的比賽稱為 "forfeited games",日文稱「沒收試合」。問題來了,這不是英文教學,我只是想說,中華民國某個棒球協會的賽後文件裡總是寫成「褫奪」,不知道哪裡來的創意,根本不同的意義,中英文都是不同意義,更不是正式棒球規則用語;但由於它貴為棒球協會,它文件資料那麼寫,小朋友們就跟著講褫奪。拜託一下,那又不是什麼公信力或評價很高的單位,憑空生出一個看似專業的詞彙,小朋友要有科學的精神,要懂得懷疑,好不好?
賽程調整
- 利用特殊值 -2 取消某個位置。
- 此系列模板會盡可能處理該位置之後的狀態,但不到完美的程度。例如,當某個位置被取消後,它不該再出現在敗部(排名賽),萬一它出現了、模板沒有處理好,請自行再次手動把不該出現的位置設為 -2,讓它消失。
- 此功能適用於球隊數量不足、有種子球隊的情況。實際上,許多時候可以將對戰的兩隊都取消掉,直接在下一輪填入種子球隊隊名,使用者應視情況調整。
範例
- 以下示範使 TOP4-M2-TEAM2 的位置消失,該位置的隊名可不填(反正不會顯示),分數欄填入 -2,而 TEAM1 自動晉級。
{{XXT/TOP4
| TOP4-M1-TEAMS = JPN / ZAF
| TOP4-M2-TEAMS = IND / NZL
| TOP4-M1-SCORES = 8/-2
| TOP4-M2-SCORES = 2/5
...
}}
|
8 | ||||||||||||||||
|
|
|||||||||||||||||
|
冠 軍 | ||||||||||||||||
|
|
|||||||||||||||||
|
2 |
|
|||||||||||||||
|
|
|||||||||||||||||
|
5 | ||||||||||||||||
- 在以上的賽程裡,更好的寫法是把兩隊都取消,直接把 JPN 填入下一輪:
{{XXT/TOP4
| TOP4-M1-TEAMS = JPN / ZAF
| TOP4-M2-TEAMS = IND / NZL
| TOP4-M1-SCORES = -2/-2
| TOP4-M2-SCORES = 2/5
| TOP2-M1-TEAM1 = JPN
...
}}
|
冠 軍 | ||||||||||||||||
|
|
|||||||||||||||||
|
2 |
|
|||||||||||||||
|
|
|||||||||||||||||
|
5 | ||||||||||||||||
開發記錄
- [2016-07-20] 建立模板。
- [2016-07-26] 遇到巢狀條件句階層過多的錯誤,簡化寫法與流程,並一律轉換隊名縮寫。
- [2016-08-01] 棄賽處置。