維基大典
zh_classicalwiki
https://zh-classical.wikipedia.org/wiki/%E7%B6%AD%E5%9F%BA%E5%A4%A7%E5%85%B8:%E5%8D%B7%E9%A6%96
MediaWiki 1.48.0-wmf.3
first-letter
媒體
特殊
討論
用戶
用戶討論
維基大典
維基大典討論
檔案
檔案討論
MediaWiki
MediaWiki討論
模板
模板討論
說明
說明討論
分類
分類討論
門
議
稿
酌稿
TimedText
TimedText talk
模組
模組討論
活動
活動討論
模板:提案
10
8721
448800
269449
2026-11-05T16:40:29Z
Itsmine
5
448800
wikitext
text/x-wiki
{| class="messagebox"
|-
| [[File:Purple_question_mark.png|30px]]
||'''[[:分類:維基制度|典制]]新擬,草案初成。'''案猶未定,暫非法規;文或未周,尚俟損益。願我同人,或就[[{{TALKPAGENAME}}|議頁]],或詣[[維基大典:會館|會館]];各陳所見,共成公議。
納案與否,不以票論;去取之間,唯理是從。
|{{#if:{{{捷徑|}}}|{{捷徑|[[:{{{捷徑}}}]]}}}}
|}<includeonly>{{{類|[[Category:維基士議|{{PAGENAME}}]]}}}</includeonly><noinclude>
----
此模之設,以標新擬之制。置於頁首,眾知其未定;歸於士議,類得其所從。凡置此模之文,皆入[[:Category:維基士議]]。
欲示捷徑,加「捷徑」之參;欲易其類,加「類」之參。其式如下:
<code><nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|捷徑=WP:XXX}}</nowiki></code>
<code><nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|類=[[Category:某類]]}}</nowiki></code>
同類之模,見[[:Category:維護模板|維護模板]]。
{{按|今正:「方針與指引」、「共識」、「維基大典置頂模」、「模板訊息/議案領域」四鏈,大典無其頁,或易實頁,或削為素文;舊式<nowiki>{{NAMESPACE}} talk:{{PAGENAME}}</nowiki>,不成議頁之名,今以<nowiki>{{TALKPAGENAME}}</nowiki>代之。}}
[[Category:維護模板|議]]
</noinclude>
8sllo8gaobshyifqxe7enwigqkg78v3
448801
448800
2026-11-05T16:41:04Z
Itsmine
5
448801
wikitext
text/x-wiki
{| class="messagebox"
|-
| [[File:Purple_question_mark.png|30px]]
||'''[[:分類:維基制度|典制]]新擬,草案初成。'''案猶未定,暫非法規;文或未周,尚俟損益。願我同人,或就[[{{TALKPAGENAME}}|議頁]],或詣[[維基大典:會館|會館]];各陳所見,共成公議。
納案與否,不以票論;去取之間,唯理是從。
|{{#if:{{{捷徑|}}}|{{捷徑|[[:{{{捷徑}}}]]}}}}
|}<includeonly>{{{類|[[Category:維基士議|{{PAGENAME}}]]}}}</includeonly><noinclude>
----
此模之設,以標新擬之制。置於頁首,眾知其未定;歸於士議,類得其所從。凡置此模之文,皆入[[:Category:維基士議]]。
欲示捷徑,加「捷徑」之參;欲易其類,加「類」之參。其式如下:
<code><nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|捷徑=WP:XXX}}</nowiki></code>
<code><nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|類=[[Category:某類]]}}</nowiki></code>
同類之模,見[[:Category:維護模板|維護模板]]。
[[Category:維護模板|議]]
</noinclude>
7uiz8k7gib3lv9j9mlv384boy9wae6g
維基大典:新知評選
4
77099
448817
447990
2026-11-06T07:31:59Z
Shunshen Lee
68656
/* 卷首候 */ 新之
448817
wikitext
text/x-wiki
{{捷徑|WP:DYK|WP:DYKC}}
{{大典之務}}[[Category:維基事]]
大典'''新知''',咸刊卷首,悉存於此。凡欲評選,宜先列文題,繼以連結。
== 卷案 ==
按以下紀年,悉[[格里曆|西曆]]也。
* 二〇〇六年:[[維基大典:新知評選/二〇〇六年十月|十月]] | [[維基大典:新知評選/二〇〇六年十一月|十一月]] | [[維基大典:新知評選/二〇〇六年十二月|十二月]]
* 二〇〇七年:[[維基大典:新知評選/二〇〇七年一月|一月]] | [[維基大典:新知評選/二〇〇七年三月|三月]] | [[維基大典:新知評選/二〇〇七年四月|四月]] | [[維基大典:新知評選/二〇〇七年五月|五月]] | [[維基大典:新知評選/二〇〇七年六月|六月]] | [[維基大典:新知評選/二〇〇七年七月|七月]] | [[維基大典:新知評選/二〇〇七年八月|八月]] | [[維基大典:新知評選/二〇〇七年九月|九月]] | [[維基大典:新知評選/二〇〇七年十月|十月]] | [[維基大典:新知評選/二〇〇七年十一月|十一月]] | [[維基大典:新知評選/二〇〇七年十二月|十二月]]
* 二〇〇八年:[[維基大典:新知評選/二〇〇八年二月|二月]] | [[維基大典:新知評選/二〇〇八年三月|三月]] | [[維基大典:新知評選/二〇〇八年五月|五月]] | [[維基大典:新知評選/二〇〇八年六月|六月]] | [[維基大典:新知評選/二〇〇八年八月|八月]] | [[維基大典:新知評選/二〇〇八年九月|九月]] | [[維基大典:新知評選/二〇〇八年十月|十月]] | [[維基大典:新知評選/二〇〇八年十一月|十一月]] | [[維基大典:新知評選/二〇〇八年十二月|十二月]]
* 二〇〇九年:[[維基大典:新知評選/二〇〇九年一月|一月]] | [[維基大典:新知評選/二〇〇九年三月|三月]] | [[維基大典:新知評選/二〇〇九年四月|四月]] | [[維基大典:新知評選/二〇〇九年六月|六月]] | [[維基大典:新知評選/二〇〇九年九月|九月]] | [[維基大典:新知評選/二〇〇九年十月|十月]]
* 二〇一〇年:[[維基大典:新知評選/二〇一〇年一月|一月]] | [[維基大典:新知評選/二〇一〇年十月|十月]] | [[維基大典:新知評選/二〇一〇年十二月|十二月]]
* 二〇一一年:[[維基大典:新知評選/二〇一一年一月|一月]] | [[維基大典:新知評選/二〇一一年二月|二月]] | [[維基大典:新知評選/二〇一一年四月|四月]] | [[維基大典:新知評選/二〇一一年九月|九月]] | [[維基大典:新知評選/二〇一一年十月|十月]]
* 二〇一二年:[[維基大典:新知評選/二〇一二年八月|八月]] | [[維基大典:新知評選/二〇一一年十月|十月]] | [[維基大典:新知評選/二〇一一年十一月|十一月]]
* 二〇一三年:[[維基大典:新知評選/二〇一三年一月|一月]] | [[維基大典:新知評選/二〇一三年七月|七月]] | [[維基大典:新知評選/二〇一三年九月|九月]] | [[維基大典:新知評選/二〇一三年十一月|十一月]] | [[維基大典:新知評選/二〇一三年十二月|十二月]]
* 二〇一四年:[[維基大典:新知評選/二〇一四年二月|二月]] | [[維基大典:新知評選/二〇一四年四月|四月]] | [[維基大典:新知評選/二〇一四年五月|五月]] | [[維基大典:新知評選/二〇一四年六月|六月]] | [[維基大典:新知評選/二〇一四年七月|七月]] | [[維基大典:新知評選/二〇一四年八月|八月]] | [[維基大典:新知評選/二〇一四年九月|九月]] | [[維基大典:新知評選/二〇一四年十月|十月]] | [[維基大典:新知評選/二〇一四年十一月|十一月]]
* 二〇一五年:[[維基大典:新知評選/二〇一五年七月|七月]] | [[維基大典:新知評選/二〇一五年八月|八月]] | [[維基大典:新知評選/二〇一五年九月|九月]] | [[維基大典:新知評選/二〇一五年十月|十月]]
* 二〇一六年:[[維基大典:新知評選/二〇一六年一月|一月]] | [[維基大典:新知評選/二〇一六年五月|五月]] | [[維基大典:新知評選/二〇一六年六月|六月]] | [[維基大典:新知評選/二〇一六年七月|七月]]
* 二〇一七年:[[維基大典:新知評選/二〇一七年一月|一月]] | [[維基大典:新知評選/二〇一七年二月|二月]] | [[維基大典:新知評選/二〇一七年三月|三月]] | [[維基大典:新知評選/二〇一七年四月|四月]] | [[維基大典:新知評選/二〇一七年五月|五月]] | [[維基大典:新知評選/二〇一七年六月|六月]] | [[維基大典:新知評選/二〇一七年七月|七月]] | [[維基大典:新知評選/二〇一七年八月|八月]] | [[維基大典:新知評選/二〇一七年九月|九月]] | [[維基大典:新知評選/二〇一七年十月|十月]] | [[維基大典:新知評選/二〇一七年十一月|十一月]] | [[維基大典:新知評選/二〇一七年十二月|十二月]]
* 二〇一八年:[[維基大典:新知評選/二〇一八年一月|一月]] | [[維基大典:新知評選/二〇一八年二月|二月]] | [[維基大典:新知評選/二〇一八年三月|三月]] | [[維基大典:新知評選/二〇一八年四月|四月]] | [[維基大典:新知評選/二〇一八年五月|五月]] | [[維基大典:新知評選/二〇一八年六月|六月]] | [[維基大典:新知評選/二〇一八年七月|七月]] | [[維基大典:新知評選/二〇一八年九月|九月]] | [[維基大典:新知評選/二〇一八年一二月|十二月]]
* 二〇一九年:[[維基大典:新知評選/二〇一九年二月|二月]] | [[維基大典:新知評選/二〇一九年三月|三月]] | [[維基大典:新知評選/二〇一九年四月|四月]] | [[維基大典:新知評選/二〇一九年五月|五月]] | [[維基大典:新知評選/二〇一九年六月|六月]] | [[維基大典:新知評選/二〇一九年七月|七月]] | [[維基大典:新知評選/二〇一九年八月|八月]] | [[維基大典:新知評選/二〇一九年九月|九月]] | [[維基大典:新知評選/二〇一九年一〇月|十月]] | [[維基大典:新知評選/二〇一九年一一月|十一月]] | [[維基大典:新知評選/二〇一九年一二月|十二月]]
* 二〇二〇年:[[維基大典:新知評選/二〇二〇年一月|一月]] | [[維基大典:新知評選/二〇二〇年二月|二月]] | [[維基大典:新知評選/二〇二〇年三月|三月]] | [[維基大典:新知評選/二〇二〇年四月|四月]] | [[維基大典:新知評選/二〇二〇年五月|五月]] | [[維基大典:新知評選/二〇二〇年六月|六月]] | [[維基大典:新知評選/二〇二〇年七月|七月]]
* 二〇二一年:[[維基大典:新知評選/二〇二一年三月|三月]] | [[維基大典:新知評選/二〇二一年四月|四月]] | [[維基大典:新知評選/二〇二一年六月|六月]] | [[維基大典:新知評選/二〇二一年八月|八月]] | [[維基大典:新知評選/二〇二一年九月|九月]]
* 二〇二二年:(闕如)
* 二〇二三年:[[維基大典:新知評選/二〇二三年一二月|十二月]]
* 二〇二四年:[[維基大典:新知評選/二〇二四年一月|一月]] | [[維基大典:新知評選/二〇二四年四月|四月]] | [[維基大典:新知評選/二〇二四年一一月|十一月]] | [[維基大典:新知評選/二〇二四年一二月|十二月]]
* [[維基大典:新知評選/二〇二五年|二〇二五年]]:[[維基大典:新知評選/二〇二五年三月|三月]] | [[維基大典:新知評選/二〇二五年六月|六月]] | [[維基大典:新知評選/二〇二五年七月|七月]]
* [[維基大典:新知評選/二〇二六年|二〇二六年]]:[[維基大典:新知評選/二〇二六年一月|一月]] | [[維基大典:新知評選/二〇二六年二月|二月]] | [[維基大典:新知評選/二〇二六年三月|三月]] | [[維基大典:新知評選/二〇二六年四月|四月]] | [[維基大典:新知評選/二〇二六年五月|五月]] | [[維基大典:新知評選/二〇二六年六月|六月]] | [[維基大典:新知評選/二〇二六年七月|七月]] | [[維基大典:新知評選/二〇二六年八月|八月]] | [[維基大典:新知評選/二〇二六年九月|九月]] | [[維基大典:新知評選/二〇二六年十月|十月]]
== 卷首新知 ==
{{Dyk}}<p style="text-align: right;"><small>[[{{fullurl:模板:Dyk|action=edit}} 纂此模]]</small></p>
= 卷首候 =
書式:
<pre>
== 條目名 ==
* 所擬之問
*: 薦者之意見
** 評選者之意見
</pre>
<!-- 評選新知,置於此下 -->
==[[奧諾雷·米拉波]]==
*[[法蘭西]][[革命]]間,'''[[奧諾雷·米拉波|孰]]'''與[[路易十六|路易]][[瑪麗·安托瓦內特|后]]通書,事洩而罷先賢祠配祀?———[[用戶:Shunshen Lee|觀月]]([[用戶討論:Shunshen Lee|議]]) 二〇二六年八月一三日 (四) 〇五時二八分 (UTC)
**查[https://books.google.com.sg/books?id=FIIjyQEACAAJ&newbks=1&newbks_redir=0&redir_esc=y 谷歌圖書館所載],《Erotika Biblion》者,實為米拉波於[[一七八三年]]所作,亦非自傳。以此為據,言米拉波「長夜沈湎酒色,多內寵,湛樂無度,故精氣耗竭」似有未妥,故{{不可}}。[[用戶:一室幽蘭|一室幽蘭]]([[用戶討論:一室幽蘭|議]]) 二〇二六年八月二六日 (三) 〇六時一二分 (UTC)
**:其書有據,稍載有米氏平生逸樂事,故置此。爾雖慣於細撰,亦不可吹毛求疵,謬言於此。 [[用戶:Shunshen Lee|觀月]]([[用戶討論:Shunshen Lee|議]]) 二〇二六年八月二七日 (四) 一五時四七分 (UTC)
** {{可也}}--—[[user:WAN233|<span style="color: #007FFF;">启明</span>]][[user talk:WAN233|(留言)]] 二〇二六年一〇月二日 (五) 一四時三七分 (UTC)
**[[用戶:Shunshen Lee|李君]]之文,余平日所深賞也。大典雖曰「[[說明:凡例|為正文風]]」,其形則[[網絡百科全書|今世網絡百科]]也,好事者往往質勝於文,甚者[[模板:文白相雜|徒爲直語]],覽之令人啼笑。至余輩尋常,大抵取資[[外國語|九譯]],勉力[[譯|訓解]],以就[[說明:雅言琢磨|雅言之範]],焚膏繼晷,極其力或可及於工,然終不足以言有所建樹也。李君則能以泰西之史事典制,鎔鑄於先秦史筆,真能通古今者也。
::觀其筆法,頗見古人之意。抗旨一幕,詳錄其辭,猶〈[[:zh:s:曹劌論戰|曹劌論戰]]〉[[:zh:s:曹劌論戰#:~:text=既克,公問其故。對曰:「夫戰,勇氣也。一鼓作氣,再而衰,三而竭。彼竭我盈,故克之。夫大國,難測也,懼有伏焉。吾視其轍亂,望其旗靡,故逐之。」|於緊要處詳其問對]]。立憲之議,以「初」字追敘,事在前而文在後,得《[[:zh:s:春秋左傳正義/卷21#宣公二年傳|左傳]]》[[:zh:s:春秋左傳正義/卷21#宣公二年傳:~:text=初,宣子田,以與之。|倒敘]]之法。王室後事,[https://zh-classical.wikipedia.org/w/index.php?title=%E5%A5%A7%E8%AB%BE%E9%9B%B7%C2%B7%E7%B1%B3%E6%8B%89%E6%B3%A2&diff=prev&oldid=444663 納諸按語],不亂正文之序。抗旨既畢,不著一語評騭,但書「眾咸附之,自是聲聞動天下」,猶[[:zh:s:史記三家註/卷007#項羽本紀第七|史遷之敘鉅鹿一戰]],不贊項羽之勇,但書諸侯將「[[:zh:s:史記三家註/卷007#項羽本紀第七:~:text=曰轅門。」〉-,無不膝行而前,莫敢仰視,-。項羽由|無不膝行而前,莫敢仰視]]」,而以「[[:zh:s:史記三家註/卷007#項羽本紀第七:~:text=莫敢仰視。-,項羽由是始爲諸侯上將軍,-,諸侯皆屬|由是始為諸侯上將軍]]」收之。
::然大典之為書,貴乎言必有據,據可覆按。[[文言維基大典|館內]]雖未立為律令,他山則已著之,足為吾人之式。宵小狂徒謠諑於大典者,我自編修以至有秩,喝退固力;然則有秩之為文,尤當注意,用是服眾。
::是以謹法椽筆,參以《春秋》「[[:zh:s:春秋正傳_(四庫全書本)/卷14#春王正月戊申朔隕石于宋五|隕石于宋五]]」之隨聞見而書、〈[[:zh:s:鄭伯克段于鄢|鄭伯克段於鄢]]〉之[[:zh:s:鄭伯克段于鄢#:~:text=命西鄙,之鄭志。|不陽言其心]],忝塗[[稿:奧諾雷·米拉波|一版]],正其事序,理其枝蔓,庋其難徵,納王室諸事於註。置諸'''[[稿:奧諾雷·米拉波|草稿]]''',願諸君不吝指正,庶幾玉成。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇二六年一〇月一二日 (一) 〇七時三三分 (UTC)
:::予所書悉有出典,可鑒察焉。至妄人構之,言無據,毋庸深責其謬,若囿於此,則諸事不勝其擾,一無暇日著正典矣。 [[用戶:Shunshen Lee|觀月]]([[用戶討論:Shunshen Lee|議]]) 二〇二六年一〇月一二日 (一) 一三時二五分 (UTC)
==石友三==
*[[馮玉祥]]麾下「十三太保」者,'''[[石友三|何人]]'''為輿論呼曰倒戈將軍?
==孫殿英==
*[[一九二八年|民國十七年]]六月,'''[[孫殿英|孰]]'''發掘[[清]]裕陵及菩陀峪定東陵,盜其寶藏也?
f7b64kgrs07emv4th0qd0s04cs2bptd
維基大典:會館/topic list
4
82586
448809
448750
2026-11-05T21:48:47Z
Cewbot
65799
[[用戶:Cewbot/log/20170915/configuration|生成議題列表:8個議題]]
448809
wikitext
text/x-wiki
<!-- 本頁面由機器人自動更新。若要改進,請聯繫機器人操作者。 -->
{| class="wikitable sortable mw-collapsible" style="float:left;"
|-
! data-sort-type="number" | <small>序</small> !! 💭 議題 !! data-sort-type="number" | <span title="議論數">💬</span> !! data-sort-type="number" | <small title="參議者數">👥</small> !! 🙋 末議者 !! data-sort-type="isoDate" | <span title="新易">🕒 <small>(UTC+8)</small></span>
|-
| data-sort-type="number" data-sort-value="1" | 一
| [[維基大典:會館#前接負一,後一之數|前接負一,後一之數]]
| data-sort-type="number" data-sort-value="3" | 三
| data-sort-type="number" data-sort-value="3" | 三
| style="background-color: #bbb;" | [[User:Davidzdh|Davidzdh]]
| style="background-color: #bbb;" data-sort-type="isoDate" data-sort-value="2026-09-27T16:02:00.000Z" | 2026-09-28 <span style="color: blue;">00:02</span>
|-
| data-sort-type="number" data-sort-value="2" | 二
| style="max-width: 24em" | <small>[[維基大典:會館#Your_feedback_wanted:_Remove_(Language_link_added:)_and_similar_edits_from_Special:RecentChanges|Your feedback wanted: Remove ''(Language link added:) and similar'' edits from Special:RecentChanges]]</small>
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #bbb;" | [[User:Danny Benjafield (WMDE)|<small style="word-wrap: break-word; word-break: break-all;">Danny Benjafield (WMDE)</small>]]
| style="background-color: #bbb;" data-sort-type="isoDate" data-sort-value="2026-09-21T15:26:00.000Z" | 2026-09-21 <span style="color: blue;">23:26</span>
|-
| data-sort-type="number" data-sort-value="3" | 三
| [[維基大典:會館#名「國際象棋」題|名「國際象棋」題]]
| data-sort-type="number" data-sort-value="4" | 四
| data-sort-type="number" data-sort-value="2" | 二
| style="background-color: #bbb;" | [[User:Beefwiki|Beefwiki]]
| style="background-color: #bbb;" data-sort-type="isoDate" data-sort-value="2026-09-29T08:46:00.000Z" | 2026-09-29 <span style="color: blue;">16:46</span>
|-
| data-sort-type="number" data-sort-value="4" | 四
| style="max-width: 24em" | <small>[[維基大典:會館#Wikidata_Sitelink_changes_in_Recent_Changes_and_Watchlist|Wikidata Sitelink changes in Recent Changes and Watchlist]]</small>
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #ddd;" | [[User:MediaWiki message delivery|<small style="word-wrap: break-word; word-break: break-all;">MediaWiki message delivery</small>]]
| style="background-color: #ddd;" data-sort-type="isoDate" data-sort-value="2026-10-09T09:29:00.000Z" | 2026-10-09 <span style="color: blue;">17:29</span>
|-
| data-sort-type="number" data-sort-value="5" | 五
| [[維基大典:會館#伺服樞機將徙_-_近晷唯供披覽|伺服樞機將徙 - 近晷唯供披覽]]
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #ddd;" | [[User:Trizek (WMF)|Trizek (WMF)]]
| style="background-color: #ddd;" data-sort-type="isoDate" data-sort-value="2026-10-26T14:01:00.000Z" | 2026-10-26 <span style="color: blue;">22:01</span>
|-
| data-sort-type="number" data-sort-value="6" | 六
| [[維基大典:會館#台灣分會2026年10月對話時間|台灣分會2026年10月對話時間]]
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #ddd;" | [[User:MediaWiki message delivery|<small style="word-wrap: break-word; word-break: break-all;">MediaWiki message delivery</small>]]
| style="background-color: #ddd;" data-sort-type="isoDate" data-sort-value="2026-10-29T08:19:00.000Z" | 2026-10-29 <span style="color: blue;">16:19</span>
|-
| data-sort-type="number" data-sort-value="7" | 七
| [[維基大典:會館#請辭|請辭]]
| data-sort-type="number" data-sort-value="2" | 二
| data-sort-type="number" data-sort-value="2" | 二
| [[User:Itsmine|Itsmine]]
| data-sort-type="isoDate" data-sort-value="2026-11-01T14:19:00.000Z" | 2026-11-01 <span style="color: blue;">22:19</span>
|-
| data-sort-type="number" data-sort-value="8" | 八
| [[維基大典:會館#立「要律疏議」|立「要律疏議」]]
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| style="background-color: #fcc;" data-sort-type="number" data-sort-value="1" | 一
| [[User:だ*ぜ|だ*ぜ]]
| data-sort-type="isoDate" data-sort-value="2026-11-04T21:45:00.000Z" | 2026-11-05 <span style="color: blue;">05:45</span>
|}
{| class="wikitable mw-collapsible mw-collapsed" style="float: left; margin-left: .5em;;{{#if:{{{no_time_legend|}}}|display:none;|}}"
! title="From the latest bot edit" | 發言更新圖例
|-
| style="background-color: #efe;" |
* 最近一小時內
|-
| style="background-color: #eef;" |
* 最近一日內
|-
| |
* 一週內
|-
| style="background-color: #ddd;" |
* 一個月內
|-
| style="background-color: #bbb;" |
* 逾一個月
|-
! Manual settings
|-
| style="max-width: 12em;" | <small>When exceptions occur,<br />please check [[用戶:Cewbot/log/20170915/configuration|the setting]] first.</small>
|-
|}
{{Clear}}
ouban663xeio7bl383glfolvp7zl3f9
模組:Citation
828
84305
448821
301995
2026-11-06T10:53:06Z
Dasze
55299
448821
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = require("Module:Wikitext"),
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local hku = (function()
--[[--------------------------------------------------------------------------
模組:Citation
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'dynasty', '朝代', '朝', '國別', '國', 'country'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
local function num_or_text(s, fmt)
if s:match('^%d+$') then return fmt:gsub('%%s', s) end
return s
end
local function fmt_date(y, m, d)
local t = {}
if isset(y) then t[#t + 1] = y .. ' 年' end
if isset(m) then t[#t + 1] = tostring(tonumber(m) or m) .. ' 月' end
if isset(d) then t[#t + 1] = tostring(tonumber(d) or d) .. ' 日' end
return table.concat(t, ' ')
end
-- 於出版處用:「2002 年 9 月」
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return n.date
end
local y, m, d = n.year, n.month, n.day
if isset(y) and not y:match('^%d+$') then
return join({y, isset(m) and (m:match('^%d+$') and (tonumber(m) .. ' 月') or m) or nil,
isset(d) and (d:match('^%d+$') and (tonumber(d) .. ' 日') or d) or nil, n = 3}, ' ')
end
if isset(y) or isset(m) or isset(d) then
return fmt_date(y, m, d)
end
return nil
end
-- 取閱日:「2-4-2022」
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return tonumber(d) .. '-' .. tonumber(m) .. '-' .. y end
return s
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁 ' .. t
end
return s
end
local function person(fam, i)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
if is_cjk(l) or is_cjk(f) then name = l .. f else name = f .. ' ' .. l end
else
name = l or f
end
end
if not name then return nil end
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
for i = 1, maxi do
local who = person(fam, i)
if who then list[#list + 1] = who end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(list) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
function p.format(raw)
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
local trans = nil
local title = n.title
local lang = lang_text(n.language)
if isset(periodical) and isset(title) then
-- 刊中文章
add('〈' .. title .. '〉')
if isset(n.website) and not isset(authors) then
seg[#seg] = nil
head = n.website .. ':'
add('〈' .. title .. '〉')
else
add(n.website and '《' .. n.website .. '》' or ('《' .. periodical .. '》'))
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = n.volume:match('^%d+$') and (n.volume .. ' 卷') or n.volume end
if isset(n.issue) then vi[#vi + 1] = n.issue:match('^%d+$') and (n.issue .. ' 期') or n.issue end
local v = table.concat(vi, ' ')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(n.volume:match('^%d+$') and ('第 ' .. n.volume .. ' 卷') or n.volume) end
if isset(n.issue) then add(n.issue:match('^%d+$') and ('第 ' .. n.issue .. ' 期') or n.issue) end
end
elseif is_thesis and isset(title) then
add('〈' .. title .. '〉' .. '(' .. join({join({n.publisher, n.type, n = 2}, ''), date, n = 2}, ',') .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add('〈' .. n.chapter .. '〉')
local tail = '載' .. editors .. '編:《' .. title .. '》'
add(tail)
elseif isset(title) then
local t = '《' .. title .. '》'
if isset(lang) then t = t .. '(' .. lang .. ')' end
add(t)
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = n.edition:match('^%d+$') and ('第 ' .. n.edition .. ' 版') or n.edition end
if isset(n.series) then paren[#paren + 1] = n.series:match('^%d+$') and ('第 ' .. n.series .. ' 輯') or n.series end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
if isset(n.format) then paren[#paren + 1] = n.format end
else
if isset(n.edition) then paren[#paren + 1] = n.edition:match('^%d+$') and ('第 ' .. n.edition .. ' 版') or n.edition end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if isset(n.format) then paren[#paren + 1] = n.format end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. table.concat(paren, ',') .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(n.volume:match('^%d+$') and ('卷 ' .. n.volume) or n.volume) end
if isset(n.issue) then add(n.issue:match('^%d+$') and ('第 ' .. n.issue .. ' 期') or n.issue) end
end
if isset(n.chap_no) then add(n.chap_no:match('^%d+$') and ('第 ' .. n.chap_no .. ' 章') or n.chap_no) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add('〈' .. n.chapter .. '〉')
end
if isset(n.section) then add(n.section:match('^%d+$') and ('第 ' .. n.section .. ' 段') or n.section) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
if isset(n.citation) then
add('轉引自' .. (isset(n.ca) and (n.ca .. ':') or '') .. '《' .. n.citation .. '》')
end
if isset(n.quote) then add('引文:「' .. n.quote .. '」') end
local text = head .. table.concat(seg, ',')
if text == '' then return nil end
text = text .. '。'
-- 取自網址
local tail = {}
if isset(n.url) then
local t = '取自 ' .. n.url
if isset(n.accessdate) then t = t .. ',' .. acc_date(n.accessdate) .. ' 擷取' end
if isset(n.archiveurl) then
t = t .. ';[' .. n.archiveurl .. ' 存檔]' .. (isset(n.archivedate) and ('(' .. acc_date(n.archivedate) .. ')') or '')
end
tail[#tail + 1] = t .. '。'
elseif isset(n.accessdate) then
tail[#tail + 1] = acc_date(n.accessdate) .. ' 擷取。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args)
end
return p
end)()
z.citation = hku.citation
z.format = hku.format
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localisation for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--
--End
9ag0swntfepfcqe842eq6n6nijrzj74
448823
448821
2026-11-06T11:03:39Z
Dasze
55299
448823
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = {
liststyle = function(s)
if s == nil or s == "" then return "" end
return "list-style-type: " .. s .. ";"
end,
columncountstyle = function(n)
return "-moz-column-count: " .. n .. "; -webkit-column-count: " .. n .. "; column-count: " .. n .. ";"
end,
columnwidthstyle = function(w)
return "-moz-column-width: " .. w .. "; -webkit-column-width: " .. w .. "; column-width: " .. w .. ";"
end,
OpenHTMLTag = function(t)
local out = "<" .. t.name
local keys = {}
for k in pairs(t.params or {}) do keys[#keys + 1] = k end
table.sort(keys)
for _, k in ipairs(keys) do
out = out .. " " .. k .. '="' .. tostring(t.params[k]) .. '"'
end
return out .. ">"
end,
},
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local z = (function()
--[[--------------------------------------------------------------------------
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'country', 'dynasty', '朝代', '朝', '國別', '國'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
-- 漢數字:不論所入為阿拉伯數字或漢字,一概以漢數字出之
local DIGIT = {[0] = '〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'}
local function digitwise(d)
return (d:gsub('%d', function(c) return DIGIT[tonumber(c)] end))
end
local function below10000(n)
local ds = {math.floor(n / 1000), math.floor(n / 100) % 10, math.floor(n / 10) % 10, n % 10}
local units = {'千', '百', '十', ''}
local out, started, zero = '', false, false
for i = 1, 4 do
local d = ds[i]
if d == 0 then
if started then zero = true end
else
if zero then out = out .. '〇'; zero = false end
if d == 1 and units[i] == '十' and not started then
out = out .. '十'
else
out = out .. DIGIT[d] .. units[i]
end
started = true
end
end
return out
end
local function quantity(n)
n = math.floor(n)
if n == 0 then return '〇' end
local out = ''
local yi = math.floor(n / 100000000)
local rest = n % 100000000
if yi > 0 then out = out .. below10000(yi) .. '億' end
local wan = math.floor(rest / 10000)
local low = rest % 10000
if wan > 0 then
if yi > 0 and wan < 1000 then out = out .. '〇' end
out = out .. below10000(wan) .. '萬'
end
if low > 0 then
if (yi > 0 or wan > 0) and low < 1000 then out = out .. '〇' end
out = out .. below10000(low)
end
return out
end
-- 文字中之數字:「N年」作逐位(二〇二六年),餘作數量(二十五)
local function cnum(s)
s = s:gsub('(%d+)年', function(d) return digitwise(d) .. '年' end)
s = s:gsub('%d+', function(d)
if #d > 8 then return digitwise(d) end
return quantity(tonumber(d))
end)
return s
end
local CNCHARS = {'一', '二', '三', '四', '五', '六', '七', '八', '九', '〇', '零', '兩', '十', '百', '千', '萬', '億'}
local function is_cnnum(s)
for _, c in ipairs(CNCHARS) do s = s:gsub(c, '') end
return s == ''
end
local function numfmt(s, pre, post)
if is_cnnum(s) then return pre .. s .. post end
if s:match('^%d+$') then return pre .. (#s > 8 and digitwise(s) or quantity(tonumber(s))) .. post end
return cnum(s)
end
local function date_part(v, suffix, yearly)
if not isset(v) then return nil end
if v:match('^%d+$') then
return (yearly and digitwise(v) or quantity(tonumber(v))) .. suffix
end
local t = cnum(v)
if t:sub(-#suffix) ~= suffix then t = t .. suffix end
return t
end
local function fmt_date(y, m, d)
return (date_part(y, '年', true) or '') .. (date_part(m, '月', false) or '') .. (date_part(d, '日', false) or '')
end
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return cnum(n.date)
end
if isset(n.year) or isset(n.month) or isset(n.day) then
return fmt_date(n.year, n.month, n.day)
end
return nil
end
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
return cnum(s)
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
if is_cnnum(s) then return '頁' .. s end
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁' .. cnum(t)
end
return cnum(s)
end
local function person(fam, i)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
if is_cjk(l) or is_cjk(f) then name = l .. f else name = f .. ' ' .. l end
else
name = l or f
end
end
if not name then return nil end
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
for i = 1, maxi do
local who = person(fam, i)
if who then list[#list + 1] = who end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(list) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
function p.format(raw)
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
local trans = nil
local title = n.title
local lang = lang_text(n.language)
if isset(periodical) and isset(title) then
-- 刊中文章
add('〈' .. title .. '〉')
if isset(n.website) and not isset(authors) then
seg[#seg] = nil
head = n.website .. ':'
add('〈' .. title .. '〉')
else
add(n.website and '《' .. n.website .. '》' or ('《' .. periodical .. '》'))
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = numfmt(n.volume, '', '卷') end
if isset(n.issue) then vi[#vi + 1] = numfmt(n.issue, '', '期') end
local v = table.concat(vi, '')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(numfmt(n.volume, '第', '卷')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
elseif is_thesis and isset(title) then
add('〈' .. title .. '〉' .. '(' .. join({join({n.publisher, n.type, n = 2}, ''), date, n = 2}, ',') .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add('〈' .. n.chapter .. '〉')
local tail = '載' .. editors .. '編:《' .. title .. '》'
add(tail)
elseif isset(title) then
local t = '《' .. title .. '》'
if isset(lang) then t = t .. '(' .. lang .. ')' end
add(t)
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.series) then paren[#paren + 1] = numfmt(n.series, '第', '輯') end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
if isset(n.format) then paren[#paren + 1] = n.format end
else
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if isset(n.format) then paren[#paren + 1] = n.format end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. table.concat(paren, ',') .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(numfmt(n.volume, '卷', '')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
if isset(n.chap_no) then add(numfmt(n.chap_no, '第', '章')) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add('〈' .. n.chapter .. '〉')
end
if isset(n.section) then add(numfmt(n.section, '第', '段')) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
if isset(n.citation) then
add('轉引自' .. (isset(n.ca) and (n.ca .. ':') or '') .. '《' .. n.citation .. '》')
end
if isset(n.quote) then add('引文:「' .. n.quote .. '」') end
local text = head .. table.concat(seg, ',')
if text == '' then return nil end
text = text .. '。'
-- 取自網址
local tail = {}
if isset(n.url) then
local t = '取自 ' .. n.url
if isset(n.accessdate) then t = t .. ',' .. acc_date(n.accessdate) .. '擷取' end
if isset(n.archiveurl) then
t = t .. ';[' .. n.archiveurl .. ' 存檔]' .. (isset(n.archivedate) and ('(' .. acc_date(n.archivedate) .. ')') or '')
end
tail[#tail + 1] = t .. '。'
elseif isset(n.accessdate) then
tail[#tail + 1] = acc_date(n.accessdate) .. '擷取。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args)
end
return p
end)()
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localise for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--2026-11-06: Abolish the import of Module:Wikitext & Sinicise numbering systems
--
--End
f94iqztj0dillcw10pz8dqoerkpj8zq
448825
448823
2026-11-06T11:41:28Z
Dasze
55299
448825
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = {
liststyle = function(s)
if s == nil or s == "" then return "" end
return "list-style-type: " .. s .. ";"
end,
columncountstyle = function(n)
return "-moz-column-count: " .. n .. "; -webkit-column-count: " .. n .. "; column-count: " .. n .. ";"
end,
columnwidthstyle = function(w)
return "-moz-column-width: " .. w .. "; -webkit-column-width: " .. w .. "; column-width: " .. w .. ";"
end,
OpenHTMLTag = function(t)
local out = "<" .. t.name
local keys = {}
for k in pairs(t.params or {}) do keys[#keys + 1] = k end
table.sort(keys)
for _, k in ipairs(keys) do
out = out .. " " .. k .. '="' .. tostring(t.params[k]) .. '"'
end
return out .. ">"
end,
},
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
引文格式化(原「模組:Citation/HKU」,今併入本模組)
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local z = (function()
--[[--------------------------------------------------------------------------
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'country', 'dynasty', '朝代', '朝', '國別', '國'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
-- 漢數字:不論所入為阿拉伯數字或漢字,一概以漢數字出之
local DIGIT = {[0] = '〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'}
local function digitwise(d)
return (d:gsub('%d', function(c) return DIGIT[tonumber(c)] end))
end
local function below10000(n)
local ds = {math.floor(n / 1000), math.floor(n / 100) % 10, math.floor(n / 10) % 10, n % 10}
local units = {'千', '百', '十', ''}
local out, started, zero = '', false, false
for i = 1, 4 do
local d = ds[i]
if d == 0 then
if started then zero = true end
else
if zero then out = out .. '〇'; zero = false end
if d == 1 and units[i] == '十' and not started then
out = out .. '十'
else
out = out .. DIGIT[d] .. units[i]
end
started = true
end
end
return out
end
local function quantity(n)
n = math.floor(n)
if n == 0 then return '〇' end
local out = ''
local yi = math.floor(n / 100000000)
local rest = n % 100000000
if yi > 0 then out = out .. below10000(yi) .. '億' end
local wan = math.floor(rest / 10000)
local low = rest % 10000
if wan > 0 then
if yi > 0 and wan < 1000 then out = out .. '〇' end
out = out .. below10000(wan) .. '萬'
end
if low > 0 then
if (yi > 0 or wan > 0) and low < 1000 then out = out .. '〇' end
out = out .. below10000(low)
end
return out
end
-- 文字中之數字:「N年」作逐位(二〇二六年),餘作數量(二十五)
local function cnum(s)
s = s:gsub('(%d+)年', function(d) return digitwise(d) .. '年' end)
s = s:gsub('%d+', function(d)
if #d > 8 then return digitwise(d) end
return quantity(tonumber(d))
end)
return s
end
local CNCHARS = {'一', '二', '三', '四', '五', '六', '七', '八', '九', '〇', '零', '兩', '十', '百', '千', '萬', '億'}
local function is_cnnum(s)
for _, c in ipairs(CNCHARS) do s = s:gsub(c, '') end
return s == ''
end
local function numfmt(s, pre, post)
if is_cnnum(s) then return pre .. s .. post end
if s:match('^%d+$') then return pre .. (#s > 8 and digitwise(s) or quantity(tonumber(s))) .. post end
return cnum(s)
end
local function date_part(v, suffix, yearly)
if not isset(v) then return nil end
if v:match('^%d+$') then
return (yearly and digitwise(v) or quantity(tonumber(v))) .. suffix
end
local t = cnum(v)
if t:sub(-#suffix) ~= suffix then t = t .. suffix end
return t
end
local function fmt_date(y, m, d)
return (date_part(y, '年', true) or '') .. (date_part(m, '月', false) or '') .. (date_part(d, '日', false) or '')
end
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return cnum(n.date)
end
if isset(n.year) or isset(n.month) or isset(n.day) then
return fmt_date(n.year, n.month, n.day)
end
return nil
end
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
return cnum(s)
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
if is_cnnum(s) then return '頁' .. s end
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁' .. cnum(t)
end
return cnum(s)
end
local function person(fam, i)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
name = l .. '氏{{按|名' .. f .. '}}'
else
name = l or f
end
end
if not name then return nil end
local plain = isset(a) and a or (isset(l) and l or f)
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name, plain
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
local plains = {}
for i = 1, maxi do
local who, plain = person(fam, i)
if who then list[#list + 1] = who; plains[#plains + 1] = plain end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who; plains[#plains + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(plains) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[1] == 'isbn' then
local code = v:gsub('[%s%-]', '')
out[#out + 1] = 'ISBN [[Special:BookSources/' .. code .. '|' .. v .. ']]'
elseif d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
-- 「第…」「卷…」相接者,其間不加逗號
local function is_ord(t)
local h = t:sub(1, 3)
return h == '第' or h == '卷'
end
local function joinseg(list)
local out = ''
for i, t in ipairs(list) do
if i > 1 then
out = out .. ((is_ord(list[i - 1]) and (is_ord(t) or t:sub(1, 3) == '〈')) and '' or ',')
end
out = out .. t
end
return out
end
local FORMAT_STYLE = 'font-size:85%; color:#54595d;'
function p.format(raw)
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
-- 首個題名:網址繫於其上;檔案格式以小灰字綴其後
local first_done = false
local url_used = false
local function title_el(open, txt, close)
if first_done then return open .. txt .. close end
first_done = true
local inner = txt
if isset(n.url) then
inner = '[' .. n.url .. ' ' .. txt .. ']'
url_used = true
end
local out = open .. inner .. close
if isset(n.format) then
out = out .. '<span style="' .. FORMAT_STYLE .. '">(' .. n.format .. ')</span>'
end
return out
end
local title = n.title
if isset(periodical) and isset(title) then
-- 刊中文章
if isset(n.website) and not isset(authors) then
head = n.website .. ':'
add(title_el('〈', title, '〉'))
else
add(title_el('〈', title, '〉'))
add('《' .. (n.website or periodical) .. '》')
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = numfmt(n.volume, '', '卷') end
if isset(n.issue) then vi[#vi + 1] = numfmt(n.issue, '', '期') end
local v = table.concat(vi, '')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(numfmt(n.volume, '第', '卷')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
elseif is_thesis and isset(title) then
add(title_el('〈', title, '〉') .. '(' .. joinseg({join({n.publisher, n.type, n = 2}, ''), date}) .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add(title_el('〈', n.chapter, '〉'))
add('載' .. editors .. '編:《' .. title .. '》')
elseif isset(title) then
add(title_el('《', title, '》'))
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.series) then paren[#paren + 1] = numfmt(n.series, '第', '輯') end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
else
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. joinseg(paren) .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(numfmt(n.volume, '卷', '')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
if isset(n.chap_no) then add(numfmt(n.chap_no, '第', '章')) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add(title_el('〈', n.chapter, '〉'))
end
if isset(n.section) then add(numfmt(n.section, '第', '段')) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
-- 引文:轉引之書所以明引文之出處
if isset(n.citation) then
local c = '引' .. (isset(n.ca) and (n.ca .. '所著之') or '') .. '《' .. n.citation .. '》'
if isset(n.quote) then c = c .. '曰:「' .. n.quote .. '」' end
add(c)
elseif isset(n.quote) then
add('引文:「' .. n.quote .. '」')
end
local text = head .. joinseg(seg)
if text == '' then return nil end
-- 覽閱與存檔
local notes = {}
if isset(n.accessdate) then notes[#notes + 1] = acc_date(n.accessdate) .. '覽閱' end
if isset(n.archiveurl) or isset(n.archivedate) then
local lab = (isset(n.archivedate) and acc_date(n.archivedate) or '') .. '存檔'
if isset(n.archiveurl) then lab = '[' .. n.archiveurl .. ' ' .. lab .. ']' end
notes[#notes + 1] = lab
end
if #notes > 0 then text = text .. '(' .. table.concat(notes, ';') .. ')' end
text = text .. '。'
local tail = {}
if isset(n.url) and not url_used then
tail[#tail + 1] = '取自 ' .. n.url .. '。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 原文語文:{{<語言碼>}}
if isset(n.language) and not n.language:find('[{}|<>%[%]]') then
text = text .. '{{' .. n.language .. '}}'
end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args)
end
return p
end)()
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localise for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--2026-11-06: Abolish the import of Module:Wikitext & Sinicise numbering systems & Further localise
--
--End
pmovlj36y05g8mov00mrpcmy56xhusq
448826
448825
2026-11-06T11:46:09Z
Dasze
55299
448826
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = {
liststyle = function(s)
if s == nil or s == "" then return "" end
return "list-style-type: " .. s .. ";"
end,
columncountstyle = function(n)
return "-moz-column-count: " .. n .. "; -webkit-column-count: " .. n .. "; column-count: " .. n .. ";"
end,
columnwidthstyle = function(w)
return "-moz-column-width: " .. w .. "; -webkit-column-width: " .. w .. "; column-width: " .. w .. ";"
end,
OpenHTMLTag = function(t)
local out = "<" .. t.name
local keys = {}
for k in pairs(t.params or {}) do keys[#keys + 1] = k end
table.sort(keys)
for _, k in ipairs(keys) do
out = out .. " " .. k .. '="' .. tostring(t.params[k]) .. '"'
end
return out .. ">"
end,
},
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
引文格式化(原「模組:Citation/HKU」,今併入本模組)
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local z = (function()
--[[--------------------------------------------------------------------------
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'country', 'dynasty', '朝代', '朝', '國別', '國'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
-- 漢數字:不論所入為阿拉伯數字或漢字,一概以漢數字出之
local DIGIT = {[0] = '〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'}
local function digitwise(d)
return (d:gsub('%d', function(c) return DIGIT[tonumber(c)] end))
end
local function below10000(n)
local ds = {math.floor(n / 1000), math.floor(n / 100) % 10, math.floor(n / 10) % 10, n % 10}
local units = {'千', '百', '十', ''}
local out, started, zero = '', false, false
for i = 1, 4 do
local d = ds[i]
if d == 0 then
if started then zero = true end
else
if zero then out = out .. '〇'; zero = false end
if d == 1 and units[i] == '十' and not started then
out = out .. '十'
else
out = out .. DIGIT[d] .. units[i]
end
started = true
end
end
return out
end
local function quantity(n)
n = math.floor(n)
if n == 0 then return '〇' end
local out = ''
local yi = math.floor(n / 100000000)
local rest = n % 100000000
if yi > 0 then out = out .. below10000(yi) .. '億' end
local wan = math.floor(rest / 10000)
local low = rest % 10000
if wan > 0 then
if yi > 0 and wan < 1000 then out = out .. '〇' end
out = out .. below10000(wan) .. '萬'
end
if low > 0 then
if (yi > 0 or wan > 0) and low < 1000 then out = out .. '〇' end
out = out .. below10000(low)
end
return out
end
-- 文字中之數字:「N年」作逐位(二〇二六年),餘作數量(二十五)
local function cnum(s)
s = s:gsub('(%d+)年', function(d) return digitwise(d) .. '年' end)
s = s:gsub('%d+', function(d)
if #d > 8 then return digitwise(d) end
return quantity(tonumber(d))
end)
return s
end
local CNCHARS = {'一', '二', '三', '四', '五', '六', '七', '八', '九', '〇', '零', '兩', '十', '百', '千', '萬', '億'}
local function is_cnnum(s)
for _, c in ipairs(CNCHARS) do s = s:gsub(c, '') end
return s == ''
end
local function numfmt(s, pre, post)
if is_cnnum(s) then return pre .. s .. post end
if s:match('^%d+$') then return pre .. (#s > 8 and digitwise(s) or quantity(tonumber(s))) .. post end
return cnum(s)
end
local function date_part(v, suffix, yearly)
if not isset(v) then return nil end
if v:match('^%d+$') then
return (yearly and digitwise(v) or quantity(tonumber(v))) .. suffix
end
local t = cnum(v)
if t:sub(-#suffix) ~= suffix then t = t .. suffix end
return t
end
local function fmt_date(y, m, d)
return (date_part(y, '年', true) or '') .. (date_part(m, '月', false) or '') .. (date_part(d, '日', false) or '')
end
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return cnum(n.date)
end
if isset(n.year) or isset(n.month) or isset(n.day) then
return fmt_date(n.year, n.month, n.day)
end
return nil
end
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
return cnum(s)
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
if is_cnnum(s) then return '頁' .. s end
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁' .. cnum(t)
end
return cnum(s)
end
local function person(fam, i)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
name = l .. '氏{{按|名' .. f .. '}}'
else
name = l or f
end
end
if not name then return nil end
local plain = isset(a) and a or (isset(l) and l or f)
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name, plain
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
local plains = {}
for i = 1, maxi do
local who, plain = person(fam, i)
if who then list[#list + 1] = who; plains[#plains + 1] = plain end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who; plains[#plains + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(plains) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[1] == 'isbn' then
local code = v:gsub('[%s%-]', '')
out[#out + 1] = 'ISBN [[Special:BookSources/' .. code .. '|' .. v .. ']]'
elseif d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
-- 「第…」「卷…」相接者,其間不加逗號
local function is_ord(t)
local h = t:sub(1, 3)
return h == '第' or h == '卷'
end
local function joinseg(list)
local out = ''
for i, t in ipairs(list) do
if i > 1 then
out = out .. ((is_ord(list[i - 1]) and (is_ord(t) or t:sub(1, 3) == '〈')) and '' or ',')
end
out = out .. t
end
return out
end
local FORMAT_STYLE = 'font-size:85%; color:#54595d;'
function p.format(raw, frame)
local function tpl(str)
if frame and frame.preprocess then return frame:preprocess(str) end
return str
end
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam, tpl)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
-- 首個題名:網址繫於其上;檔案格式以小灰字綴其後
local first_done = false
local url_used = false
local function title_el(open, txt, close)
if first_done then return open .. txt .. close end
first_done = true
local inner = txt
if isset(n.url) then
inner = '[' .. n.url .. ' ' .. txt .. ']'
url_used = true
end
local out = open .. inner .. close
if isset(n.format) then
out = out .. '<span style="' .. FORMAT_STYLE .. '">(' .. n.format .. ')</span>'
end
return out
end
local title = n.title
if isset(periodical) and isset(title) then
-- 刊中文章
if isset(n.website) and not isset(authors) then
head = n.website .. ':'
add(title_el('〈', title, '〉'))
else
add(title_el('〈', title, '〉'))
add('《' .. (n.website or periodical) .. '》')
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = numfmt(n.volume, '', '卷') end
if isset(n.issue) then vi[#vi + 1] = numfmt(n.issue, '', '期') end
local v = table.concat(vi, '')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(numfmt(n.volume, '第', '卷')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
elseif is_thesis and isset(title) then
add(title_el('〈', title, '〉') .. '(' .. joinseg({join({n.publisher, n.type, n = 2}, ''), date}) .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add(title_el('〈', n.chapter, '〉'))
add('載' .. editors .. '編:《' .. title .. '》')
elseif isset(title) then
add(title_el('《', title, '》'))
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.series) then paren[#paren + 1] = numfmt(n.series, '第', '輯') end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
else
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. joinseg(paren) .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(numfmt(n.volume, '卷', '')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
if isset(n.chap_no) then add(numfmt(n.chap_no, '第', '章')) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add(title_el('〈', n.chapter, '〉'))
end
if isset(n.section) then add(numfmt(n.section, '第', '段')) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
-- 引文:轉引之書所以明引文之出處
if isset(n.citation) then
local c = '引' .. (isset(n.ca) and (n.ca .. '所著之') or '') .. '《' .. n.citation .. '》'
if isset(n.quote) then c = c .. '曰:「' .. n.quote .. '」' end
add(c)
elseif isset(n.quote) then
add('引文:「' .. n.quote .. '」')
end
local text = head .. joinseg(seg)
if text == '' then return nil end
-- 覽閱與存檔
local notes = {}
if isset(n.accessdate) then notes[#notes + 1] = acc_date(n.accessdate) .. '覽閱' end
if isset(n.archiveurl) or isset(n.archivedate) then
local lab = (isset(n.archivedate) and acc_date(n.archivedate) or '') .. '存檔'
if isset(n.archiveurl) then lab = '[' .. n.archiveurl .. ' ' .. lab .. ']' end
notes[#notes + 1] = lab
end
if #notes > 0 then text = text .. '(' .. table.concat(notes, ';') .. ')' end
text = text .. '。'
local tail = {}
if isset(n.url) and not url_used then
tail[#tail + 1] = '取自 ' .. n.url .. '。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 原文語文:{{<語言碼>}}
if isset(n.language) and not n.language:find('[{}|<>%[%]]') then
text = text .. '{{' .. n.language .. '}}'
end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args)
end
return p
end)()
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localise for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--2026-11-06: Abolish the import of Module:Wikitext & Sinicise numbering systems & Further localise
--
--End
jh0xn5b5vbabows3rncc8cl2phg5yo8
448827
448826
2026-11-06T11:51:23Z
Dasze
55299
448827
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = {
liststyle = function(s)
if s == nil or s == "" then return "" end
return "list-style-type: " .. s .. ";"
end,
columncountstyle = function(n)
return "-moz-column-count: " .. n .. "; -webkit-column-count: " .. n .. "; column-count: " .. n .. ";"
end,
columnwidthstyle = function(w)
return "-moz-column-width: " .. w .. "; -webkit-column-width: " .. w .. "; column-width: " .. w .. ";"
end,
OpenHTMLTag = function(t)
local out = "<" .. t.name
local keys = {}
for k in pairs(t.params or {}) do keys[#keys + 1] = k end
table.sort(keys)
for _, k in ipairs(keys) do
out = out .. " " .. k .. '="' .. tostring(t.params[k]) .. '"'
end
return out .. ">"
end,
},
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
引文格式化(原「模組:Citation/HKU」,今併入本模組)
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local z = (function()
--[[--------------------------------------------------------------------------
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'country', 'dynasty', '朝代', '朝', '國別', '國'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
-- 漢數字:不論所入為阿拉伯數字或漢字,一概以漢數字出之
local DIGIT = {[0] = '〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'}
local function digitwise(d)
return (d:gsub('%d', function(c) return DIGIT[tonumber(c)] end))
end
local function below10000(n)
local ds = {math.floor(n / 1000), math.floor(n / 100) % 10, math.floor(n / 10) % 10, n % 10}
local units = {'千', '百', '十', ''}
local out, started, zero = '', false, false
for i = 1, 4 do
local d = ds[i]
if d == 0 then
if started then zero = true end
else
if zero then out = out .. '〇'; zero = false end
if d == 1 and units[i] == '十' and not started then
out = out .. '十'
else
out = out .. DIGIT[d] .. units[i]
end
started = true
end
end
return out
end
local function quantity(n)
n = math.floor(n)
if n == 0 then return '〇' end
local out = ''
local yi = math.floor(n / 100000000)
local rest = n % 100000000
if yi > 0 then out = out .. below10000(yi) .. '億' end
local wan = math.floor(rest / 10000)
local low = rest % 10000
if wan > 0 then
if yi > 0 and wan < 1000 then out = out .. '〇' end
out = out .. below10000(wan) .. '萬'
end
if low > 0 then
if (yi > 0 or wan > 0) and low < 1000 then out = out .. '〇' end
out = out .. below10000(low)
end
return out
end
-- 文字中之數字:「N年」作逐位(二〇二六年),餘作數量(二十五)
local function cnum(s)
s = s:gsub('(%d+)年', function(d) return digitwise(d) .. '年' end)
s = s:gsub('%d+', function(d)
if #d > 8 then return digitwise(d) end
return quantity(tonumber(d))
end)
return s
end
local CNCHARS = {'一', '二', '三', '四', '五', '六', '七', '八', '九', '〇', '零', '兩', '十', '百', '千', '萬', '億'}
local function is_cnnum(s)
for _, c in ipairs(CNCHARS) do s = s:gsub(c, '') end
return s == ''
end
local function numfmt(s, pre, post)
if is_cnnum(s) then return pre .. s .. post end
if s:match('^%d+$') then return pre .. (#s > 8 and digitwise(s) or quantity(tonumber(s))) .. post end
return cnum(s)
end
local function date_part(v, suffix, yearly)
if not isset(v) then return nil end
if v:match('^%d+$') then
return (yearly and digitwise(v) or quantity(tonumber(v))) .. suffix
end
local t = cnum(v)
if t:sub(-#suffix) ~= suffix then t = t .. suffix end
return t
end
local function fmt_date(y, m, d)
return (date_part(y, '年', true) or '') .. (date_part(m, '月', false) or '') .. (date_part(d, '日', false) or '')
end
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return cnum(n.date)
end
if isset(n.year) or isset(n.month) or isset(n.day) then
return fmt_date(n.year, n.month, n.day)
end
return nil
end
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
return cnum(s)
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
if is_cnnum(s) then return '頁' .. s end
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁' .. cnum(t)
end
return cnum(s)
end
local function person(fam, i)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
name = l .. '氏' .. tpl('{{按|名' .. f .. '}}')
else
name = l or f
end
end
if not name then return nil end
local plain = isset(a) and a or (isset(l) and l or f)
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name, plain
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam, tpl)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
local plains = {}
for i = 1, maxi do
local who, plain = person(fam, i, tpl)
if who then list[#list + 1] = who; plains[#plains + 1] = plain end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who; plains[#plains + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(plains) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[1] == 'isbn' then
local code = v:gsub('[%s%-]', '')
out[#out + 1] = 'ISBN [[Special:BookSources/' .. code .. '|' .. v .. ']]'
elseif d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
-- 「第…」「卷…」相接者,其間不加逗號
local function is_ord(t)
local h = t:sub(1, 3)
return h == '第' or h == '卷'
end
local function joinseg(list)
local out = ''
for i, t in ipairs(list) do
if i > 1 then
out = out .. ((is_ord(list[i - 1]) and (is_ord(t) or t:sub(1, 3) == '〈')) and '' or ',')
end
out = out .. t
end
return out
end
local FORMAT_STYLE = 'font-size:85%; color:#54595d;'
function p.format(raw, frame)
local function tpl(str)
if frame and frame.preprocess then return frame:preprocess(str) end
return str
end
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam, tpl)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
-- 首個題名:網址繫於其上;檔案格式以小灰字綴其後
local first_done = false
local url_used = false
local function title_el(open, txt, close)
if first_done then return open .. txt .. close end
first_done = true
local inner = txt
if isset(n.url) then
inner = '[' .. n.url .. ' ' .. txt .. ']'
url_used = true
end
local out = open .. inner .. close
if isset(n.format) then
out = out .. '<span style="' .. FORMAT_STYLE .. '">(' .. n.format .. ')</span>'
end
return out
end
local title = n.title
if isset(periodical) and isset(title) then
-- 刊中文章
if isset(n.website) and not isset(authors) then
head = n.website .. ':'
add(title_el('〈', title, '〉'))
else
add(title_el('〈', title, '〉'))
add('《' .. (n.website or periodical) .. '》')
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = numfmt(n.volume, '', '卷') end
if isset(n.issue) then vi[#vi + 1] = numfmt(n.issue, '', '期') end
local v = table.concat(vi, '')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(numfmt(n.volume, '第', '卷')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
elseif is_thesis and isset(title) then
add(title_el('〈', title, '〉') .. '(' .. joinseg({join({n.publisher, n.type, n = 2}, ''), date}) .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add(title_el('〈', n.chapter, '〉'))
add('載' .. editors .. '編:《' .. title .. '》')
elseif isset(title) then
add(title_el('《', title, '》'))
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.series) then paren[#paren + 1] = numfmt(n.series, '第', '輯') end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
else
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. joinseg(paren) .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(numfmt(n.volume, '卷', '')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
if isset(n.chap_no) then add(numfmt(n.chap_no, '第', '章')) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add(title_el('〈', n.chapter, '〉'))
end
if isset(n.section) then add(numfmt(n.section, '第', '段')) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
-- 引文:轉引之書所以明引文之出處
if isset(n.citation) then
local c = '引' .. (isset(n.ca) and (n.ca .. '所著之') or '') .. '《' .. n.citation .. '》'
if isset(n.quote) then c = c .. '曰:「' .. n.quote .. '」' end
add(c)
elseif isset(n.quote) then
add('引文:「' .. n.quote .. '」')
end
local text = head .. joinseg(seg)
if text == '' then return nil end
-- 覽閱與存檔
local notes = {}
if isset(n.accessdate) then notes[#notes + 1] = acc_date(n.accessdate) .. '覽閱' end
if isset(n.archiveurl) or isset(n.archivedate) then
local lab = (isset(n.archivedate) and acc_date(n.archivedate) or '') .. '存檔'
if isset(n.archiveurl) then lab = '[' .. n.archiveurl .. ' ' .. lab .. ']' end
notes[#notes + 1] = lab
end
if #notes > 0 then text = text .. '(' .. table.concat(notes, ';') .. ')' end
text = text .. '。'
local tail = {}
if isset(n.url) and not url_used then
tail[#tail + 1] = '取自 ' .. n.url .. '。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 原文語文:{{<語言碼>}}
if isset(n.language) and not n.language:find('[{}|<>%[%]]') then
text = text .. tpl('{{' .. n.language .. '}}')
end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args, frame)
end
return p
end)()
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localise for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--2026-11-06: Abolish the import of Module:Wikitext & Sinicise numbering systems & Further localise
--
--End
eldf4j0snwh5hvnkb7wvxtuu61nbji1
448828
448827
2026-11-06T11:54:02Z
Dasze
55299
a
448828
Scribunto
text/plain
---------------------------------------------------------------------
-- Module:Citation - Lua module for Citation auxiliary templates
-- Adapted from the HKU Chinese reference style <https://clepapps.hku.hk/style/citation01.html>
---------------------------------------------------------------------
-- For the {{citation}} formatting functions, see: Module:Citation/CS1
-- (see NOTES at bottom)
--require "mw.text"
local z = {
wikitext = {
liststyle = function(s)
if s == nil or s == "" then return "" end
return "list-style-type: " .. s .. ";"
end,
columncountstyle = function(n)
return "-moz-column-count: " .. n .. "; -webkit-column-count: " .. n .. "; column-count: " .. n .. ";"
end,
columnwidthstyle = function(w)
return "-moz-column-width: " .. w .. "; -webkit-column-width: " .. w .. "; column-width: " .. w .. ";"
end,
OpenHTMLTag = function(t)
local out = "<" .. t.name
local keys = {}
for k in pairs(t.params or {}) do keys[#keys + 1] = k end
table.sort(keys)
for _, k in ipairs(keys) do
out = out .. " " .. k .. '="' .. tostring(t.params[k]) .. '"'
end
return out .. ">"
end,
},
extensiontags = {
nowiki = true,
ref = true,
gallery = true,
pre = true,
source = true,
categorytree = true,
charinsert = true,
hiero = true,
imagemap = true,
inputbox = true,
math = true,
poem = true,
ref = true,
references = true,
syntaxhighlight = true,
timeline = true,
}
}
function trim( str )
if str == nil then
return nil;
end
return str:match( "^%s*(.-)%s*$" );
end
function hideinprint(content)
return content
end
function onlyinprint(content)
return ""
end
-- This returns a string with HTML character entities for wikitext markup characters.
function wikiescape(text)
text = text:gsub( '[&\'%[%]{|}]', {
['&'] = '&',
["'"] = ''',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}' } );
return text;
end
function createTag(t, frame)
local name = t.name or "!-- --"
local content = t.contents or ""
local attrs = {}
if ( z.extensiontags[name] ) then
-- We have to preprocess these, so that they are properly turned into so-called "strip markers" in the generated wikitext.
if ( not frame ) then error ("Please supply an extra frame argument to the createTag() function.") end
local params = {}
for n,v in pairs(t.params) do
table.insert(params, "|" .. n .. "=" .. v)
end
return frame:preprocess("{{#tag:" .. name .. "|" .. content .. table.concat(params) .. "}}")
else
for n,v in pairs(t.params) do
if (v) then
table.insert(attrs, n .. "=\"" .. wikiescape(v) .. "\"")
else
table.insert(attrs, n)
end
end
if ("" == content) then
return "<" .. name .. " " .. table.concat(attrs, " ") .. "/>"
else
return "<" .. name .. " " .. table.concat(attrs, " ") .. ">" .. content .. "</" .. name .. ">"
end
end
end
--[[
This is a clone of mw.text.nowiki. When the mw.text library is installed,
this can be replaced by a call to that library. ]]
function nowiki( s )
-- string.gsub is safe here, because we're only caring about ASCII chars
s = string.gsub( s, '["&\'<=>%[%]{|}]', {
['"'] = '"',
['&'] = '&',
["'"] = ''',
['<'] = '<',
['='] = '=',
['>'] = '>',
['['] = '[',
[']'] = ']',
['{'] = '{',
['|'] = '|',
['}'] = '}',
} )
s = string.sub( string.gsub( '\n' .. s, '\n[#*:;]', {
["\n#"] = "\n#",
["\n*"] = "\n*",
["\n:"] = "\n:",
["\n;"] = "\n;",
} ), 2 )
s = string.gsub( s, '://', '://' )
s = string.gsub( s, 'ISBN ', 'ISBN ' )
s = string.gsub( s, 'RFC ', 'RFC ' )
return s
end
function externallinkid(args)
local sep = args.separator or " "
args.suffix = args.suffix or ""
local url_string = args.id
if args.encode == true or args.encode == nil then
url_string = mw.uri.encode( url_string );
end
local t0 = onlyinprint(args.label .. sep .. args.id)
local t1 = hideinprint("[[" .. args.link .. "|" .. args.label .. "]]" .. sep .. "[" .. args.prefix .. url_string .. args.suffix .. " " .. nowiki(args.id) .. "]")
return t0 .. t1
end
function doi(id, inactive, nocat)
local cat = ""
local text;
if ( inactive ~= nil ) then
text = "[[Digital object identifier|doi]]:" .. id;
cat = cat .. "[[Category:Pages with DOIs inactive since " .. selectyear(inactive) .. "]]"
inactive = " (inactive " .. inactive .. ")"
else
text = externallinkid({link="Digital object identifier",label="doi",prefix="http://dx.doi.org/",id=id,separator=":"})
inactive = ""
end
if ( string.sub(id,1,3) ~= "10." ) then
cat = cat .. "[[Category:Pages with DOI errors]]" .. '<span class="error"> Bad DOI (expected "10." prefix) in code number</span>'
end
if ( nocat and nocat ~= "" ) then cat = "" end
return text .. inactive .. cat
end
function selectyear( str )
local lang = mw.getContentLanguage();
local good, result;
good, result = pcall( lang.formatDate, lang, 'Y', str )
if good then
return result;
else
return '';
end
end
function anchorid(label, args)
local P1 = trim(args[1]) or ""
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
local P5 = trim(args[5]) or ""
local anchor = P1 .. P2 .. P3 .. P4 .. P5;
if anchor ~= '' then -- See bug description in Citation/CS1
anchor = mw.uri.anchorEncode( anchor );
end
return label .. anchor
end
function refid(label, args)
local p = args.p or ""
local pp = args.pp or ""
local loc = args.loc or ""
return anchorid(label, args) .. p .. pp .. loc
end
function name(args)
local P1 = trim(args[1]) or ""
if ( args[5] ~= nil) then
return P1 .. " et al."
else
local P2 = trim(args[2]) or ""
local P3 = trim(args[3]) or ""
local P4 = trim(args[4]) or ""
if ( args[4] ~= nil ) then
P4 = " " .. P4
P3 = " & " .. P3
P2 = ", " .. P2
elseif ( args[3] ~= nil ) then
P3 = " " .. P3
P2 = " & " .. P2
elseif ( args[2] ~= nil ) then
P2 = " " .. P2
end
return P1 .. P2 .. P3 .. P4
end
end
function crossref(frame, label, args)
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local LB = config.BracketLeft or ""
local RB = config.BracketRight or ""
local anchor = args.ref or args.Ref or anchorid( label, args)
local text = name(args)
local loc = args.loc
local page
local pages = args.pp or args.pages
if pages == nil or pages == '' then
page = args.p or args.page;
end
if nil == loc then loc = "" else loc = " " .. loc end
if ( page ~= nil ) then
local pagesep = config.PageSep or ", p. "
loc = loc .. pagesep .. page
end
if ( pages ~= nil ) then
local pagessep = config.PagesSep or ", pp. "
loc = loc .. pagessep .. pages
end
local pagename = args.pagename or ""
local ps = args.Postscript or ""
return LB .. "[[" .. pagename .. "#" .. anchor .. "|" .. text .. "]]" .. loc .. RB .. ps
end
function r0(frame, name, group, page)
if ( name == nil ) then return "" end
if ( group == nil ) then group = "" end
local p = ""
if ( page ~= nil ) then
local contents = ":" .. page
p = createTag({name="sup",contents=contents,params={class="reference",style="white-space:nowrap;"}})
end
return createTag({name="ref",contents="",params={name=name,group=group}}, frame) .. p
end
function reflist0(frame, config, args)
local contents = args.refs or ""
local liststyle = args.liststyle
local count = args[1]
local width = args.colwidth
local group = args.group or config.default_group
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "reflist"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local references = createTag({name="references",contents=contents,params={group=group}}, frame)
return createTag({name="div",contents=references,params=params})
end
function refbegin0(frame, config, args)
local liststyle = args.liststyle
local indent = args.indent
local indentsize = args.indentsize
local count = args[1]
local width = args.colwidth
if ( nil == tonumber(count) and nil == width ) then
width = count
count = nil
end
if ( nil == liststyle ) then
if ( "upper-alpha" == group or "lower-alpha" == group or "upper-roman" == group or "lower-roman" == group or "upper-greek" == group or "lower-greek" == group ) then
liststyle = group
else
liststyle = config.default_liststyle
end
end
local params = {}
params.class = "refbegin"
params.style = z.wikitext.liststyle(liststyle)
if ( nil ~= count ) then
params.class = params.class .. " references-column-count references-column-count-" .. count
params.style = params.style .. " " .. z.wikitext.columncountstyle(count)
end
if ( nil ~= width ) then
params.class = params.class .. " references-column-width"
params.style = params.style .. " " .. z.wikitext.columnwidthstyle(width)
end
local dlopen
if ( nil ~= indent ) then
dlopen = z.wikitext.OpenHTMLTag({name="dl",params={style="text-indent: -" .. (indentsize or "3.2") .. "em;"}})
else
dlopen = ""
end
return z.wikitext.OpenHTMLTag({name="div",params=params}) .. dlopen
end
function refend0(frame, config, args)
local indent = args.indent
local dlclose
if ( nil ~= indent ) then
dlclose = "</dl>"
else
dlclose = ""
end
return dlclose .. "</div>"
end
-- This is used by {{doi}} to create DOI links in the style used in citations.
function z.doi(frame)
local pframe = frame:getParent()
local id = pframe.args.id or pframe.args[1] or ""
return doi(id)
end
-- This is used by {{ISSN}} to create ISSN links in the style used in citations.
function z.ISSN(frame)
local pframe = frame:getParent()
local Name = pframe.args[1] or ""
return hideinprint("[[International Standard Serial Number|ISSN]] [http://www.worldcat.org/search?fq=x0:jrnl&q=n2:" .. Name .. " " .. Name .. "]")
end
-- This is used by templates such as {{SfnRef}} to create the (encoded) anchor name for a Harvard cross-reference hyperlink.
function z.SFNID(frame)
local pframe = frame:getParent()
return anchorid('FOOTNOTE', pframe.args)
end
-- This is used by templates such as {{Harvard citation}} to create the Harvard cross-reference text.
function z.Harvard(frame)
local pframe = frame:getParent()
return crossref(frame, pframe.args)
end
-- This is used by templates such as {{sfn}} to create the entire cross-reference.
function z.sfn(frame)
local pframe = frame:getParent()
pframe.args.Postscript = pframe.args.postscript or pframe.args.ps or ".";
local content = crossref(frame, 'CITEREF', pframe.args)
local args = { name = refid( 'FOOTNOTE', pframe.args) }
return createTag({name = "ref", contents = content, params = args}, frame)
end
-- This is used by template {{r}}.
function z.r(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
args.page1 = args.page1 or args.page
local text = ""
-- This would be shorter using ipairs(), but that doesn't work on an arguments table supplied to a template.
local index = 1
while args[index] ~= nil do
local arg = args[index]
local t = r0(frame, arg, args.group, args["page" .. index])
text = text .. t
index = index + 1
end
return text
end
-- This is used by template {{ref label}}.
function z.reflabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local P1 = args[1] or ""
local P2 = args[2] or ""
local P3 = args[3] or ""
local id = nil
local contents = "[[#endnote_" .. P1 .. P3 .. "|[" .. P2 .. "]]]"
local params = {}
params.class="reference"
if ( args.noid == nil or args.noid == "" ) then params.id = "ref_" .. P1 .. P3 end
return createTag({name="sup",contents=contents,params=params})
end
-- This is used by template {{note label}}.
function z.notelabel(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
local id = args[1] or ""
local arrow = args[3] or ""
local postscript = args[4] or ""
local contents
if arrow ~= "" then
local sup_arrow = createTag({name="sup",contents=arrow,params={}})
contents = "[[#ref_" .. id .. arrow .. "|<b>" .. sup_arrow .. "</b>]]" .. postscript
if "none" == arrow then arrow = "^" end -- Change this AFTER using it in the ID parameter and the contents.
else
contents = (args[2] or "") .. postscript
end
local params = { class="citation wikicite" }
if id ~= "" and ( args.noid == nil or args.noid == "" ) then
params.id = mw.uri.anchorEncode("endnote_" .. id .. arrow)
end
return createTag({name="span",contents=contents,params=params})
end
-- This is used by templates {{reflist}} and {{notelist}}.
function z.reflist(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return reflist0(frame, config, args)
end
-- This is used by template {{refbegin}}.
function z.refbegin(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refbegin0(frame, config, args)
end
-- This is used by template {{refend}}.
function z.refend(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return refend0(frame, config, args)
end
-- This is used by template {{efn}}.
function z.efn(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that instantiates the template
return createTag({name="ref",contents=(args[1] or ""),params={name=args.name,group=config.default_group}}, frame)
end
--[[--------------------------------------------------------------------------
引文格式化(原「模組:Citation/HKU」,今併入本模組)
z.citation(frame):供 {{#invoke:Citation|citation}} 呼叫;z.format(args):供其他模組呼叫。
--------------------------------------------------------------------------]]
local z = (function()
--[[--------------------------------------------------------------------------
引文格式化:依《研究論文格式舉要》(香港大學中文學院,2022年新二版)之注釋式
行之,並兼容舊版 {{Citation}}/{{Cite book}} 之中文及舊式參數名。
式(書):著者:《書名》(出版地:出版者,年),卷,〈篇名〉,頁。取自網址,擷取日期。
式(刊):著者:〈篇名〉,《刊名》,卷、期(年月),頁。
式(古版):著者:《書名》(《叢書》本),卷,〈篇名〉,頁4上。
------------------------------------------------------------------------------]]
local p = {}
local function trim(s)
if s == nil then return nil end
s = tostring(s):gsub('^%s+', ''):gsub('%s+$', '')
return s
end
local function isset(s) return s ~= nil and s ~= '' end
---------------------------------------------------------------------------
-- 一、參數別名(舊式、中文、英文歸於正名)
---------------------------------------------------------------------------
local ALIAS = {
title = {'title', '題', '著作'},
country = {'country', 'dynasty', '朝代', '朝', '國別', '國'},
publisher = {'publisher', '出版商', '出版社', 'institution', 'distributor'},
year = {'year', '年'},
month = {'month', '月'},
day = {'day', '日'},
date = {'date', '日期'},
location = {'location', 'place', 'publication-place', '出版地', '地'},
citation = {'citation', '引著題'},
ca = {'ca', 'citation_author', '引著者'},
edition = {'edition', '版本', '版'},
volume = {'volume', 'vol', '卷'},
issue = {'issue', 'number', '期號', '期'},
chap_no = {'chap_no', 'chapter_number', '章節'},
chapter = {'chapter', 'chap', 'chap_name', 'contribution', '章題', '章名', '章', '篇'},
pages = {'pages', 'page', 'p', 'pp', '頁'},
at = {'at'},
section = {'section', '段'},
collection = {'collection', '集'},
note = {'note', '條'},
format = {'format', '格式', '式'},
type = {'type', 'medium', '鏈式', '類型'},
language = {'language', 'lang', '言'},
quote = {'quote', 'quotation', '引文'},
accessdate = {'accessdate', 'access-date', '引月日', '引日'},
archiveurl = {'archive_url', 'archiveurl', 'archive-url', '存址'},
archivedate = {'archive_date', 'archivedate', 'archive-date', '存日'},
url = {'url', 'URL', '址'},
work = {'work', '叢書', '叢書題', '彙編', '系列'},
series = {'series', 'version'},
journal = {'journal', 'periodical'},
newspaper = {'newspaper'},
magazine = {'magazine'},
website = {'website'},
encyclopedia = {'encyclopedia', 'encyclopaedia', 'dictionary'},
coauthors = {'coauthors', 'coauthor', '協著者'},
others = {'others'},
ref = {'ref'},
isbn = {'isbn', 'ISBN', 'isbn13', 'ISBN13', '國際標準書號'},
issn = {'issn', 'ISSN', '國際標準期刊號'},
eissn = {'eissn', 'EISSN'},
doi = {'doi', 'DOI'},
jstor = {'jstor', 'JSTOR'},
oclc = {'oclc', 'OCLC'},
pmid = {'pmid', 'PMID'},
pmc = {'pmc', 'PMC'},
arxiv = {'arxiv', 'ARXIV', 'eprint'},
bibcode = {'bibcode', 'BIBCODE'},
lccn = {'lccn', 'LCCN'},
hdl = {'hdl', 'HDL'},
id = {'id', 'ID'},
}
-- 具序號之名族(author1、著2、姓3…)
local NAMEFAM = {
author = {'author', '著者', '著'},
last = {'last', 'surname', '姓'},
first = {'first', 'given', '名'},
link = {'authorlink', 'author-link', '著址', '著者址'},
editor = {'editor', '編者', '編'},
translator = {'translator', '譯者', '譯'},
}
local REVERSE = {}
for canon, list in pairs(ALIAS) do
for _, a in ipairs(list) do REVERSE[a] = canon end
end
local FAMREV = {}
for fam, list in pairs(NAMEFAM) do
for _, a in ipairs(list) do FAMREV[a] = fam end
end
local function normalise(raw)
local n = {}
local fam = { author = {}, last = {}, first = {}, link = {}, editor = {}, translator = {} }
for k, v in pairs(raw) do
if type(k) == 'string' then
v = trim(v)
if isset(v) then
local canon = REVERSE[k]
if canon then
if n[canon] == nil then n[canon] = v end
else
-- 先去尾隨 -link / 數字,試名族
local base, num = k:match('^(.-)(%d*)$')
local f = FAMREV[base]
if f then
fam[f][tonumber(num) or 1] = v
end
end
end
end
end
return n, fam
end
---------------------------------------------------------------------------
-- 二、工具
---------------------------------------------------------------------------
local function is_cjk(s)
-- 含漢字、假名、諺文等非ASCII字符
return s:find('[\194-\244]') ~= nil
end
local function join(list, sep)
local out = {}
for i = 1, (list.n or 8) do
local v = list[i]
if isset(v) then out[#out + 1] = v end
end
return table.concat(out, sep)
end
-- 漢數字:不論所入為阿拉伯數字或漢字,一概以漢數字出之
local DIGIT = {[0] = '〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'}
local function digitwise(d)
return (d:gsub('%d', function(c) return DIGIT[tonumber(c)] end))
end
local function below10000(n)
local ds = {math.floor(n / 1000), math.floor(n / 100) % 10, math.floor(n / 10) % 10, n % 10}
local units = {'千', '百', '十', ''}
local out, started, zero = '', false, false
for i = 1, 4 do
local d = ds[i]
if d == 0 then
if started then zero = true end
else
if zero then out = out .. '〇'; zero = false end
if d == 1 and units[i] == '十' and not started then
out = out .. '十'
else
out = out .. DIGIT[d] .. units[i]
end
started = true
end
end
return out
end
local function quantity(n)
n = math.floor(n)
if n == 0 then return '〇' end
local out = ''
local yi = math.floor(n / 100000000)
local rest = n % 100000000
if yi > 0 then out = out .. below10000(yi) .. '億' end
local wan = math.floor(rest / 10000)
local low = rest % 10000
if wan > 0 then
if yi > 0 and wan < 1000 then out = out .. '〇' end
out = out .. below10000(wan) .. '萬'
end
if low > 0 then
if (yi > 0 or wan > 0) and low < 1000 then out = out .. '〇' end
out = out .. below10000(low)
end
return out
end
-- 文字中之數字:「N年」作逐位(二〇二六年),餘作數量(二十五)
local function cnum(s)
s = s:gsub('(%d+)年', function(d) return digitwise(d) .. '年' end)
s = s:gsub('%d+', function(d)
if #d > 8 then return digitwise(d) end
return quantity(tonumber(d))
end)
return s
end
local CNCHARS = {'一', '二', '三', '四', '五', '六', '七', '八', '九', '〇', '零', '兩', '十', '百', '千', '萬', '億'}
local function is_cnnum(s)
for _, c in ipairs(CNCHARS) do s = s:gsub(c, '') end
return s == ''
end
local function numfmt(s, pre, post)
if is_cnnum(s) then return pre .. s .. post end
if s:match('^%d+$') then return pre .. (#s > 8 and digitwise(s) or quantity(tonumber(s))) .. post end
return cnum(s)
end
local function date_part(v, suffix, yearly)
if not isset(v) then return nil end
if v:match('^%d+$') then
return (yearly and digitwise(v) or quantity(tonumber(v))) .. suffix
end
local t = cnum(v)
if t:sub(-#suffix) ~= suffix then t = t .. suffix end
return t
end
local function fmt_date(y, m, d)
return (date_part(y, '年', true) or '') .. (date_part(m, '月', false) or '') .. (date_part(d, '日', false) or '')
end
local function pub_date(n)
if isset(n.date) then
local y, m, d = n.date:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
y, m = n.date:match('^(%d%d%d%d)%-(%d%d?)$')
if y then return fmt_date(y, m) end
y = n.date:match('^(%d+)$')
if y then return fmt_date(y) end
return cnum(n.date)
end
if isset(n.year) or isset(n.month) or isset(n.day) then
return fmt_date(n.year, n.month, n.day)
end
return nil
end
local function acc_date(s)
if not isset(s) then return nil end
local y, m, d = s:match('^(%d%d%d%d)%-(%d%d?)%-(%d%d?)$')
if y then return fmt_date(y, m, d) end
return cnum(s)
end
local function fmt_pages(s)
s = s:gsub('^%s*[Pp][Pp]?%.?%s*', ''):gsub('^頁%s*', '')
if is_cnnum(s) then return '頁' .. s end
-- 多字節字元以暫代符處理,免於位元組類別破碎
local t = s:gsub('上', '\1'):gsub('下', '\2'):gsub('–', '-'):gsub('—', '-'):gsub('-', '-')
if t:match('^%d+[\1\2]?%s*%-%s*%d+[\1\2]?$') or t:match('^%d+[\1\2]?$') then
local leaf = t:find('[\1\2]') ~= nil
t = t:gsub('%s*%-%s*', leaf and '-' or '—')
t = t:gsub('\1', '上'):gsub('\2', '下')
return '頁' .. cnum(t)
end
return cnum(s)
end
local function person(fam, i, tql)
local a, l, f, link = fam.author[i], fam.last[i], fam.first[i], fam.link[i]
local name
if isset(a) then
name = a
elseif isset(l) or isset(f) then
if isset(l) and isset(f) then
name = l .. '氏' .. tpl('{{按|名' .. f .. '}}')
else
name = l or f
end
end
if not name then return nil end
local plain = isset(a) and a or (isset(l) and l or f)
if isset(link) then name = '[[' .. link .. '|' .. name .. ']]' end
return name, plain
end
local function names_list(fam, key)
local out = {}
local maxi = 0
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
return fam[key], maxi
end
local function authors_text(n, fam, tpl)
local list = {}
local maxi = 0
for _, key in ipairs({'author', 'last', 'first', 'link'}) do
for i in pairs(fam[key]) do if i > maxi then maxi = i end end
end
local plains = {}
for i = 1, maxi do
local who, plain = person(fam, i, tpl)
if who then list[#list + 1] = who; plains[#plains + 1] = plain end
end
if isset(n.coauthors) then
for piece in n.coauthors:gsub('、', ';'):gsub(';', ';'):gmatch('[^;]+') do
local who = trim(piece)
if isset(who) then list[#list + 1] = who; plains[#plains + 1] = who end
end
end
if #list == 0 then return nil, list end
local raw = {}
for i, v in ipairs(plains) do raw[i] = v end
if isset(n.country) then list[1] = '(' .. n.country .. ')' .. list[1] end
return table.concat(list, '、'), raw
end
local function plain_list(t)
local keys = {}
for i in pairs(t) do keys[#keys + 1] = i end
table.sort(keys)
local out = {}
for _, i in ipairs(keys) do out[#out + 1] = t[i] end
return table.concat(out, '、')
end
---------------------------------------------------------------------------
-- 三、組句
---------------------------------------------------------------------------
local ID_LABELS = {
{'isbn', 'ISBN', nil},
{'issn', 'ISSN', 'https://www.worldcat.org/issn/'},
{'eissn', 'eISSN', 'https://www.worldcat.org/issn/'},
{'doi', 'doi', 'https://doi.org/'},
{'jstor', 'JSTOR', 'https://www.jstor.org/stable/'},
{'oclc', 'OCLC', 'https://www.worldcat.org/oclc/'},
{'pmid', 'PMID', 'https://pubmed.ncbi.nlm.nih.gov/'},
{'pmc', 'PMC', 'https://www.ncbi.nlm.nih.gov/pmc/articles/PMC'},
{'arxiv', 'arXiv', 'https://arxiv.org/abs/'},
{'bibcode', 'Bibcode', 'https://ui.adsabs.harvard.edu/abs/'},
{'lccn', 'LCCN', 'https://lccn.loc.gov/'},
{'hdl', 'hdl', 'https://hdl.handle.net/'},
}
local function id_text(n)
local out = {}
for _, d in ipairs(ID_LABELS) do
local v = n[d[1]]
if isset(v) then
if (d[1] == 'issn' or d[1] == 'eissn') and v:match('^%d%d%d%d%d%d%d[%dXx]$') then
v = v:sub(1, 4) .. '-' .. v:sub(5)
end
if d[1] == 'isbn' then
local code = v:gsub('[%s%-]', '')
out[#out + 1] = 'ISBN [[Special:BookSources/' .. code .. '|' .. v .. ']]'
elseif d[3] then
out[#out + 1] = d[2] .. ' [' .. d[3] .. v .. ' ' .. v .. ']'
else
out[#out + 1] = d[2] .. ' ' .. v
end
end
end
if isset(n.id) then out[#out + 1] = n.id end
return table.concat(out, ',')
end
local function lang_text(code)
if not isset(code) then return nil end
if code:lower():match('^zh') or code:lower():match('^lzh') then return nil end
local name
if mw and mw.language and mw.language.fetchLanguageName then
local ok, r = pcall(mw.language.fetchLanguageName, code, 'zh-hant')
if ok and isset(r) then name = r end
end
return name or code
end
-- 「第…」「卷…」相接者,其間不加逗號
local function is_ord(t)
local h = t:sub(1, 3)
return h == '第' or h == '卷'
end
local function joinseg(list)
local out = ''
for i, t in ipairs(list) do
if i > 1 then
out = out .. ((is_ord(list[i - 1]) and (is_ord(t) or t:sub(1, 3) == '〈')) and '' or ',')
end
out = out .. t
end
return out
end
local FORMAT_STYLE = 'font-size:85%; color:#54595d;'
function p.format(raw, frame)
local function tpl(str)
if frame and frame.preprocess then return frame:preprocess(str) end
return str
end
local n, fam = normalise(raw)
local authors, authorlist = authors_text(n, fam, tpl)
local editors = plain_list(fam.editor)
local translators = plain_list(fam.translator)
local periodical = n.journal or n.newspaper or n.magazine or n.website or n.encyclopedia
local is_journal = isset(n.journal) or isset(n.magazine)
local is_thesis = isset(n.type) and n.type:find('論文') ~= nil and not periodical
local has_chapter = isset(n.chapter)
local date = pub_date(n)
-- 首:著者
local head = ''
if isset(authors) then
if isset(translators) or (isset(editors) and not has_chapter) then
head = authors .. '著'
if isset(translators) then head = head .. ',' .. translators .. '譯' end
if isset(editors) and not has_chapter then head = head .. ',' .. editors .. '編' end
else
head = authors
end
elseif isset(translators) then
head = translators .. '譯'
elseif isset(editors) and not has_chapter then
head = editors .. '編'
elseif isset(n.website) then
head = n.website
end
if head ~= '' then head = head .. ':' end
local seg = {}
local function add(s) if isset(s) then seg[#seg + 1] = s end end
-- 首個題名:網址繫於其上;檔案格式以小灰字綴其後
local first_done = false
local url_used = false
local function title_el(open, txt, close)
if first_done then return open .. txt .. close end
first_done = true
local inner = txt
if isset(n.url) then
inner = '[' .. n.url .. ' ' .. txt .. ']'
url_used = true
end
local out = open .. inner .. close
if isset(n.format) then
out = out .. '<span style="' .. FORMAT_STYLE .. '">(' .. n.format .. ')</span>'
end
return out
end
local title = n.title
if isset(periodical) and isset(title) then
-- 刊中文章
if isset(n.website) and not isset(authors) then
head = n.website .. ':'
add(title_el('〈', title, '〉'))
else
add(title_el('〈', title, '〉'))
add('《' .. (n.website or periodical) .. '》')
end
if is_journal then
local vi = {}
if isset(n.volume) then vi[#vi + 1] = numfmt(n.volume, '', '卷') end
if isset(n.issue) then vi[#vi + 1] = numfmt(n.issue, '', '期') end
local v = table.concat(vi, '')
if isset(date) then v = v .. '(' .. date .. ')' end
add(v)
else
add(date)
if isset(n.volume) then add(numfmt(n.volume, '第', '卷')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
elseif is_thesis and isset(title) then
add(title_el('〈', title, '〉') .. '(' .. joinseg({join({n.publisher, n.type, n = 2}, ''), date}) .. ')')
elseif has_chapter and isset(fam.editor[1]) and isset(title) then
-- 論文集中之篇
add(title_el('〈', n.chapter, '〉'))
add('載' .. editors .. '編:《' .. title .. '》')
elseif isset(title) then
add(title_el('《', title, '》'))
end
-- 出版資料(括注)
local paren = {}
if not periodical and not is_thesis then
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》本' end
local pub = join({isset(n.location) and (isset(n.publisher) and (n.location .. ':' .. n.publisher) or n.location) or n.publisher, date, n = 2}, ',')
if isset(pub) then paren[#paren + 1] = pub end
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.series) then paren[#paren + 1] = numfmt(n.series, '第', '輯') end
if isset(n.collection) then paren[#paren + 1] = n.collection end
if isset(n.type) then paren[#paren + 1] = n.type end
else
if isset(n.edition) then paren[#paren + 1] = numfmt(n.edition, '第', '版') end
if isset(n.work) then paren[#paren + 1] = '《' .. n.work .. '》' end
if not is_thesis and isset(n.publisher) then paren[#paren + 1] = n.publisher end
end
if #paren > 0 then
local t = '(' .. joinseg(paren) .. ')'
if #seg > 0 and not periodical then seg[#seg] = seg[#seg] .. t else add(t) end
end
-- 卷、篇、頁
if not periodical then
if isset(n.volume) then add(numfmt(n.volume, '卷', '')) end
if isset(n.issue) then add(numfmt(n.issue, '第', '期')) end
end
if isset(n.chap_no) then add(numfmt(n.chap_no, '第', '章')) end
if has_chapter and not periodical and not (isset(fam.editor[1]) and isset(title)) then
add(title_el('〈', n.chapter, '〉'))
end
if isset(n.section) then add(numfmt(n.section, '第', '段')) end
if isset(n.note) then add('「' .. n.note .. '」條') end
if isset(n.pages) then add(fmt_pages(n.pages)) end
add(n.at)
-- 引文:轉引之書所以明引文之出處
if isset(n.citation) then
local c = '引' .. (isset(n.ca) and (n.ca .. '所著之') or '') .. '《' .. n.citation .. '》'
if isset(n.quote) then c = c .. '曰:「' .. n.quote .. '」' end
add(c)
elseif isset(n.quote) then
add('引文:「' .. n.quote .. '」')
end
local text = head .. joinseg(seg)
if text == '' then return nil end
-- 覽閱與存檔
local notes = {}
if isset(n.accessdate) then notes[#notes + 1] = acc_date(n.accessdate) .. '覽閱' end
if isset(n.archiveurl) or isset(n.archivedate) then
local lab = (isset(n.archivedate) and acc_date(n.archivedate) or '') .. '存檔'
if isset(n.archiveurl) then lab = '[' .. n.archiveurl .. ' ' .. lab .. ']' end
notes[#notes + 1] = lab
end
if #notes > 0 then text = text .. '(' .. table.concat(notes, ';') .. ')' end
text = text .. '。'
local tail = {}
if isset(n.url) and not url_used then
tail[#tail + 1] = '取自 ' .. n.url .. '。'
end
local ids = id_text(n)
if isset(ids) then tail[#tail + 1] = ids .. '。' end
if #tail > 0 then text = text .. ' ' .. table.concat(tail, ' ') end
-- 原文語文:{{<語言碼>}}
if isset(n.language) and not n.language:find('[{}|<>%[%]]') then
text = text .. tpl('{{' .. n.language .. '}}')
end
-- 錨點
local ref = n.ref
if ref == nil or ref == 'harv' then
local names = {}
for i, who in ipairs(authorlist) do
if i > 4 then break end
local nm = who
local inner = nm:match('^%[%[.-|(.-)%]%]$')
if inner then nm = inner end
nm = nm:gsub('%[%[', ''):gsub('%]%]', '')
names[#names + 1] = nm
end
local y = n.year or (n.date and n.date:match('^(%d%d%d%d)')) or ''
if #names > 0 then ref = 'CITEREF' .. table.concat(names) .. y else ref = nil end
elseif ref == 'none' then
ref = nil
end
local idattr = isset(ref) and (' id="' .. ref .. '"') or ''
return '<cite class="citation hku-style"' .. idattr .. '>' .. text .. '</cite>'
end
function p.citation(frame)
local parent = frame:getParent()
local args = {}
for k, v in pairs(parent.args) do args[k] = v end
for k, v in pairs(frame.args) do
if args[k] == nil then args[k] = v end
end
return p.format(args, frame)
end
return p
end)()
return z
---------------------------------------------------------------------
--NOTES
--
-- NOTE A1: This Lua module was originally designed to handle a mix
-- of citation styles, crossing Vancouver style with Wikipedia's
-- local Citation Style 1 (CS1) from {Template:Citation/core}.
-- However, the conflicting positions of parameters, scattered
-- in twisted locations across this module, led to a separate
-- variation just to untangle the CS1 format of citations.
--
-- NOTE D2: The placement of dots and other separators between the
-- displayed parameters has been a continual headache, to keep
-- coordinated with the data in parentheses "(data)". There
-- has been a need to pre-check for the existence of related
-- options, to keep from putting double-dots ".." in some cases.
-- In particular, the omission of the "title=" parameter has led
-- to several cases of a spurious dot ". ." because the original
-- design had treated the title as a mandatory parameter.
--
------------------------------------------------------------------------
--LOCAL HISTORY:
--(See [[en:Module:Citation]] for non-local historical records)
--2026-11-06: Localise for classic Chinese Wikipedia, adapted from HKU Chinese reference style
--2026-11-06: Abolish the import of Module:Wikitext & Sinicise numbering systems & Further localise
--
--End
5up9c802jvhr368ueko5an0moq44cfv
模組:Citation/CS1/Configuration
828
84686
448819
436241
2026-11-06T07:48:22Z
Dasze
55299
add lzh localisation
448819
Scribunto
text/plain
local citation_config = {};
-- 削繁去飾,歸於素樸。此處定CSS之式。
-- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199
local code_style="color:inherit; border:inherit; padding:inherit;";
--[[--------------------------< 方 外 之 域 >------------------------------
此錄諸界,不入引文誤謬之科。猶設 notracking = true 是也。
註:界名當以底線連之,勿留空隙。
]]
local uncategorized_namespaces = { 'User', 'Talk', 'User_talk', 'Wikipedia_talk', 'File_talk', 'Template_talk',
'Help_talk', 'Category_talk', 'Portal_talk', 'Book_talk', 'Draft', 'Draft_talk', 'Education_Program_talk',
'Module_talk', 'MediaWiki_talk' };
local uncategorized_subpages = {'/[Ss]andbox', '/[Tt]estcases'}; -- 此乃測試沙盒之屬,亦不入類。
--[[--------------------------< 詞 條 >--------------------------------------------------------------
譯語表
此為引文顯示之定語。
分立於此,以便日後翻譯、修訂。
]]
local messages = {
['_safe_for_italics'] = {'lay source'},
['archived-dead'] = '($1存卷於$2)',
['archived-not-dead'] = '(原文$1於$2)',
['archived-missing'] = '(原文$1存卷於$2)',
['archived-unfit'] = '原存卷於$1',
['archived'] = '存卷',
['by'] = '撰', -- contributions to authored works: introduction, foreword, afterword
['cartography'] = '$1繪圖',
['docket'] = '案號 $1',
['editor'] = '主編',
['editors'] = '主編',
['edition'] = ' $1',
['episode'] = '第$1回',
['et al'] = '等',
['in'] = '(編)', -- edited works
['inactive'] = '停更',
['interview'] = ' 與$2對談:$1',
['inset'] = '$1 插頁',
['lay summary'] = '撮要',
['lay source'] = " – ''$1''",
['newsgroup'] = '[[Usenet newsgroup|新聞組]]: $1',
['original'] = '原文',
['orig year'] = ' [$1]',
['published'] = '$1',
['retrieved'] = '[$1]',
['season'] = '第$1季',
['section'] = '第$1段',
['sections'] = '§§ $1',
['series'] = '第$1輯',
['thesis with type'] = '$1',
['thesis no type'] = '學位論文',
['translated'] = '$1譯',
['type'] = ' ($1)', -- for titletype
['written'] = ' 書於$1',
['vol'] = '$1 卷 $2', -- $1 is sepc; bold journal style volume is in presentation{}
['vol-no'] = '$1 卷 $2 期 $3', -- sepc, volume, issue
['issue'] = '$1 期 $2', -- $1 is sepc
['j-vol'] = '$1 $2', -- sepc, volume; bold journal volume is in presentation{}
['j-issue'] = ' 第$1期',
['nopp'] = '$1 $2'; -- page(s) without prefix; $1 is sepc
['p-prefix'] = "$1 頁$2", -- $1 is sepc
['pp-prefix'] = "$1 頁$2", -- $1 is sepc
['j-page(s)'] = ': $1', -- same for page and pages
['sheet'] = '$1 頁 $2', -- $1 is sepc
['sheets'] = '$1 頁 $2', -- $1 is sepc
['j-sheet'] = ': 頁 $1',
['j-sheets'] = ': 頁 $1',
['language'] = '<span style="font-family: sans-serif; cursor: default; color:var(--color-subtle, #54595d); font-size: 0.8em; bottom: 0.1em; font-weight: bold;" title="連結至$1頁">($1)</span>',
['via'] = " – 經由$1",
['event'] = ' 事發於 $1',
['minutes'] = ' $1 記',
['parameter-separator'] = '、',
['parameter-final-separator'] = '及',
['parameter-pair-separator'] = '及',
['publication-date'] = ' ($1)',
-- 釋疑頁之所在
['help page link'] = 'Help:引文格式壹有誤',
['help page label'] = '釋疑',
['maintenance-link'] = 'link',
['maintenance-item'] = ' $1 ($2)'
}
--[[--------------------------< 內 部 之 誤 >-------------------------------------------
內部舛誤(若配置得當,則不當見此)
]]
local internal_errors = {
['undefined_error'] = '謬誤:未定義',
['unknown_manual_ID'] = '謬誤:手動ID制式不明',
['unknown_ID_mode'] = '謬誤:ID制式不明',
['unknown_argument_map'] = '謬誤:參數映射闕如',
['bad_link_no_origin'] = '謬誤:內鏈有損且無源',
['bad_url_no_origin'] = '謬誤:網址有損且無源',
['bare_url_no_origin'] = '謬誤:孤鏈無源',
}
--[[--------------------------< 體 例 >------------------------------------------------------
顯示之定式。原屬 citation_config.messages,今釐清至此,以正語義。
]]
local presentation = {
['_safe_for_italics'] = {'italic-title', 'trans-italic-title'},
-- Error output
-- .error class is specified at https://git.wikimedia.org/blob/mediawiki%2Fcore.git/9553bd02a5595da05c184f7521721fb1b79b3935/skins%2Fcommon%2Fshared.css#L538
-- .citation-comment class is specified at Help:CS1_errors#Controlling_error_message_display
['hidden-error'] = '<span style="display:none;font-size:100%" class="error citation-comment">$1</span>',
['visible-error'] = '<span style="font-size:100%" class="error citation-comment">$1</span>',
['accessdate'] = ' <span class="reference-accessdate">$2</span>', -- to allow editors to hide accessdate using personal css
['bdi'] = '<bdi$1>$2</bdi>', -- bidirectional isolation used with |script-title= and the like
['format'] = ' <span style="font-size:85%;">($1)</span>', -- for |format=, |chapter-format=, etc
['access-signal'] = '<span class="plainlinks">$1 $2</span>', -- external link with appropriate lock icon
['free'] = '[[File:Lock-green.svg|9px|link=|alt=公諸同好|公諸同好]]',
['registration'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=登簿方得閱|登簿方得閱]]',
['limited'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=試閱有期,超限則賈|試閱有期,超限則賈]]',
['subscription'] = '[[File:Lock-red-alt.svg|9px|link=|alt=納費方得閱|納費方得閱]]',
['italic-title'] = "《$1》",
['kern-left'] = '<span style="padding-left:0.2em;">$1</span>$2', -- spacing to use when title contains leading single or double quote mark
['kern-right'] = '$1<span style="padding-right:0.2em;">$2</span>', -- spacing to use when title contains trailing single or double quote mark
['nowrap1'] = '<span class="nowrap">$1</span>', -- for nowrapping an item: <span ...>yyyy-mm-dd</span>
['nowrap2'] = '<span class="nowrap">$1</span> $2', -- for nowrapping portions of an item: <span ...>dd mmmm</span> yyyy (note white space)
['OCinS'] = '<span title="$1" class="Z3988"><span style="display:none;"> </span></span>',
-- Note: Using display: none on the COinS span breaks some clients.
['parameter'] = '<code style="'..code_style..'">|$1=</code>',
['quoted-text'] = '<q>$1</q>', -- for wrapping |quote= content
['quoted-title'] = '〈$1〉',
['trans-italic-title'] = "[$1]",
['trans-quoted-title'] = "[$1]",
['vol-bold'] = ' 卷$1', -- for journal cites; for other cites ['vol'] in messages{}
['maintenance'] = '<span class="citation-comment" style="display:none; color:#33aa33">$1</span>',
['citation-with-id'] = '<cite id="$1" class="$2">$3</cite>',
['citation-no-id'] = '<cite class="$1">$2</cite>'
}
--[[--------------------------< 期 刊 參 數 >-----------------------------------
用於歸併 periodical 諸元之別名,鍵值對應 citation class。
]]
local periodical_parameters = {
['journal'] = {'journal'},
['news'] = {'newspaper'},
['magazine'] = {'magazine'},
['web'] = {'website'},
['encyclopaedia'] = {'encyclopedia', 'encyclopaedia', 'dictionary'},
['mailinglist'] = {'mailinglist', 'mailing-list'},
['_general'] = {'work', 'periodical', '彙編', '叢書', '叢書題', '系列'}
} -- 注意參數排列顺序,_general一定要放最后。
local periodical_compatibility = {
['journal'] = {
['drop'] = {'news', 'encyclopaedia', 'mailinglist'},
['warn'] = {'magazine'},
['suggest'] = 'journal'
},
['news'] = {
['drop'] = {'encyclopaedia', 'mailinglist', 'journal'},
['warn'] = {'magazine'},
['suggest'] = 'newspaper'
},
['magazine'] = {
['drop'] = {'encyclopaedia', 'mailinglist'},
['warn'] = {'journal', 'news'},
['suggest'] = 'magazine'
},
['web'] = {
['drop'] = {'encyclopaedia', 'mailinglist'},
['warn'] = {'news', 'journal', 'magazine'},
['suggest'] = 'website'
},
['encyclopaedia'] = {
['drop'] = {'mailinglist', 'news', 'journal', 'magazine'},
},
['mailinglist'] = {
['drop'] = {'encyclopaedia', 'news', 'journal', 'magazine', 'web'},
},
['book'] = {
['drop'] = {'news', 'journal', 'mailinglist'},
['warn'] = {'encyclopaedia', 'magazine'},
['suggest'] = 'work'
},
['conference'] = {
['drop'] = {'news', 'magazine', 'mailinglist', 'encyclopaedia'},
['warn'] = {'journal'},
['suggest'] = 'book-title'
},
['map'] = {
['drop'] = {'mailinglist', 'encyclopaedia'},
},
['interview'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal'},
},
['AV media'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal', 'magazine'},
},
['podcast'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal', 'magazine', 'news'},
},
['serial'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal', 'magazine', 'news'},
},
['speech'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal', 'magazine'},
},
['episode'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'journal', 'magazine', 'news'},
},
['thesis'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'magazine', 'news'},
},
['pressrelease'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'magazine', 'journal'},
},
['arxiv'] = {
['drop'] = {'mailinglist', 'encyclopaedia', 'magazine', 'journal', 'web'}
}
}
local function build_periodical ()
local periodical_items = {};
for _, aliases in pairs (periodical_parameters) do
for _, aliase in pairs (aliases) do
table.insert (periodical_items, aliase);
end
end
return periodical_items;
end
local periodical = {
parameters = periodical_parameters,
compatibility = periodical_compatibility
}
--[[--------------------------< 別 名 >----------------------------------------------------------------
常用參數之別名表
]]
local aliases = {
['AccessDate'] = {'access-date', 'accessdate', '引日', '引月日'},
['Agency'] = 'agency',
['AirDate'] = {'air-date', 'airdate'},
['ArchiveDate'] = {'archive-date', 'archivedate', '存日'},
['ArchiveFormat'] = 'archive-format',
['ArchiveURL'] = {'archive-url', 'archiveurl', '存址'},
['ASINTLD'] = {'ASIN-TLD', 'asin-tld'},
['At'] = 'at',
['Authors'] = {'authors', 'people', 'host', 'credits', '著者群'},
['BookTitle'] = {'book-title', 'booktitle'},
['Callsign'] = {'call-sign', 'callsign'}, -- cite interview
['Cartography'] = 'cartography',
['Chapter'] = {'chapter', 'contribution', '篇', '章', '章名', '章題'},
['ChapterFormat'] = {'chapter-format', 'contribution-format', 'section-format'};
['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'section-url', 'sectionurl'},
['ChapterUrlAccess'] = {'chapter-url-access', 'section-url-access'};
['City'] = 'city', -- cite interview
['Class'] = 'class', -- cite arxiv and arxiv identifiers
['Coauthors'] = {'coauthors', 'coauthor', '協著者'}, -- coauthor and coauthors are deprecated; remove after 1 January 2015?
['Conference'] = {'conference', 'event'},
['ConferenceFormat'] = {'conference-format', 'event-format'},
['ConferenceURL'] = {'conference-url', 'conferenceurl', 'event-url', 'eventurl'},
['Contribution'] = 'contribution', -- introduction, foreword, afterword, etc; required when |contributor= set
['Date'] = {'date', '日期'},
['DeadURL'] = {'dead-url', 'deadurl','url-status','urlstatus'},
['Degree'] = 'degree',
['DF'] = 'df',
['DisplayAuthors'] = {'display-authors', 'displayauthors'},
['DisplayEditors'] = {'display-editors', 'displayeditors'},
['Docket'] = 'docket',
['DoiBroken'] = {'doi-broken', 'doi-broken-date', 'doi-inactive-date', 'doi_brokendate', 'doi_inactivedate'},
['Edition'] = {'edition', '版', '版本'},
['Editors'] = 'editors',
['Embargo'] = 'embargo',
['Entry'] = {'entry', 'article'}, -- cite encyclopedia only
['Episode'] = 'episode', -- cite serial only TODO: make available to cite episode?
['Format'] = {'format', '格式', '式'},
['ID'] = {'id', 'ID'},
['IgnoreISBN'] = {'ignore-isbn-error', 'ignoreisbnerror'},
['Inset'] = 'inset',
['Issue'] = {'issue', 'number', '期', '期號'},
['Language'] = {'language', 'in', '言'},
['LastAuthorAmp'] = {'last-author-amp', 'lastauthoramp'},
['LayDate'] = {'lay-date', 'laydate'},
['LayFormat'] = 'lay-format',
['LaySource'] = {'lay-source', 'laysource'},
['LayURL'] = {'lay-url', 'lay-summary', 'layurl', 'laysummary'},
['Map'] = 'map', -- cite map only
['MapFormat'] = 'map-format', -- cite map only
['MapURL'] = {'mapurl', 'map-url'}, -- cite map only
['MapUrlAccess'] = {'map-url-access'}, -- cite map only
['MessageID'] = 'message-id',
['Minutes'] = 'minutes',
['Mode'] = 'mode',
['NameListFormat'] = {'name-list-format','name-list-style'},
['Network'] = 'network',
['NoPP'] = {'no-pp', 'nopp'},
['NoTracking'] = {'template-doc-demo', 'template doc demo', 'no-cat', 'nocat',
'no-tracking', 'notracking'},
['Number'] = 'number', -- this case only for cite techreport
['OrigYear'] = {'orig-year', 'origyear'},
['Others'] = {'others', 'interviewer', 'interviewers'},
['Page'] = {'p', 'page'},
['Pages'] = {'pp', 'pages', '頁'},
['Periodical'] = build_periodical (),
['Place'] = {'place', 'location', '地', '出版地'},
['Program'] = 'program', -- cite interview
['PostScript'] = 'postscript',
['PublicationDate'] = {'publicationdate', 'publication-date'},
['PublicationPlace'] = {'publication-place', 'publicationplace'},
['PublisherName'] = {'publisher', 'distributor', 'institution', 'newsgroup', '出版商', '出版社'},
['Quote'] = {'quote', 'quotation', '引文'},
['Ref'] = 'ref',
['RegistrationRequired'] = 'registration',
['Scale'] = 'scale',
['ScriptChapter'] = 'script-chapter',
['ScriptTitle'] = 'script-title',
['Section'] = {'section', '段'},
['Sections'] = 'sections', -- cite map only
['Season'] = 'season',
['Series'] = {'series', 'version', '集'},
['SeriesSeparator'] = 'series-separator',
['SeriesLink'] = {'series-link', 'serieslink'},
['SeriesNumber'] = {'series-number', 'series-no', 'seriesnumber', 'seriesno'},
['Sheet'] = 'sheet', -- cite map only
['Sheets'] = 'sheets', -- cite map only
['Station'] = 'station',
['SubscriptionRequired'] = 'subscription',
['Time'] = 'time',
['TimeCaption'] = {'time-caption', 'timecaption'},
['Title'] = {'title', '題', '著作'},
['TitleLink'] = {'title-link', 'episode-link', 'titlelink', 'episodelink'},
['TitleNote'] = 'department',
['TitleType'] = {'type', 'medium', '類型'},
['TransChapter'] = {'trans-chapter', 'trans_chapter'},
['TransMap'] = 'trans-map', -- cite map only
['Transcript'] = 'transcript',
['TranscriptFormat'] = 'transcript-format',
['TranscriptURL'] = {'transcript-url', 'transcripturl'},
['TransTitle'] = {'trans-title', 'trans_title', 'title_zh', '譯題'},
['URL'] = {'url', 'URL', '址'},
['UrlAccess']={'url-access','urlaccess'},
['Vauthors'] = 'vauthors',
['Veditors'] = 'veditors',
['Via'] = 'via',
['Volume'] = {'volume', '卷'},
['Year'] = {'year', '年'},
['AuthorList-First'] = {"first#", "given#", "author-first#", "author#-first", "名#"},
['AuthorList-Last'] = {"last#", "author#", "surname#", "author-last#", "author#-last", "subject#", "姓#", "著#", "著者#"},
['AuthorList-Link'] = {"authorlink#", "author-link#", "author#-link", "subjectlink#", "author#link", "subject-link#", "subject#-link", "subject#link", "著址#", "著者址#"},
['AuthorList-Mask'] = {"author-mask#", "authormask#", "author#mask", "author#-mask"},
['ContributorList-First'] = {'contributor-first#','contributor#-first'},
['ContributorList-Last'] = {'contributor#', 'contributor-last#', 'contributor#-last'},
['ContributorList-Link'] = {'contributor-link#', 'contributor#-link'},
['ContributorList-Mask'] = {'contributor-mask#', 'contributor#-mask'},
['EditorList-First'] = {"editor-first#", "editor#-first", "editor-given#", "editor#-given"},
['EditorList-Last'] = {"editor#", "editor-last#", "editor#-last", "editor-surname#", "editor#-surname"},
['EditorList-Link'] = {"editor-link#", "editor#-link", "editorlink#", "editor#link"},
['EditorList-Mask'] = {"editor-mask#", "editor#-mask", "editormask#", "editor#mask"},
['TranslatorList-First'] = {'translator-first#','translator#-first'},
['TranslatorList-Last'] = {'translator#', 'translator-last#', 'translator#-last'},
['TranslatorList-Link'] = {'translator-link#', 'translator#-link'},
['TranslatorList-Mask'] = {'translator-mask#', 'translator#-mask'},
}
--[[--------------------------< 預 設 >--------------------------------------------------------------
參數預設值
]]
local defaults = {
['DeadURL'] = 'yes',
}
--[[--------------------------< 參 數 支 援 >-----------------------------------------------------
此表列明各引文類別所支援或必須之參數。
]]
local args_support = {
['templates_using_volume'] = {'citation', 'AV media', 'book', 'conference', 'encyclopaedia', 'interview', 'journal', 'magazine', 'map', 'news', 'report', 'techreport', 'thesis'},
['templates_using_issue'] = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news'},
['templates_not_using_page'] = {'AV media', 'episode', 'mailinglist', 'newsgroup', 'podcast', 'serial', 'sign', 'speech'},
['templates_involving_time'] = {'AV media', 'episode', 'speech', 'podcast', 'serial'},
['templates_not_using_chapter'] = {'encyclopaedia', 'web', 'news', 'journal', 'magazine', 'pressrelease','podcast', 'newsgroup', 'mailinglist', 'map', 'conference', 'episode', 'serial', 'arxiv', 'biorxiv', 'citeseerx', 'ssrn'},
['templates_not_using_chapter_format'] = {'web', 'news', 'journal', 'magazine', 'pressrelease','podcast', 'newsgroup', 'mailinglist', 'arxiv', 'biorxiv', 'citeseerx', 'ssrn'},
['templates_using_contributor'] = {'book', 'citation'}, -- |contributor= and |contribution= only supported in book cites
['templates_requiring_url'] = {'web', 'podcast', 'mailinglist'}
}
--[[--------------------------< 關 鍵 字 >--------------------------------------------------------------
此表為特定參數之許可值。
]]
local keywords = {
['yes_true_y'] = {'yes', 'true', 'y'}, -- ignore-isbn-error, last-author-amp, no-tracking, nopp, registration, subscription
['deadurl'] = {'yes', 'true', 'y', 'dead', 'no', 'live', 'unfit', 'usurped', 'deviated'},
['deadurl-live'] = {'no', 'live'},
['deadurl-unfit'] = {'unfit', 'usurped'},
['mode'] = {'cs1', 'cs2'},
['name-list-format'] = {'vanc', 'amp', '&'},
['contribution'] = {'afterword', 'foreword', 'introduction', 'preface'}, -- generic contribution titles that are rendered unquoted in the 'chapter' position
['date-format'] = {'dmy', 'dmy-all', 'mdy', 'mdy-all', 'ymd', 'ymd-all'},
['id-access'] = {'free'},
['url-access'] = {'free', 'limited', 'subscription', 'registration'},
}
--[[--------------------------< 隱 匿 字 元 >--------------------------------------
此表載不可見或非打印之字元,循名或Unicode組別索驥。
表分層級,便於遍歷。
蓋因 {{'}} 之類非誤,然隱匿字元實乃隱患,故須識別。
亦含 stripmarker 之辨。
]]
local invisible_chars = {
{'replacement', '\239\191\189', '替換字符'}, -- U+FFFD, EF BF BD
{'apostrophe', '‍\226\128\138\039\226\128\139', '撇號'}, -- apostrophe template: ‍ hair space ' zero-width space; not an error
{'apostrophe', '\226\128\138\039\226\128\139', '撇號'}, -- apostrophe template: hair space ' zero-width space; (as of 2015-12-11) not an error
{'zero width joiner', '\226\128\141', '零寬連字'}, -- U+200D, E2 80 8D
{'zero width space', '\226\128\139', '零寬空格'}, -- U+200B, E2 80 8B
{'hair space', '\226\128\138', '髮隙'}, -- U+200A, E2 80 8A
{'soft hyphen', '\194\173', '軟連字符'}, -- U+00AD, C2 AD
{'horizontal tab', '\009', '水平製表'}, -- U+0009 (HT), 09
{'line feed', '\010', '換行'}, -- U+0010 (LF), 0A
{'carriage return', '\013', '回車'}, -- U+0013 (CR), 0D
-- {'nowiki stripmarker', '\127UNIQ%-%-nowiki%-[%a%d]+%-QINU\127'}, -- nowiki stripmarker; not an error
{'stripmarker', '\127[^\127]*UNIQ%-%-(%a+)%-[%a%d]+%-QINU[^\127]*\127', 'mediawiki佔位符'},
-- stripmarker; may or may not be an error; capture returns the stripmaker type
{'delete', '\127', '刪除符'}, -- U+007F (DEL), 7F; must be done after stripmarker test
{'C0 control', '[\000-\008\011\012\014-\031]', 'C0控制符'}, -- U+0000–U+001F (NULL–US), 00–1F (except HT, LF, CR (09, 0A, 0D))
{'C1 control', '[\194\128-\194\159]', 'C1控制符'}, -- U+0080–U+009F (XXX–APC), C2 80 – C2 9F
{'Specials', '[\239\191\185-\239\191\191]', '特殊字符'}, -- U+FFF9-U+FFFF, EF BF B9 – EF BF BF
{'Private use area', '[\238\128\128-\239\163\191]', '私用區'}, -- U+E000–U+F8FF, EE 80 80 – EF A3 BF
{'Supplementary Private Use Area-A', '[\243\176\128\128-\243\191\191\189]',
'補充私用區A'}, -- U+F0000–U+FFFFD, F3 B0 80 80 – F3 BF BF BD
{'Supplementary Private Use Area-B', '[\244\128\128\128-\244\143\191\189]',
'補充私用區B'}, -- U+100000–U+10FFFD, F4 80 80 80 – F4 8F BF BD
}
--[[--------------------------< 冗 餘 文 字 樣 式 >--------------------------------------
]]
local extra_text_pattern = {
['edition'] = {
['good'] = {
},
['bad'] = {
'%f[%a][Ee]d%.?$',
'%f[%a][Ee]dition$'
}
},
['page'] = {
['good'] = {
'^P[^%.Pp]' -- ok to begin with uppercase P: P7 (pg 7 of section P) but not p123 (page 123) TODO: add Gg for PG or Pg?
},
['bad'] = {
'^[Pp]?[Pp]%.?[ %d]',
'^[Pp]ages?'
}
}
}
--[[---------------------< 佔 位 符 >----------------------------
Stripmarkers
]]
local stripmarkers = {
['any'] = '\127[^\127]*UNIQ%-%-(%a+)%-[%a%d]+%-QINU[^\127]*\127', -- capture returns name of stripmarker
['math'] = '\127[^\127]*UNIQ%-%-math%-[%a%d]+%-QINU[^\127]*\127' -- math stripmarkers used in coins_cleanup() and coins_replace_math_stripmarker()
}
local indic_script = '[\224\164\128-\224\181\191\224\163\160-\224\183\191\225\128\128-\225\130\159\234\167\160-\234\167\191\234\169\160-\234\169\191]';
--[[--------------------------< 維 護 分 類 >----------------------------------
此表列維護信息所用之分類。
]]
local maint_cats = {
['ASIN'] = '引文格式壹維護:ASIN逕用ISBN',
['date_year'] = '引文格式壹維護:日期與年',
['disp_auth_ed'] = '引文格式壹維護:顯示-作者', -- $1 is authors or editors
['embargo'] = '引文格式壹維護:PMC封鎖已逾',
['english'] = 'CS1維護:標明英文',
['etal'] = '引文格式壹維護:顯式使用等標籤',
['extra_text'] = '引文格式壹維護:文有冗餘',
['ignore_isbn_err'] = '引文格式壹維護:ISBN之誤已略',
['jfm_format'] = '引文格式壹維護:jfm格式',
['mr_format'] = '引文格式壹維護:MR格式',
['pmc_format'] = '引文格式壹維護:PMC格式',
['unknown_lang'] = '引文格式壹維護:語文未詳',
['untitled'] = '引文格式壹維護:期刊無題',
['zbl_format'] = '引文格式壹維護:zbl格式',
['registration'] = '引文內容需登簿方得閱',
['subscription'] = '引文內容需訂購方得閱'
}
--[[--------------------------< 屬 性 分 類 >------------------------------------
此表列屬性分類。
]]
local prop_cats = {
['foreign_lang_source'] = 'CS1$1來源 ($2)', -- |language= categories; $1 is language name, $2 is ISO639-1 code
['script'] = 'CS1含有外文', -- when language specified by |script-title=xx: doesn't have its own category
['script_with_name'] = 'CS1含有$1文本 ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code
}
--[[--------------------------< 標 題 類 別 >--------------------------------------------------------
CitationClass 與 TitleType 之映射(|type= 參數之預設值)
]]
local title_types = {
['AV media notes'] = '影音媒體說明',
['interview'] = '訪談',
['mailinglist'] = '郵列',
['map'] = '地圖',
['podcast'] = '播客',
['pressrelease'] = '新聞稿',
['report'] = '報告',
['speech'] = '講演',
['techreport'] = '技術報告',
['thesis'] = '學位論文'
}
--[[--------------------------< 謬 誤 之 狀 >----------------------------------------------
錯誤情狀表。
每項詳列ID、提示信息、分類,及是否隱匿。
若更動錨點(anchor),須同步修訂 Help:CS1 errors。
]]
local error_conditions = {
accessdate_missing_url = {
message = '既誌<code style="'..code_style..'">|accessdate=</code>,必書<code style="'..code_style..'">|url=</code>',
anchor = 'accessdate_missing_url',
category = '有閱期而無網址之頁',
hidden = true },
archive_missing_date = {
message = '既誌<code style="'..code_style..'">|archiveurl=</code>,必書<code style="'..code_style..'">|archivedate=</code>',
anchor = 'archive_missing_date',
category = '存檔網址有誤之頁',
hidden = false },
archive_missing_url = {
message = '既誌<code style="'..code_style..'">|archiveurl=</code>,必書<code style="'..code_style..'">|url=</code>',
anchor = 'archive_missing_url',
category = '存檔網址有誤之頁',
hidden = false },
arxiv_missing = {
message = '須書<code style="'..code_style..'">|arxiv=</code>',
anchor = 'arxiv_missing',
category = '引文格式壹有誤:arXiv', -- same as bad arxiv
hidden = false },
arxiv_params_not_supported = {
message = 'arXiv模板參數不支持',
anchor = 'arxiv_params_not_supported',
category = '引文格式壹有誤:arXiv', -- same as bad arxiv
hidden = false },
bad_arxiv = {
message = '宜正<code style="'..code_style..'">|arxiv=</code>',
anchor = 'bad_arxiv',
category = '引文格式壹有誤:arXiv',
hidden = false },
bad_asin = {
message = '宜正<code style="'..code_style..'">|asin=</code>',
anchor = 'bad_asin',
category ='引文格式壹有誤:ASIN',
hidden = false },
bad_bibcode = {
message = '宜正<code style="'..code_style..'">|bibcode=</code>',
anchor = 'bad_bibcode',
category = '引文格式壹有誤:bibcode',
hidden = false },
bad_biorxiv = {
message = '宜正<code style="'..code_style..'">|biorxiv=</code>',
anchor = 'bad_biorxiv',
category = '引文格式壹有誤:bioRxiv',
hidden = false },
bad_citeseerx = {
message = '宜正<code style="'..code_style..'">|citeseerx=</code>',
anchor = 'bad_citeseerx',
category = '引文格式壹有誤:citeseerx',
hidden = false },
bad_cnid = {
message = '宜正<code style="'..code_style..'">|cn=</code>',
anchor = 'bad_cnid',
category = '引文格式壹有誤:CN',
hidden = false },
bad_date = {
message = '宜正<code style="'..code_style..'">$1</code>日期',
anchor = 'bad_date',
category = '引文格式壹有誤:日期',
hidden = true },
bad_doi = {
message = '宜正<code style="'..code_style..'">|doi=</code>',
anchor = 'bad_doi',
category = '引文格式壹有誤:DOI',
hidden = false },
bad_hdl = {
message = '宜正<code style="'..code_style..'">|hdl=</code>',
anchor = 'bad_hdl',
category = '引文格式壹有誤:HDL',
hidden = false },
bad_isbn = {
message = '宜正<code style="'..code_style..'">|isbn=</code>',
anchor = 'bad_isbn',
category = 'ISBN有誤之頁',
hidden = false },
bad_ismn = {
message = '宜正<code style="'..code_style..'">|ismn=</code>',
anchor = 'bad_ismn',
category = '引文格式壹有誤:ISMN',
hidden = false },
bad_issn = {
message = '宜正<code style="'..code_style..'">|issn=</code>',
anchor = 'bad_issn',
category = '引文格式壹有誤:ISSN',
hidden = false },
bad_jfm = {
message = '宜正<code style="'..code_style..'">|jfm=</code>',
anchor = 'bad_jfm',
category = '引文格式壹有誤:JFM',
hidden = false },
bad_lccn = {
message = '宜正<code style="'..code_style..'">|lccn=</code>',
anchor = 'bad_lccn',
category = '引文格式壹有誤:LCCN',
hidden = false },
bad_message_id = {
message = '宜正<code style="'..code_style..'">|message-id=</code>',
anchor = 'bad_message_id',
category = '引文格式壹有誤:message-id',
hidden = false },
bad_mr = {
message = '宜正<code style="'..code_style..'">|mr=</code>',
anchor = 'bad_mr',
category = '引文格式壹有誤:MR',
hidden = false },
bad_oclc = {
message = '宜正<code style="'..code_style..'">|oclc=</code>',
anchor = 'bad_oclc',
category = '引文格式壹有誤:OCLC',
hidden = false },
bad_ol = {
message = '宜正<code style="'..code_style..'">|ol=</code>',
anchor = 'bad_ol',
category = '引文格式壹有誤:OL',
hidden = false },
bad_paramlink = { -- for |title-link=, |author/editor/translator-link=, |series-link=, |episode-link=
message = '宜正<code style="'..code_style..'">|$1=</code>',
anchor = 'bad_paramlink',
category = '引文格式壹有誤:參數鏈接',
hidden = false },
bad_pmc = {
message = '宜正<code style="'..code_style..'">|pmc=</code>',
anchor = 'bad_pmc',
category = '引文格式壹有誤:PMC',
hidden = false },
bad_pmid = {
message = '宜正<code style="'..code_style..'">|pmid=</code>',
anchor = 'bad_pmid',
category = '引文格式壹有誤:PMID',
hidden = false },
bad_s2cid = {
message = '宜正<code style="'..code_style..'">|s2cid=</code>',
anchor = 'bad_s2cid',
category = '引文格式壹有誤:S2CID',
hidden = false },
bad_ssrn = {
message = '宜正<code style="'..code_style..'">|ssrn=</code>',
anchor = 'bad_ssrn',
category = '引文格式壹有誤:SSRN',
hidden = false },
bad_url = {
message = '宜正<code style="'..code_style..'">|$1=</code>',
anchor = 'bad_url',
category = '網址格式有誤之頁',
hidden = false },
bare_url_missing_title = {
message = '<code style="'..code_style..'">|$1=</code>缺題',
anchor = 'bare_url_missing_title',
category = '孤鏈無題之頁',
hidden = false },
bad_zbl = {
message = '宜正<code style="'..code_style..'">|zbl=</code>',
anchor = 'bad_zbl',
category = '引文格式壹有誤:ZBL',
hidden = false },
bad_csbn = {
message = '宜正<code style="'..code_style..'">|csbn=</code>或<code style="'..code_style..'">|unified=</code>',
anchor = 'bad_csbn',
category = '引文格式壹有誤:CSBN',
hidden = false },
class_ignored = {
message = '<code style="'..code_style..'">|class=</code>已略',
anchor = 'class_ignored',
category = '引文格式壹有誤:class參數已略',
hidden = false },
chapter_ignored = {
message = '<code style="'..code_style..'">|$1=</code>已略',
anchor = 'chapter_ignored',
category = '引文格式壹有誤:章節參數已略',
hidden = false },
citation_missing_title = {
message = '缺題或<code style="'..code_style..'">|title=</code>為空',
anchor = 'citation_missing_title',
category = '缺題之頁',
hidden = false },
cite_web_url = {
-- this error applies to cite web and to cite podcast
message = '缺網址或<code style="'..code_style..'">|url=</code>為空',
anchor = 'cite_web_url',
category = '缺網址之頁',
hidden = true },
coauthors_missing_author = {
message = '既誌<code style="'..code_style..'">|coauthors=</code>,必書<code style="'..code_style..'">|author=</code>',
anchor = 'coauthors_missing_author',
category = '引文格式壹有誤:有合作者而無主作者',
hidden = false },
contributor_ignored = {
message = '<code style="'..code_style..'">|contributor=</code>已略</code>',
anchor = 'contributor_ignored',
category = '引文格式壹有誤:合作者',
hidden = false },
contributor_missing_required_param = {
message = '既誌<code style="'..code_style..'">|contributor=</code>,必書<code style="'..code_style..'">|$1=</code>',
anchor = 'contributor_missing_required_param',
category = '引文格式壹有誤:合作者',
hidden = false },
date_year_mismatch = {
message = '<code style="'..code_style..'">|year=</code>與<code style="'..code_style..'">|$1=</code>不合',
anchor = 'date_year_mismatch',
category = '引文格式壹有誤:日期與年不合',
hidden = false },
deprecated_params = {
message = '參數<code style="'..code_style..'">$1</code>已廢',
anchor = 'deprecated_params',
category = '含已廢參數之頁',
hidden = true },
doi_inactive_dated = {
message = '自$1年起DOI不活之頁',
anchor = 'doi_inactive_dated',
category = '自$1年起DOI不活之頁',
hidden = true},
doi_inactive = {
message = 'DOI不活之頁',
anchor = 'doi_inactive_dated',
category = 'DOI不活之頁',
hidden = true},
empty_citation = {
message = '空引用',
anchor = 'empty_citation',
category = '含空引用之頁',
hidden = false },
first_missing_last = {
message = '$1表<code style="'..code_style..'">|first$2=</code>缺<code style="'..code_style..'">|last$2=</code>',
anchor = 'first_missing_last',
category = '引文格式壹有誤:缺作者或編者',
hidden = false },
format_missing_url = {
message = '既誌<code style="'..code_style..'">|format=</code>,必書<code style="'..code_style..'">|url=</code>',
anchor = 'format_missing_url',
category = '有格式而無網址之頁',
hidden = true },
implict_etal_editor = {
message = '建議改用<code style="'..code_style..'">|displayeditors=</code>',
anchor = 'displayeditors',
category = '含舊式縮略標籤之頁',
hidden = true },
invalid_param_val = {
message = '<code style="'..code_style..'">|$1=$2</code>無效',
anchor = 'invalid_param_val',
category = '引文格式壹有誤:參數值無效',
hidden = false },
invisible_char = {
message = '參數$2值左起第$3位有$1',
anchor = 'invisible_char',
category = '引文格式壹有誤:有隱匿字元',
hidden = false },
missing_name = {
message = '$1表缺<code style="'..code_style..'">|last$2=</code>',
anchor = 'missing_name',
category = '引文格式壹有誤:缺作者或編者',
hidden = false },
param_access_requires_param = {
message = '既誌<code style="'..code_style..'">|$1-access=</code>,必書<code style="'..code_style..'">|$1=</code>',
anchor = 'param_access_requires_param',
category = '含-access參數但無主參數之頁',
hidden = true },
param_has_ext_link = {
message = '外部鏈接存於<code style="'..code_style..'">$1</code>',
anchor = 'param_has_ext_link',
category = '引文格式壹有誤:外部鏈接',
hidden = false },
parameter_discarded = {
message = '<code style="'..code_style..'">|$1=</code>已棄',
anchor = 'parameter_discarded',
category = '引文格式壹有誤:已知參數已棄',
hidden = false },
parameter_ignored = {
message = '未知參數<code style="'..code_style..'">|$1=</code>已略',
anchor = 'parameter_ignored',
category = '含未知參數之頁',
hidden = false },
parameter_ignored_suggest = {
message = '未知參數<code style="'..code_style..'">|$1=</code>已略(宜改用<code style="'..code_style..'">|$2=</code>)',
anchor = 'parameter_ignored_suggest',
category = '含未知參數之頁',
hidden = false },
periodical = {
message = '參數<code style="'..code_style..'">|$1=</code>與模板<code style="'..code_style..'">{{cite $2}}</code>不合(宜改用<code style="'..code_style..'">{{cite $3}}</code>或<code style="'..code_style..'">|$4=</code>)',
anchor = 'periodical',
category = '引文格式壹有誤:參數與模板類型不合',
hidden = false },
redundant_parameters = {
message = '$1只需其一',
anchor = 'redundant_parameters',
category = '含冗餘參數之頁',
hidden = false },
text_ignored = {
message = '文本“$1”已略',
anchor = 'text_ignored',
category = '含未命名參數之頁',
hidden = false },
trans_missing_title = {
message = '既誌<code style="'..code_style..'">|trans-title=</code>,必書<code style="'..code_style..'">|title=</code>',
anchor = 'trans_missing_title',
category = '引文格式壹有誤:翻譯標題',
hidden = false },
vancouver = {
message = '溫哥華格式有誤',
anchor = 'vancouver',
category = '引文格式壹有誤:溫哥華格式',
hidden = false },
wikilink_in_url = {
message = '網址-維基內鏈衝突',
anchor = 'wikilink_in_url',
category = '引文格式壹有誤:網址-維基內鏈衝突',
hidden = false },
}
--[[--------------------------< I D 處 理 >--------------------------------------------------------
此表列各類標識符(ID)。
]]
local id_handlers = {
['ARXIV'] = {
parameters = {'arxiv', 'ARXIV', 'eprint'},
link = 'arXiv',
label = 'arXiv',
mode = 'manual',
prefix = '//arxiv.org/abs/', -- protocol relative tested 2013-09-04
encode = false,
COinS = 'info:arxiv',
separator = ':',
access = 'free',
},
['ASIN'] = {
parameters = { 'asin', 'ASIN' },
link = '亞馬遜標準識別碼',
label = 'ASIN',
mode = 'manual',
prefix = '//www.amazon.',
COinS = nil, -- no COinS for this id (needs thinking on implementation because |asin-tld=)
separator = ' ',
encode = false;
},
['BIBCODE'] = {
parameters = {'bibcode', 'BIBCODE'},
link = 'Bibcode',
label = 'Bibcode',
mode = 'manual',
prefix = 'https://ui.adsabs.harvard.edu/abs/',
encode = false,
COinS = 'info:bibcode',
custom_access = 'bibcode-access',
separator = ':',
},
['BIORXIV'] = {
parameters = {'biorxiv'},
link = 'bioRxiv',
label = 'bioRxiv',
mode = 'manual',
prefix = '//doi.org/',
encode = true,
COinS = 'pre',
separator = ' ',
access = 'free',
},
['CITESEERX'] = {
parameters = {'citeseerx'},
link = 'CiteSeerX',
q = 'Q2715061',
label = 'CiteSeerX',
mode = 'manual',
prefix = '//citeseerx.ist.psu.edu/viewdoc/summary?doi=',
COinS = 'pre', -- use prefix value
access = 'free', -- free to read
encode = true,
separator = ' ',
},
['CNID'] = {
parameters = {'cn', 'CN'},
link = '國內統一刊號',
label = "CN",
mode = 'manual',
prefix = 'http://www.nppa.gov.cn/nppa/publishing/view.shtml?&pubCode=',
encode = true,
separator = ' ',
},
['DOI'] = {
parameters = { 'doi', 'DOI' },
link = '數位物件識別號',
q = 'Q25670',
label = 'doi',
mode = 'manual',
prefix = '//doi.org/',
COinS = 'info:doi',
custom_access = 'doi-access',
separator = ':',
encode = true,
},
['EISSN'] = {
parameters = {'eissn', 'EISSN'},
link = 'International_Standard_Serial_Number#Electronic_ISSN',
label = 'eISSN',
mode = 'manual',
prefix = '//www.worldcat.org/issn/',
COinS = 'rft.eissn',
encode = false,
separator = ' ',
},
['HDL'] = {
parameters = { 'hdl', 'HDL' },
link = 'Handle System',
q = 'Q3126718',
label = 'hdl',
mode = 'manual',
prefix = '//hdl.handle.net/',
COinS = 'info:hdl',
custom_access = 'hdl-access',
separator = ':',
encode = true,
},
['ISBN'] = {
parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'},
link = '國際標準書號',
label = 'ISBN',
mode = 'manual',
prefix = 'Special:BookSources/',
COinS = 'rft.isbn',
separator = ' ',
},
['ISMN'] = {
parameters = {'ismn', 'ISMN'},
link = 'International Standard Music Number',
label = 'ISMN',
mode = 'manual',
prefix = '', -- not currently used;
COinS = 'nil', -- nil because we can't use pre or rft or info:
separator = ' ',
},
['ISSN'] = {
parameters = {'issn', 'ISSN'},
link = '國際標準連續出版物號',
label = 'ISSN',
mode = 'manual',
prefix = '//www.worldcat.org/issn/',
COinS = 'rft.issn',
encode = false,
separator = ' ',
},
['JFM'] = {
parameters = {'jfm', 'JFM'},
link = 'Jahrbuch über die Fortschritte der Mathematik',
label = 'JFM',
mode = 'manual',
prefix = '//zbmath.org/?format=complete&q=an:',
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
['JSTOR'] = {
parameters = {'jstor', 'JSTOR'},
link = 'JSTOR',
label = 'JSTOR',
mode = 'external',
prefix = '//www.jstor.org/stable/', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
custom_access = 'jstor-access',
encode = false,
separator = ' ',
},
['LCCN'] = {
parameters = {'LCCN', 'lccn'},
link = '美國國會圖書館控制碼',
label = 'LCCN',
mode = 'manual',
prefix = 'http://lccn.loc.gov/',
COinS = 'info:lccn', -- use prefix value
encode = false,
separator = ' ',
},
['MR'] = {
parameters = {'MR', 'mr'},
link = '數學評論',
label = 'MR',
mode = 'manual',
prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
['OCLC'] = {
parameters = {'OCLC', 'oclc'},
link = 'OCLC',
label = 'OCLC',
mode = 'manual',
prefix = '//www.worldcat.org/oclc/',
COinS = 'info:oclcnum',
encode = true,
separator = ' ',
},
['OL'] = {
parameters = { 'ol', 'OL' },
link = '開放圖書館',
label = 'OL',
mode = 'manual',
prefix = '//openlibrary.org/',
COinS = nil, -- no COinS for this id (needs thinking on implementation because /authors/books/works/OL)
custom_access = 'ol-access',
separator = ' ',
endode = true,
},
['OSTI'] = {
parameters = {'OSTI', 'osti'},
link = '科學和技術信息辦公室',
label = 'OSTI',
mode = 'external',
prefix = '//www.osti.gov/energycitations/product.biblio.jsp?osti_id=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
custom_access = 'osti-access',
encode = true,
separator = ' ',
},
['PMC'] = {
parameters = {'PMC', 'pmc'},
link = '公共醫學中心',
label = 'PMC',
mode = 'manual',
prefix = '//www.ncbi.nlm.nih.gov/pmc/articles/PMC',
suffix = " ",
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
access = 'free',
},
['PMID'] = {
parameters = {'PMID', 'pmid'},
link = '公共醫學識別碼',
label = 'PMID',
mode = 'manual',
prefix = '//www.ncbi.nlm.nih.gov/pubmed/',
COinS = 'info:pmid',
encode = false,
separator = ' ',
},
['RFC'] = {
parameters = {'RFC', 'rfc'},
link = '徵求修正意見書',
label = 'RFC',
mode = 'external',
prefix = '//tools.ietf.org/html/rfc',
COinS = 'pre', -- use prefix value
encode = false,
separator = ' ',
access = 'free',
},
['S2CID'] = {
parameters = {'s2cid', 'S2CID'},
link = 'Semantic Scholar', -- l10n: Not created yet
label = 'S2CID',
mode = 'manual',
prefix = 'https://api.semanticscholar.org/CorpusID:',
COinS = 'pre', -- use prefix value
custom_access = 's2cid-access',
encode = false,
separator = ' ',
},
['SSRN'] = {
parameters = {'SSRN', 'ssrn'},
link = '社會科學研究網絡',
label = 'SSRN',
mode = 'manual',
prefix = '//ssrn.com/abstract=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
access = 'free',
},
['USENETID'] = {
parameters = {'message-id'},
link = 'Usenet',
label = 'Usenet:',
mode = 'manual',
prefix = 'news:',
encode = false,
COinS = 'pre', -- use prefix value
separator = ' ',
},
['ZBL'] = {
parameters = {'ZBL', 'zbl'},
link = 'Zentralblatt MATH',
label = 'Zbl',
mode = 'manual',
prefix = '//zbmath.org/?format=complete&q=an:',
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
-- LOCAL
['CSBN'] = {
parameters = {'unified', 'csbn', 'CSBN'},
link = '統一書號',
label = 'CSBN',
mode = 'manual',
prefix = 'http://book.douban.com/subject_search?search_text=SH',
COinS = 'rft.csbn',
encode = true,
separator = ' ',
},
-- END LOCAL
}
return {
aliases = aliases,
args_support = args_support,
defaults = defaults,
error_conditions = error_conditions,
indic_script = indic_script,
internal_errors = internal_errors,
id_handlers = id_handlers,
keywords = keywords,
invisible_chars = invisible_chars,
extra_text_pattern = extra_text_pattern,
maint_cats = maint_cats,
messages = messages,
periodical = periodical,
presentation = presentation,
prop_cats = prop_cats,
stripmarkers = stripmarkers,
title_types = title_types,
uncategorized_namespaces = uncategorized_namespaces,
uncategorized_subpages = uncategorized_subpages,
}
14z72mnc8yndmm6qqtf7s97pqud2con
模組:Citation/CS1/Whitelist
828
84687
448818
431137
2026-11-06T07:43:19Z
Dasze
55299
448818
Scribunto
text/plain
--[[--------------------------< P A R A M E T E R S N O T S U P P O R T E D >------------------------------
This is a list of parameters that once were but now are no longer supported:
['albumlink'] = nil, -- unique alias of titlelink used by old cite AV media notes
['albumtype'] = nil, -- controled inappropriate functionality in the old cite AV media notes
['artist'] = nil, -- unique alias of others used by old cite AV media notes
['Author'] = nil, -- non-standard capitalization
['authorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['author-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['author-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
['author-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['began'] = nil, -- module handles date ranges; cite episode and cite series
['chapterlink'] = nil, -- if ever necessary to link to a chapter article, |chapter= can be wikilinked
['chapter-link'] = nil, --
['cointerviewers'] = nil, -- unique alias of others used by old cite interview
['day'] = nil, -- deprecated in {{citation/core}} and somehow undeprecated in Module:Citation/CS1 and now finally removed
['director'] = nil, -- unique alias of author used by old cite DVD-notes
['DoiBroken'] = nil, -- not used, non-standard captialization
['Editor'] = nil, -- non-standard capitalization
['editorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['EditorSurname'] = nil, -- non-standard capitalization
['editor-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['EditorGiven'] = nil, -- non-standard capitalization
['editor-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
['editor-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['Embargo'] = nil, -- not used, non-standard capitalization
['ended'] = nil, -- module handles date ranges; cite episode and cite series
['month'] = nil, -- functionality supported by |date=
['name-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['notestitle'] = nil, -- unique alias of chapter used by old cite AV media notes
['PPrefix'] = nil, -- non-standard capitalization
['PPPrefix'] = nil, -- not used, non-standard capitalization
['pp-prefix'] = nil, -- not used, not documented
['p-prefix'] = nil, -- not used, not documented
['publisherid'] = nil, -- unique alias of id used by old cite AV media notes and old cite DVD-notes
['Ref'] = nil, -- non-statndard capitalization
['separator'] = nil, -- this functionality now provided by |mode=
['titleyear'] = nil, -- unique alias of origyear used by old cite DVD-notes
['Author#'] = nil, -- non-standard capitalization
['authors#'] = nil, -- no need for multiple lists of author names
['Editor#'] = nil, -- non-standard capitalization
['editors#'] = nil, -- no need for multiple lists of editor names
['EditorGiven#'] = nil, -- non-standard capitalization
['EditorSurname#'] = nil, -- non-standard capitalization
]]
--[[--------------------------< S U P P O R T E D P A R A M E T E R S >--------------------------------------
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
local whitelist = {}
local basic_arguments = {
-- 中文別名(lzhwiki增補)
['引日'] = true,
['引月日'] = true,
['存日'] = true,
['存址'] = true,
['篇'] = true,
['章'] = true,
['章名'] = true,
['章題'] = true,
['協著者'] = true,
['日期'] = true,
['版'] = true,
['版本'] = true,
['格式'] = true,
['式'] = true,
['期'] = true,
['期號'] = true,
['言'] = true,
['頁'] = true,
['地'] = true,
['出版地'] = true,
['出版商'] = true,
['出版社'] = true,
['引文'] = true,
['段'] = true,
['集'] = true,
['題'] = true,
['著作'] = true,
['譯題'] = true,
['類型'] = true,
['址'] = true,
['卷'] = true,
['年'] = true,
['著者群'] = true,
['彙編'] = true,
['叢書'] = true,
['叢書題'] = true,
['系列'] = true,
['著'] = true,
['著者'] = true,
['姓'] = true,
['名'] = true,
['著址'] = true,
['著者址'] = true,
['accessdate'] = true,
['access-date'] = true,
['agency'] = true,
['airdate'] = true,
['air-date'] = true,
['archivedate'] = true,
['archive-date'] = true,
['archive-format'] = true,
['archiveurl'] = true,
['archive-url'] = true,
['article'] = true,
['arxiv'] = true,
['ARXIV'] = true,
['asin'] = true,
['ASIN'] = true,
['asin-tld'] = true,
['ASIN-TLD'] = true,
['at'] = true,
['author'] = true,
['author-first'] = true,
['author-last'] = true,
['authorlink'] = true,
['author-link'] = true,
['authormask'] = true,
['author-mask'] = true,
['authors'] = true,
['bibcode'] = true,
['BIBCODE'] = true,
['bibcode-access'] = true,
['biorxiv'] = true,
['booktitle'] = true,
['book-title'] = true,
['callsign'] = true, -- cite interview
['call-sign'] = true, -- cite interview
['cartography'] = true,
['chapter'] = true,
['chapter-format'] = true,
['chapterurl'] = true,
['chapter-url'] = true,
['chapter-url-access'] = true,
['citeseerx'] = true,
['city'] = true, -- cite interview, cite episode, cite serial
['class'] = true, -- cite arxiv and arxiv identifiers
['cn'] = true,
['CN'] = true,
['coauthor'] = false, -- deprecated
['coauthors'] = false, -- deprecated
['conference'] = true,
['conference-format'] = true,
['conferenceurl'] = true,
['conference-url'] = true,
['contribution'] = true,
['contribution-format'] = true,
['contributionurl'] = true,
['contribution-url'] = true,
['contributor'] = true,
['contributor-first'] = true,
['contributor-last'] = true,
['contributor-link'] = true,
['contributor-mask'] = true,
['credits'] = true, -- cite episode, cite serial
['date'] = true,
['deadurl'] = true,
['dead-url'] = true,
['degree'] = true,
['department'] = true,
['dictionary'] = true,
['displayauthors'] = true,
['display-authors'] = true,
['displayeditors'] = true,
['display-editors'] = true,
['docket'] = true,
['doi'] = true,
['DOI'] = true,
['doi-access'] = true,
['doi-broken'] = true,
['doi_brokendate'] = true,
['doi-broken-date'] = true,
['doi_inactivedate'] = true,
['doi-inactive-date'] = true,
['edition'] = true,
['editor'] = true,
['editor-first'] = true,
['editor-given'] = true,
['editor-last'] = true,
['editorlink'] = true,
['editor-link'] = true,
['editormask'] = true,
['editor-mask'] = true,
['editors'] = true,
['editor-surname'] = true,
['eissn'] = true,
['EISSN'] = true,
['embargo'] = true,
['encyclopaedia'] = true,
['encyclopedia'] = true,
['entry'] = true,
['episode'] = true, -- cite serial only TODO: make available to cite episode?
['episodelink'] = true, -- cite episode and cite serial
['episode-link'] = true, -- cite episode and cite serial
['eprint'] = true, -- cite arxiv and arxiv identifiers
['event'] = true,
['event-format'] = true,
['eventurl'] = true,
['event-url'] = true,
['first'] = true,
['format'] = true,
['given'] = true,
['hdl'] = true,
['HDL'] = true,
['hdl-access'] = true,
['host'] = true,
['id'] = true,
['ID'] = true,
['ignoreisbnerror'] = true,
['ignore-isbn-error'] = true,
['in'] = true,
['inset'] = true,
['institution'] = true,
['interviewer'] = true, --cite interview
['interviewers'] = true, --cite interview
['isbn'] = true,
['ISBN'] = true,
['isbn13'] = true,
['ISBN13'] = true,
['ismn'] = true,
['ISMN'] = true,
['issn'] = true,
['ISSN'] = true,
['issue'] = true,
['jfm'] = true,
['JFM'] = true,
['journal'] = true,
['jstor'] = true,
['JSTOR'] = true,
['jstor-access'] = true,
['language'] = true,
['last'] = true,
['lastauthoramp'] = true,
['last-author-amp'] = true,
['laydate'] = true,
['lay-date'] = true,
['laysource'] = true,
['lay-source'] = true,
['laysummary'] = true,
['lay-summary'] = true,
['lay-format'] = true,
['layurl'] = true,
['lay-url'] = true,
['lccn'] = true,
['LCCN'] = true,
['location'] = true,
['magazine'] = true,
['mailinglist'] = true, -- cite mailing list only
['mailing-list'] = true, -- cite mailing list only
['map'] = true, -- cite map only
['map-format'] = true, -- cite map only
['mapurl'] = true, -- cite map only
['map-url'] = true, -- cite map only
['map-url-access'] = true, -- cite map only
['medium'] = true,
['message-id'] = true, -- cite newsgroup
['minutes'] = true,
['mode'] = true,
['mr'] = true,
['MR'] = true,
['name-list-format'] = true,
['name-list-style'] = true,
['network'] = true,
['newsgroup'] = true,
['newspaper'] = true,
['nocat'] = true,
['no-cat'] = true,
['nopp'] = true,
['no-pp'] = true,
['notracking'] = true,
['no-tracking'] = true,
['number'] = true,
['oclc'] = true,
['OCLC'] = true,
['ol'] = true,
['OL'] = true,
['ol-access'] = true,
['origyear'] = true,
['orig-year'] = true,
['osti'] = true,
['OSTI'] = true,
['osti-access'] = true,
['others'] = true,
['p'] = true,
['page'] = true,
['pages'] = true,
['people'] = true,
['periodical'] = true,
['place'] = true,
['pmc'] = true,
['PMC'] = true,
['pmid'] = true,
['PMID'] = true,
['postscript'] = true,
['pp'] = true,
['program'] = true, -- cite interview
['publicationdate'] = true,
['publication-date'] = true,
['publicationplace'] = true,
['publication-place'] = true,
['publisher'] = true,
['quotation'] = true,
['quote'] = true,
['ref'] = true,
['registration'] = true,
['rfc'] = true,
['RFC'] = true,
['s2cid'] = true,
['s2cid-access'] = true,
['scale'] = true,
['script-chapter'] = true,
['script-title'] = true,
['season'] = true,
['section'] = true,
['section-format'] = true,
['sections'] = true, -- cite map only
['sectionurl'] = true,
['section-url'] = true,
['section-url-access'] = true,
['series'] = true,
['serieslink'] = true,
['series-link'] = true,
['seriesno'] = true,
['series-no'] = true,
['seriesnumber'] = true,
['series-number'] = true,
['series-separator'] = true,
['sheet'] = true, -- cite map only
['sheets'] = true, -- cite map only
['ssrn'] = true,
['SSRN'] = true,
['station'] = true,
['subject'] = true,
['subjectlink'] = true,
['subject-link'] = true,
['subscription'] = true,
['surname'] = true,
['template doc demo'] = true,
['template-doc-demo'] = true,
['time'] = true,
['timecaption'] = true,
['time-caption'] = true,
['title'] = true,
['titlelink'] = true,
['title-link'] = true,
['title_zh'] = true,
['trans_chapter'] = true,
['trans-chapter'] = true,
['trans-map'] = true,
['transcript'] = true,
['transcript-format'] = true,
['transcripturl'] = true,
['transcript-url'] = true,
['trans_title'] = true,
['trans-title'] = true,
['translator'] = true,
['translator-first'] = true,
['translator-last'] = true,
['translator-link'] = true,
['translator-mask'] = true,
['type'] = true,
['url'] = true,
['URL'] = true,
['urlaccess'] = true,
['url-access'] = true,
['urlstatus'] = true,
['url-status'] = true,
['vauthors'] = true,
['veditors'] = true,
['version'] = true,
['via'] = true,
['volume'] = true,
['website'] = true,
['work'] = true,
['year'] = true,
['zbl'] = true,
['ZBL'] = true,
['unified'] = true,
['csbn'] = true,
['CSBN'] = true,
}
local numbered_arguments = {
['名#'] = true,
['姓#'] = true,
['著#'] = true,
['著者#'] = true,
['著址#'] = true,
['著者址#'] = true,
['author#'] = true,
['author-first#'] = true,
['author#-first'] = true,
['author-last#'] = true,
['author#-last'] = true,
['author-link#'] = true,
['author#link'] = true,
['author#-link'] = true,
['authorlink#'] = true,
['author-mask#'] = true,
['author#mask'] = true,
['author#-mask'] = true,
['authormask#'] = true,
['contributor#'] = true,
['contributor-first#'] = true,
['contributor#-first'] = true,
['contributor-last#'] = true,
['contributor#-last'] = true,
['contributor-link#'] = true,
['contributor#-link'] = true,
['contributor-mask#'] = true,
['contributor#-mask'] = true,
['editor#'] = true,
['editor-first#'] = true,
['editor#-first'] = true,
['editor#-given'] = true,
['editor-given#'] = true,
['editor-last#'] = true,
['editor#-last'] = true,
['editor-link#'] = true,
['editor#link'] = true,
['editor#-link'] = true,
['editorlink#'] = true,
['editor-mask#'] = true,
['editor#mask'] = true,
['editor#-mask'] = true,
['editormask#'] = true,
['editor#-surname'] = true,
['editor-surname#'] = true,
['first#'] = true,
['given#'] = true,
['last#'] = true,
['subject#'] = true,
['subject-link#'] = true,
['subject#link'] = true,
['subject#-link'] = true,
['subjectlink#'] = true,
['surname#'] = true,
['translator#'] = true,
['translator-first#'] = true,
['translator#-first'] = true,
['translator-last#'] = true,
['translator#-last'] = true,
['translator-link#'] = true,
['translator#-link'] = true,
['translator-mask#'] = true,
['translator#-mask'] = true,
}
return {basic_arguments = basic_arguments, numbered_arguments = numbered_arguments};
gtfz45grih9ed9kc1w0hut32yrnna92
用戶討論:Dasze
3
88787
448763
340698
2026-11-05T12:05:36Z
Max
101544
Max遷頁[[用戶討論:だ*ぜ]]至[[用戶討論:Dasze]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
340698
wikitext
text/x-wiki
== 歡迎 ==
自永樂修典,四庫編成,古今圖冊,收攬完備。惟近世曉覺道理,百家爭鳴。西學東漸,各有始末。士紳茫茫,遠不及逮。疑古者眾,怨舊者多。於是斥逐儒術,貶抑性理。殷周之明,莫非妖言;泰西末流,敬為上賓。崇外若此,至今百年。會西國志士,立典於網絡,開共筆之先河。吾人乃竊取一處,成以文言,謀復古法,載新世之大道,以揚中華文理,興千年舊邦,故亟需善古文而博今道者。願足下能同遊,共為大典,修先世之廢道,著當今之新知。
又,古文維基大典,以其從古,多有異於外文,宜先閱[[Help:凡例|凡例]]、[[維基大典:章法|章法]],以求壹道。--[[用戶:丁子君|丁子君]] ([[用戶討論:丁子君|對話]]) 二〇一九年四月一一日 (四) 一三時四〇分 (UTC)
== 法學之文言 ==
不好意思在這裏回覆。關於逮捕、拘留等等文言如何陳述,也許可以直接請教[[用戶討論:勝爲士|勝爲士]]看看?
我剛纔想了半天也不得善法,主要是沒有喫透那批近代譯介作品。勝君真的是嚴子的博徒,他能將現代物事自然地化爲文言,而並不犧牲信息的精確([https://zh-classical.wikipedia.org/w/index.php?limit=50&title=%E7%89%B9%E6%AE%8A%3A%E5%8A%9F%E7%B8%BE&contribs=user&target=%E5%8B%9D%E7%88%B2%E5%A3%AB&namespace=&tagfilter=&newOnly=1&start=&end= 以往作品]),每每給包括我在內的不少人很大啓發。
你願意在大典貢獻所知,實在是件好事!很抱歉沒能幫到你,希望你能在他那裏得到答案。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年六月一〇日 (一) 一八時四八分 (UTC)
== 引據之策 ==
今引據之策,已待[[維基大典:會館#明引據|投匭]],萬望矜察。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年六月二三日 (日) 〇八時四〇分 (UTC)
[[模板:Cite book/doc]],type之其他參數名,書云「各式式」,是筆誤乎?—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月三日 (三) 〇九時四三分 (UTC)
dynasty參數,亦可書元號,若乾隆福州府志之乾隆乎?君所作實例似有之。又及,模板有所更改、徵詢,如非大事,可徑直電我。告諸群中,應者寥寥,頗索寞也。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月四日 (四) 〇〇時三四分 (UTC)
*{{ping|Davidzdh}}誠然所言,仍需完善。另:惟恐擾君,不敢與電,今得知曉,後定當電聊。——[[用戶:だ*ぜ|だ*ぜ]] ([[用戶討論:だ*ぜ|對話]]) 二〇一九年七月四日 (四) 〇九時四〇分 (UTC)
{{cite book|title=The universal book of mathematics: from Abracadabra to Zeno's paradoxes|last=Darling|first=David J.|year=2004|publisher=[[John Wiley & Sons]]|isbn=978-0-471-27047-8|page=102|url=http://books.google.com/books?id=nnpChqstvg0C&pg=PA102}}覽此式樣,浪線頗不彰。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月五日 (五) 〇七時二四分 (UTC)
*{{ping|Davidzdh}}如是者,西式是否應設計另一模板並使用switch替換?——[[用戶:だ*ぜ|だ*ぜ]] ([[用戶討論:だ*ぜ|對話]]) 二〇一九年七月五日 (五) 一一時〇八分 (UTC)
**予觀於蘋果平板之維基應用,則浪線完好無損。蓋視終端、瀏覽器而定也。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月五日 (五) 一三時四三分 (UTC)
***可否嘗試主動私訊於我?內容任意。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月五日 (五) 一四時四七分 (UTC)
== 撫華道 ==
有勞撰文。[[用戶:だ*ぜ/撫華道]],rp模板之頁數,或可以漢數字書之?—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月一四日 (日) 一五時一八分 (UTC)
*{{ping|Davidzdh}}善。——[[用戶:だ*ぜ|だ*ぜ]] ([[用戶討論:だ*ぜ|對話]]) 二〇一九年七月一四日 (日) 一五時五一分 (UTC)
有意提報[[維基大典:會文/己亥/名冊]]乎?—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月一八日 (四) 一四時三六分 (UTC)
*可,有勞。——[[用戶:だ*ぜ|だ*ぜ]] ([[用戶討論:だ*ぜ|對話]]) 二〇一九年七月一八日 (四) 一四時三九分 (UTC)
**{{done}}—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年七月一八日 (四) 一四時五二分 (UTC)
== 「網路俗語」名下分題之去留 ==
今從君議,[[維基大典:會館#「網路俗語」名下分題之去留|清理條目]]。—[[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇一九年一〇月一九日 (六) 一八時一一分 (UTC)
3bo5kg07xvsz732s3690hdg93cgi0p2
用戶:Dasze/common.css
2
90162
448781
448710
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/common.css]]至[[用戶:Dasze/common.css]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448710
css
text/css
body {
font-family: "BiauKaiHK", sans-serif;
}
3sjowrkmf557khkg9qvbj9te1k4h55o
用戶:Dasze/沙盒
2
90169
448783
334097
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/沙盒]]至[[用戶:Dasze/沙盒]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
334097
wikitext
text/x-wiki
{{模板:Cite book/sandbox|朝代=[[清]]|著者址=小明|著者=小明|著=小明週遊記|地=京師|出版社=維基印書館|年=1015|月=1|日=1|版本=1}}
6m6mftxiwq37bybgpcgjkdozvj7devt
用戶:Dasze
2
90173
448771
335539
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ]]至[[用戶:Dasze]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
335539
wikitext
text/x-wiki
<center>
<div id="EnWpMpBook2" style="padding-top: 0em; padding-bottom: 1.2em; background-repeat: no-repeat; background-position: 0% 20%;">
{| id="banner" width="100%" border="0" cellspacing="0" cellpadding="0" style="margin-top: 0px"
| width="100%" valign="top" style="background:#FFF; border:1px solid #abcdef"|
<div style="font-size: 75%; text-align:right">{{purge|去緩存}}</div>
{{Template:Boxintro
|content=<div clear="all" style="margin:1em" id="pretzelsmainpageproposal-head">
<span style="white-space:nowrap;"><span style="font-size: 300%;">[[維基大典:卷首|<span style="color: #000000; font-weight: bold;">典</span>]]</span> </span>
<span style="white-space:nowrap;"><span style="font-size: 300%;">[[User:だ*ぜ/獻|<span style="color: #000000; font-weight: bold;">獻</span>]]</span> </span>
<span style="white-space:nowrap;"><span style="font-size: 300%;">[[User:だ*ぜ/齋|<span style="color: #000000; font-weight: bold;">齋</span>]]</span> </span>
<span style="white-space:nowrap;"><span style="font-size: 300%;">[[User talk:だ*ぜ|<span style="color: #000000; font-weight: bold;">議</span>]]</span> </span>
<div class="intern">
夫文言維基者,至今得文[[Special:Statistics|<span style="color: green;">'''{{Num2ChineseClassical|{{NUMBEROFARTICLES:R}}}}'''</span>]]。
</div>
</div>
}}
|}
{| class="wikitable"
! colspan="2"| 汝欲?
! style="background-color:#eeeeff;" | 然則⋯
|-
| [[File:Bucket in the sand.svg|100px|link=]]
| '''於用户子頁面創建草稿'''
| style="background-color:#eeeeff;" | <InputBox>
type=create
preload=Template:Article_wizard/userpageskeleton
prefix=Special:MyPage/
default=苟箋
editintro=Wikipedia:条目创建请求/编辑提示
buttonlabel=創建用戶子頁面
bgcolor=#eeeeff
</InputBox>
|-
| [[File:Edit In Sandbox Icon - Grayscale.svg|100px|link=]]
| '''於公共草稿空間建立草稿'''
| style="background-color:#eeeeff;" | <InputBox>
type=create
preload=Template:Article_wizard/skeleton
prefix=Draft:
placeholder=書欲立之條目名稱
editintro=Wikipedia:条目创建请求/编辑提示
buttonlabel=建立一個草稿頁面
bgcolor=#eeeeff
</InputBox>
|}
</center>
jv3y9oeb51tdl9u3fqj5gr665850lyl
用戶:Dasze/獻
2
90174
448767
338033
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/獻]]至[[用戶:Dasze/獻]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
338033
wikitext
text/x-wiki
== 輯錄列載 ==
{| class="wikitable"
! 輯 !! 載 !! 案 !! 歷
|-
| 一 || 2019年4月11日 (四) 11:20 || [[模板:Infobox Language]] || {{oldid|模板:Infobox Language|329121}}
|-
| 伍佰 || 2019年7月8日 (一) 15:16 || [[維基大典:判例引註/議刪/外文]] || {{oldid|維基大典:判例引註/議刪/外|335461}}
|-
| 千 || 2019年8月11日 (日) 18:40 || [[車前草]] || {{oldid|車前草|337742}}
|}
== 策文索集 ==
=== [[門:經|經]] ===
==== [[:分類:自然科學|道]] ====
{|
|
*生 物:
| [[蟬]]
|-
|
*中 醫:
| [[癔病]]{{·}}[[邪炁]]
|-
|
*中 藥:
| [[車前草]]
|-
|
*地 理:
| [[赫爾辛基]]{{·}}[[澳大拉西亞]]{{·}}[[密克羅尼西亞]]
|}
=== [[門:史|史]] ===
{|
|
*職 業:
| [[仵作]]
|-
|
*地方誌:
| [[粵大記]]
|}
=== [[門:子|子]] ===
{|
|
*宗 教:
| [[道教]]
|}
=== [[門:集|集]] ===
==== [[:分類:語文|語文]] ====
{|
|
* 語言學:
| [[語言代碼]]{{·}}[[希臘語]]
|}
== 典務版刻 ==
=== 大典 ===
[[維基大典:判例引註]]{{按|([[維基大典:判例引註/議刪/外文|議刪/外文]]{{·}}[[維基大典:判例引註/議刪/供需|議刪/供需]]{{·}}[[維基大典:判例引註/議刪/空泛|議刪/空泛]]{{·}}[[維基大典:判例引註/議刪/外語|議刪/外語]]{{·}}[[維基大典:判例引註/議刪/中和|議刪/中和]]{{·}}[[維基大典:判例引註/會館/分類|會館/分類]])}}
=== 分類 ===
[[:分類:蟲]]
=== 模板 ===
[[模板:Infobox Language]]{{按|([[模板:Infobox Language/genetic|genetic]]{{·}}[[模板:Infobox language/vitality|vitality]]{{·}}[[模板:Infobox Language/linguistlist|linguistlist]]{{·}}[[模板:Infobox Language/vitality-short|vitality-short]])}}{{·}}[[模板:Br separated entries]]{{·}}[[模板:Separated entries]]{{·}}[[模板:PAGENAMEBASE]]{{·}}[[模板:Infobox Civil Conflict]]{{·}}[[模板:Information]]{{·}}[[模板:Description missing]]{{·}}[[模板:Image other]]{{·}}[[模板:Add-desc-I]]{{按|([[模板:Add-desc-I/doc|doc]])}}{{·}}[[模板:SUBJECTSPACE ZH]]{{·}}[[模板:Citation needed]]{{·}}[[模板:Lang-el]]{{·}}[[模板:歐羅巴文化之都]]{{·}}[[模板:Lang-sv]]{{·}}[[模板:Language with name]]{{·}}[[模板:IPA-sv]]{{·}}[[模板:Lang-fi]]{{·}}[[模板:IPA-fi]]{{·}}[[模板:IPA audio link]]{{·}}[[模板:判例引註]]{{按|([[模板:判例引註/議刪|議刪]]{{·}}[[模板:判例引註/會館|會館]])}}{{·}}''[[模板:Cite book]]''{{·}}[[模板:Error]]{{·}}''[[模板:Num2Chinese]]''
=== 模組 ===
[[模組:Separated entries]]{{·}}[[模組:Unsubst]]{{·}}[[模組:捷徑]]{{·}}[[模組:Error]]
[[Category:香港維基人]]
o3vpiaskpru97xw7ny1tv5vm6nyhn4f
用戶:Dasze/齋
2
90202
448769
353305
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/齋]]至[[用戶:Dasze/齋]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
353305
wikitext
text/x-wiki
{|style="float: right;"
|-style="vertical-align:top;"
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|身之大瀆,血之乾竭,氣之衰竭。是國運之將盡矣。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|今民為己所欲,不思國家,不思共難。有隘則避之若浼,有縊則羣慂若宴。是國喪也。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|無血則身紺;無氣則血敗;無身則氣散。此方為之度也。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|國為身,官為血,民為氣,諸如一體,則無往而不利也。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|然民主而不可謂之佳,愚民不可預春秋。然則何以為道? 余曰:社稷民群黨旨。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|擇官於民,是官為民意所趨,如是國以民營,則民尤護國。此之民主事社稷而免不端。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|觀天下之大局,民主者,皆終而復始。然則今蘇維埃非定局,不需旺武,擊鼓而善其終已矣。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|我泱泱中華,曾萬國朝拜,惟是日不再,其苦難言。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|而暴政之於民,殃民欲為絕。暴政之於國,荼譽於萬國。此皆華夏之恥也。}}
| style="padding-right:.8em; border-right:1px solid #BEBEBE" |
{{Vtext|今天下大亂,英雄不出,語文不振,民智不開。}}
|}
k6ts2p3m69nkb1v4upl0qi4v8hhqxig
用戶:Dasze/草稿
2
90301
448787
337729
2026-11-05T12:06:39Z
Max
101544
Max遷頁[[用戶:だ*ぜ/草稿]]至[[用戶:Dasze/草稿]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
337729
wikitext
text/x-wiki
{{用戶:だ*ぜ/苟箋|1597|明'''[[萬曆]]二十五年''';越南莫朝'''[[乾統(莫敬恭)|乾統]]五年''',後黎朝'''[[光興(越南)|光興]]二十年''';日本'''[[慶長]]二年'''}}
f9e3gb3q06ccfj1gmze7l343cgovt0z
用戶:Dasze/苟箋
2
90460
448779
337730
2026-11-05T12:05:39Z
Max
101544
Max遷頁[[用戶:だ*ぜ/苟箋]]至[[用戶:Dasze/苟箋]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
337730
wikitext
text/x-wiki
{| width="100%" style="font-size:small; background: none;"
| style="white-space:nowrap;" |'''[[千紀]]:'''
| align="center" | '''[[{{CalcBcDate| {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} > 0 | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} - 0.9) / 1000 - 0.5 round 0) + 1 }} | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} + 0.9) / 1000 + 0.5 round 0) - 1 }} }} | 0 | m }} }}千紀]]'''
|-
| style="white-space:nowrap;" |'''[[世紀]]:'''
| align="center" | [[{{CalcBcDate| {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} > 0 | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} - 0.9) / 100 - 0.5 round 0) + 1 }} }} | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} + 0.9) / 100 + 0.5 round 0) - 1 }} }} | -1 }} }}世紀]] | '''[[{{CalcBcDate| {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} > 0 | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} - 0.9) / 100 - 0.5 round 0) + 1 }} }} | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} + 0.9) / 100 + 0.5 round 0) - 1 }} }} | 0 }} }}世紀]]''' | [[{{CalcBcDate| {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} > 0 | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} - 0.9) / 100 - 0.5 round 0) + 1 }} }} | {{Num2ChineseClassical|{{#expr: (({{{1|{{CURRENTYEAR}}}}} + 0.9) / 100 + 0.5 round 0) - 1 }} }}| 1 }} }}世紀]]
|-
| style="white-space:nowrap;" |'''[[年代]]:'''
| align="center" | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | -40 | -30 }} | d }} }}年代]] | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | -30 | -20 }} | d }}年代]] | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | -20 | -10 }} | d }}年代]] | '''[[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | -10 | 0 }} | d }}年代]]''' | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | 0 | 10 }} | d }}年代]] | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | 10 | 20 }} | d }}年代]] | [[{{CalcBcDate| {{Num2ChineseClassical|{{#expr: {{{1|{{CURRENTYEAR}}}}} - {{{1|{{CURRENTYEAR}}}}} mod 10 }} }} | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} < 0 and {{{1|{{CURRENTYEAR}}}}} > -10 | 20 | 30 }} | d }}年代]]
|-
| style="white-space:nowrap;" |'''[[年|年份]]:'''
| align="center" | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | -5 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | -4 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | -3 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | -2 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | -1 }}年]] | '''{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | 0 }}年''' | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | +1 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | +2 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | +3 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | +4 }}年]] | [[{{CalcBcDate| {{{1|{{CURRENTYEAR}}}}} | +5 }}年]]
|-
| style="white-space:nowrap;" |'''[[紀年]]:'''
| align="center" | {{#ifexpr: {{{1|{{CURRENTYEAR}}}}} > 84 | '''[[{{YearInSexagenaryCycle|{{{1|{{CURRENTYEAR}}}}}|2}}]]年'''('''[[生肖|{{YearInSexagenaryCycle|{{{1|{{CURRENTYEAR}}}}}|1}}年]]'''){{#if: {{{2|}}} |;|}}|}}{{{2|}}}
|}<noinclude>{{Documentation}}</noinclude>
oimkmg8fldf561op5dixoa3c9qoir6p
用戶:Dasze/撫華道
2
90507
448773
335922
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/撫華道]]至[[用戶:Dasze/撫華道]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
335922
wikitext
text/x-wiki
#重新導向 [[撫華道]]
6u2y5en6r81816x3q1miif0flu7urer
用戶:Dasze/司法覆核
2
90689
448775
338176
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/司法覆核]]至[[用戶:Dasze/司法覆核]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
338176
wikitext
text/x-wiki
== 各國之司法覆核 ==
各國之司法覆核大況,可概為下表格<ref>{{Cite book|title=Constitutions of the World.|url=http://worldcat.org/oclc/872652512|publisher=Routledge|date=2014|isbn=1306483573|oclc=872652512|last=Maddex|first=Robert L.}}</ref><ref>{{Cite web|title=A Tabular Presentation of Constitutional/Judicial Review Around the World|work=Tables & Map|agents=concourts.net|url=http://wp.concourts.net/tables-map/|accessdate=2019-07-28|language=en-US}}</ref>:
{| class="wikitable sortable"
! rowspan="2" |國
! colspan="2" |'''憲法法院'''
! colspan="3" |'''高等灋院'''
! colspan="2" |'''憲法大會'''
! rowspan="2" |{{verth|'''他類者'''}}
! rowspan="2" |{{verth|'''覆核不存者'''}}
|-
!{{verth|'''歐陸式'''|stp=1}}
!{{verth|'''混式'''|stp=1}}
!{{verth|'''歐陸式'''|stp=1}}
!{{verth|'''美利堅式'''|stp=1}}
!{{verth|'''混合式'''|stp=1}}
!{{verth|'''法蘭西式'''|stp=1}}
!{{verth|'''歐陸式'''|stp=1}}
|-
| id="A" |{{Flag|Afghanistan}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Albania}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Algeria}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Andorra}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Angola}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Antigua and Barbuda}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Argentina}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Armenia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Australia}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Austria}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Azerbaijan}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- B -->
| id="B" |{{Flag|Bahamas}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Bahrain}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Bangladesh}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Barbados}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Belarus}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Belgium}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Belize}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Benin}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Bhutan}}
|
|
|
|
|
|
|
|
|
|-
|{{Flag|Bolivia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Bosnia and Herzegovina}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Botswana}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Brazil}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Brunei}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Bulgaria}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Burkina Faso}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Burundi}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- C -->
| id="C" |{{Flag|Cambodia}}
|
|
|
|
|
|
|{{usually|歐式憲會制}}
|
|
|-
|{{Flag|Cameroon}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Canada}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Cape Verde}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Central African Republic}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Chad}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Chile}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
| id="T" |{{Flag|Republic of China}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|People's Republic of China}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Colombia}}
|
|{{won|混式憲院制|color=pink}}
|
|
|
|
|
|
|
|-
|{{Flag|Comoros}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Democratic Republic of the Congo}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Republic of the Congo}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Costa Rica}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Croatia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Cuba}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Cyprus}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Czech Republic}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- D -->
| id="D" |{{Flag|Denmark}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Djibouti}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Dominica}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Dominican Republic}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
<!-- E -->
| id="E" |{{Flag|East Timor}}
|
|
|
|
|
|
|
|
|
|-
|{{Flag|Ecuador}}
|
|{{won|混式憲院制|color=pink}}
|
|
|
|
|
|
|
|-
|{{Flag|Egypt}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|El Salvador}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Equatorial Guinea}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Eritrea}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Estonia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Ethiopia}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
<!-- F -->
| id="F" |{{Flag|Fiji}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Finland}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|France}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
<!-- G -->
| id="G" |{{Flag|Gabon}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Gambia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Georgia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Germany}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Ghana}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Greece}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Grenada}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Guatemala}}
|
|{{won|混式憲院制|color=pink}}
|
|
|
|
|
|
|
|-
|{{Flag|Guinea}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Guinea-Bissau}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Guyana}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
<!-- H -->
| id="H" |{{Flag|Haiti}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Honduras}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Hong Kong}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Hungary}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- I -->
| id="I" |{{Flag|Iceland}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|India}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Indonesia}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Iran}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Iraq}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Ireland}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Israel}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Italy}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Ivory Coast}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
<!-- J -->
| id="J" |{{Flag|Jamaica}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Japan}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Jordan}}
|
|
|
|
|
|
|
|
|
|-
<!-- K -->
| id="K" |{{Flag|Kazakhstan}}
|
|
|
|
|
|
|{{usually|歐式憲會制}}
|
|
|-
|{{Flag|Kenya}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Kiribati}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Kosovo}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Kuwait}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Kyrgyzstan}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- L -->
| id="L" |{{Flag|Laos}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Latvia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Lebanon}}
|
|
|
|
|
|
|{{usually|歐式憲會制}}
|
|
|-
|{{Flag|Lesotho}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Liberia}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Libya}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Liechtenstein}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Lithuania}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Luxembourg}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- M -->
|{{Flag|Macedonia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Madagascar}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Malaysia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Malawi}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Maldives}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Mali}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Malta}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Marshall Islands}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Mauritania}}
|
|
|
|
|
|
|{{usually|歐式憲會制}}
|
|
|-
|{{Flag|Mauritius}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Mexico}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Micronesia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Moldova}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Monaco}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Mongolia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Montenegro}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Morocco}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Mozambique}}
|
|
|
|
|
|{{unofficial|法式憲會制}}
|
|
|
|-
|{{Flag|Myanmar}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
<!-- N -->
| id="N" |{{Flag|Namibia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Nepal}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Netherlands}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|New Zealand}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Nicaragua}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Niger}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Nigeria}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|North Korea}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Norway}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
<!-- O -->
| id="O" |{{Flag|Oman}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
<!-- P -->
| id="P" |{{Flag|Pakistan}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Palau}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Panama}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Papua New Guinea}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Paraguay}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Peru}}
|
|{{won|混式憲院制|color=pink}}
|
|
|
|
|
|
|
|-
|{{Flag|Philippines}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Poland}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Portugal}}
|
|{{won|混式憲院制|color=pink}}
|
|
|
|
|
|
|
|-
<!-- Q -->
| id="Q" |{{Flag|Qatar}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
<!-- R -->
| id="R" |{{Flag|Romania}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Russia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Rwanda}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- S -->
| id="S" |{{Flag|Saint Kitts and Nevis}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Saint Lucia}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Saint Vincent and the Grenadines}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Samoa}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|San Marino}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|São Tomé and Príncipe}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|Saudi Arabia}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Senegal}}
|
|
|
|
|
|
|{{usually|歐式憲會制}}
|
|
|-
|{{Flag|Serbia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Seychelles}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Sierra Leone}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Singapore}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Slovakia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Slovenia}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Solomon Islands}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Somalia}}
|
|
|
|
|
|
|
|
|
|-
|{{Flag|South Africa}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|South Korea}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|South Sudan}}
|
|
|
|
|
|
|
|
|
|-
|{{Flag|Spain}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Sri Lanka}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Sudan}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Suriname}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Swaziland}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Sweden}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Switzerland}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Syria}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- T -->
|{{Flag|Tajikistan}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Tanzania}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Thailand}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Togo}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Tonga}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Trinidad and Tobago}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Tunisia}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Turkey}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|Turkmenistan}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Tuvalu}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
<!-- U -->
| id="U" |{{Flag|Uganda}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Ukraine}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
|{{Flag|United Arab Emirates}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|United Kingdom}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|{{Flag|United States}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Uruguay}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Uzbekistan}}
|{{won|歐式憲院制|color=blue|text=white}}
|
|
|
|
|
|
|
|
|-
<!-- V -->
| id="V" |{{Flag|Vanuatu}}
|
|
|
|{{no|美式高院制}}
|
|
|
|
|
|-
|{{Flag|Vatican City}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
|{{Flag|Venezuela}}
|
|
|
|
|{{TBA|混式高院制}}
|
|
|
|
|-
|{{Flag|Vietnam}}
|
|
|
|
|
|
|
|
|{{won|無存|color=grey}}
|-
<!-- Y -->
| id="Y" |{{Flag|Yemen}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
<!-- Z -->
| id="Z" |{{Flag|Zambia}}
|
|
|{{free|歐式高院制}}
|
|
|
|
|
|
|-
|{{Flag|Zimbabwe}}
|
|
|
|
|
|
|
|{{maybe|他類}}
|
|-
|}
== 攷 ==
{{Reflist}}
hdi2qrq20awcqyrmonuei8wgm1xbkep
用戶:Dasze/EditCounterOptIn.js
2
90733
448761
336846
2026-11-05T12:05:36Z
Max
101544
Max遷頁[[用戶:だ*ぜ/EditCounterOptIn.js]]至[[用戶:Dasze/EditCounterOptIn.js]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
336846
javascript
text/javascript
a href='https://zh-classical.wikipedia.org/wiki/User:%E3%81%A0%EF%BC%8A%E3%81%9C/EditCounterOptIn.js' target='_blank'>User:だ*ぜ/EditCounterOptIn.js</a
30xtvl1j8k1h34ihnn28n6w8386gxhb
用戶:Dasze/樓蘭國
2
91007
448764
337769
2026-11-05T12:05:36Z
Max
101544
Max遷頁[[用戶:だ*ぜ/樓蘭國]]至[[用戶:Dasze/樓蘭國]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
337769
wikitext
text/x-wiki
{{Otheruses|樓蘭故城|subject=古國|other=樓蘭故城遺址}}
{{otheruses|樓蘭}}
{{Infobox ancient site|name=樓蘭國{{按|鄯善國}}|native_name={{lang|en|Loulan}}|alternate_name=|image=LoulanCarvedWoodenBeam.JPG|imagealttext=|caption={{pn|樓蘭}}木樑雕刻,成於3至4世紀之間,花紋帶有希臘、敘利亞、波斯等西方文化之風,現存[[大英博物館]]|map=|map_caption={{pn|樓蘭故城}},址於{{pn|新疆}}|map_type=China Xinjiang|map_alt=|latitude=40.527633|longitude=89.840644|map_size=|location={{CHN}}|region=[[新疆]]|coordinates={{coord|40|31|39.48|N|89|50|26.32|E|display=inline}}}}
'''{{pn|樓蘭}}''',[[西域]]古國也。遺址在今{{Pn|中國|[[新疆維吾爾自治區|新疆]]|[[羅布泊]]}}西北岸。[[西漢]][[漢昭帝|昭帝]]前之{{pn|樓蘭}}既指'''{{pn|樓蘭國}}''',而西漢昭帝後之{{pn|樓蘭}}則指之是'''{{pn|[[樓蘭故城|樓蘭城]]}}'''{{按|今亦稱{{pn|[[樓蘭故城]]}}}}''','''而'''{{pn|樓蘭城}}'''棄於[[前涼]]末。[[元鳳]]四年,'''{{pn|樓蘭國}}'''之王[[尉屠耆]]更名'''{{pn|鄯善國}}'''。一千九百年,[[瑞典]]探險家[[斯文·赫定]],現樓蘭故城遺跡。
== 前略 ==
公元前三世紀,時{{pn|樓蘭}}受治於[[月氏]]。[[前元]]三至四年,{{pn|[[匈奴]]}}敗月氏,轄{{pn|樓蘭}}。[[元鳳]]四年,{{pn|樓蘭國}}王尉屠耆更名'''{{pn|鄯善國}}''',並遷都[[伊循城]],向漢朝稱臣,原都城{{pn|樓蘭}}古城則由漢朝派兵屯田。西南通{{pn|[[且末國|且末]]}}、{{pn|[[精絕]]}}、{{pn|[[拘彌]]}}、{{pn|[[于闐]]}},北通{{pn|[[車師]]}},西北通{{pn|[[焉耆]]}},東當{{pn|白龍堆}},通{{pn|[[敦煌市|敦煌]]}},扼[[絲綢之路]]之要衝。
由於{{pn|[[孔雀河]]}}之改道,{{pn|[[羅布泊]]}}竭,生存環境日益惡劣。公元四百二十二年以後,{{pn|樓蘭城}}民眾迫於嚴重干旱,遺棄{{pn|樓蘭城}},逐漸南移,{{pn|鄯善國}}{{按|{{pn|樓蘭國}}}}先後併吞了{{pn|[[若羌國|若羌]]}}、{{pn|[[小宛]]}}、{{pn|[[精絕]]}}、{{pn|[[且末]]}}等國,時為西域七強。公元四百四十八年{{pn|鄯善}}歸屬{{pn|[[北魏]]}},後實行[[郡縣制]]治理。公元四百九十二年,為{{pn|[[敕勒|高車]]}}所滅。
據《[[史記]]》記載,公元前二世紀前,{{pn|樓蘭}}即聞名天下,謂之「城廓之國」。東通{{pn|[[敦煌]]}},西北接{{pn|[[焉耆]]}}、{{pn|[[尉犁]]}},西南至{{pn|[[若羌]]}}、{{pn|[[且末]]}}。古「[[絲綢之路]]」之南、北兩道從{{pn|樓蘭}}分道,今惟存遺跡,地處今{{pn|[[新疆]]|[[巴音郭楞蒙古自治州]]|[[若羌縣]]}}北境,{{pn|[[羅布泊]]}}西北角、{{pn|[[孔雀河]]}}道南岸十四[[里]]。
== 史 ==
=== 西漢 ===
{{pn|樓蘭}}一名,至早出於《[[史記]]·匈奴列傳》:「定{{pn|樓蘭}}、{{pn|[[烏孫]]}}、{{pn|[[呼揭]]}}及其旁二十六國,皆以為{{pn|匈奴}}。」{{pn|[[冒頓單于]]}}書信至{{pn|[[漢文帝]]}},誇其武功,謂時{{pn|樓蘭}}為{{pn|匈奴}}所有。時{{pn|漢}}尚不知{{pn|樓蘭}}何處,至{{pn|[[張騫]]}}[[出使西域]],方為{{pn|[[司馬遷]]}}與{{pn|[[班固]]}}錄於史書。
[[漢武帝]]初通[[西域]],使者往來,皆過{{pn|樓蘭}}。{{pn|樓蘭}}屢次充{{pn|匈奴}}耳目,攻劫漢使。
[[漢武帝|武帝]][[元封 (西漢)|元封]]三年,{{pn|漢}}派兵討{{pn|樓蘭}},俘其王。{{pn|樓蘭}}即降於{{pn|漢}},又遭[[{{pn|匈奴}}]]攻擊,是而分遣侍子,兩面稱臣。後{{pn|匈奴}}侍子[[安歸]]立為樓蘭王,遂親{{pn|匈奴}},為漢之心腹大患。
[[漢昭帝|昭帝]][[元鳳]]四年,{{pn|漢}}遣[[傅介子]]到{{pn|樓蘭}},刺殺[[安歸]],立[[尉屠耆]]為王,遷都{{pn|[[羅布泊]]}}西岸至南岸之[[扦泥城]]{{按|漢時作[[伊循城]]}},另置伊循都尉鎮撫,又改其國名為'''{{pn|鄯善}}'''。
漢朝於{{pn|樓蘭}}故地設[[都護府]]、置軍侯,開井渠,屯田積穀。{{pn|羅布泊}}至{{Pn|渠犁}}[[亭燧]]相望,遂為軍事交通要地。時樓蘭人謂{{pn|羅布泊}}為「樓」{{按|又作「牢」}}蘭海,漢人則稱之{{pn|泑澤}}、{{pn|鹽澤}}或{{pn|蒲昌海}}。[[許慎]]《[[說文解字]]》云:「{{pn|鄯善}},西胡國也,從邑善,善亦聲。」[[段玉裁]]註曰:「{{pn|鄯}}是漢代初制。」
== 攷 ==
{{Reflist}}{{Reflist}}
ibk4twjhtt7ahvgieyx9xy3vt3b4wlh
用戶:Dasze/印尼鷹航
2
91162
448777
338175
2026-11-05T12:05:38Z
Max
101544
Max遷頁[[用戶:だ*ぜ/印尼鷹航]]至[[用戶:Dasze/印尼鷹航]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
338175
wikitext
text/x-wiki
{{Infobox airline|airline=Garuda Indonesia|image=|logo=Garuda Indonesia Logo.svg|logo_size=|IATA=GA|ICAO=GIA|callsign=INDONESIA|aoc=|hubs=* {{Nowrap|[[Soekarno–Hatta International Airport]]}}
* {{Nowrap|[[Ngurah Rai International Airport]]}}
* {{Nowrap|[[Sultan Hasanuddin International Airport]]}}
* {{Nowrap|[[Kualanamu International Airport]]}}|secondary_hubs=* {{Nowrap|[[Juanda International Airport]]}}
* {{Nowrap|[[Sultan Aji Muhammad Sulaiman Airport]]}}|focus_cities=* {{Nowrap|[[Adisucipto International Airport]]}}
* {{Nowrap|[[Sam Ratulangi International Airport]]}}
* {{Nowrap|[[Sultan Mahmud Badaruddin II International Airport]]}}|frequent_flyer=GarudaMiles|alliance=[[SkyTeam]]|fleet_size=142|destinations=96|company_slogan=''The Airline of Indonesia''|parent=[[Ministry of State Owned Enterprises (Indonesia)|Indonesian Ministry of State Owned Enterprises]] (60.51%)<ref>[https://www.garuda-indonesia.com/files/pdf/investor-relations/company-presentation/160414-public-expose-presentation.pdf Garuda Indonesia]. garuda-indonesia.com (2016)</ref>|num_employees=20,000 (March 2016)|founded={{start date and age|1947|8|1|df=yes}} (as [[KLM Interinsulair Bedrijf]])|commenced=* {{start date|1949|1|26|df=yes}} (as [[Indonesian Airways]])
* {{start date|1949|1|26|df=yes}} (as [[Garuda Indonesian Airways]])|headquarters=Garuda City Center Building Complex<br>M1 Street, [[Soekarno–Hatta International Airport]], [[Tangerang]], [[Banten]], [[Indonesia]]<ref>{{cite web|url=https://www.garuda-indonesia.com/id/en/contact/index.page? |title=Contact Us |publisher=Garuda Indonesia |accessdate=13 October 2016}}</ref>|key_people=* Agus Santoso (Chief Commissioner)
* I Gusti Ngurah Askhara Danadiputra (President Director and CEO)|revenue={{profit}} [[United States Dollar|US$]]3.86 billion ([[Indonesian Rupiah|Rp]]53.08 trillion) <small>(2016)</small>|net_income={{loss}} US$9.36 million (Rp128.7 billion) <small>(2016)</small>|assets={{profit}} US$3.74 billion (Rp51.4 trillion) <small>(2016)</small>|equity={{profit}} US$1.009 billion (Rp13.8 trillion) <small>(2016)</small>|subsidiaries=*[[Citilink]]
*[[GMF AeroAsia]]
*[[Sriwijaya Air]]
*[[Nam Air]]
*Abacus Distribution Systems Indonesia
*Aero Systems Indonesia
*Aerowisata|website=[http://www.garuda-indonesia.com/ garuda-indonesia.com]}}
'''PT Garuda Indonesia (Persero) Tbk''' (doing business as '''Garuda Indonesia''') ({{idx|GIAA}}) is the [[Flag carrier|national airline]] of [[Indonesia]]. The airline is headquartered at [[Soekarno–Hatta International Airport]] in [[Tangerang]], near [[Jakarta]]. In 2014, it was announced that the airline would be rated as a 5-star airline by the international airline review firm [[Skytrax]].<ref name="Skytrax 5-Star" /> The air carrier was previously known as '''Garuda Indonesian Airways'''.
Founded in 1947 as '''KLM Interinsulair Bedrijf''', the airline is now a major airline and the 20th member of the global airline alliance [[SkyTeam]]. It is the second largest airline of [[Indonesia]] after [[Lion Air]] and it operates scheduled flights to a number of destinations in Southeast Asia, East Asia, South Asia, the Middle East, Australia and Europe from its main hub in Jakarta, [[Soekarno–Hatta International Airport]], as well as services to Australia and Asia from [[Ngurah Rai International Airport]] ([[Bali]]) and a large number of domestic flights from both [[Sultan Hasanuddin International Airport]] ([[Makassar]]) and [[Kualanamu International Airport]] ([[Medan]]).<ref name="CP">{{cite web|title=Garuda Indonesia Corporate Profile|publisher=Garuda Indonesia|url=http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/corporate-profile/index.page?|accessdate=1 June 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130622011424/http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/corporate-profile/index.page|archivedate=22 June 2013|df=dmy-all}}</ref>
At its peak in the late 1980s up to the mid-1990s, Garuda operated an extensive network of flights all over the world, with regularly scheduled services to [[Los Angeles]], [[Paris]], [[Rome]], [[Fukuoka]], [[Adelaide]], [[Johannesburg]], [[Cairo]] and other cities in Europe, Australia and Asia.<ref name="airlineroute.net">{{cite web|url=http://airlineroute.net/2009/03/09/ga-w95/|title=1995/96: Garuda Indonesia International Network|work=airlineroute.net}}</ref> In the late 1990s and early 2000s, a series of financial and operational difficulties hit the airline hard, which included the in-flight murder of a [[human rights]] activist,<ref name="autogenerated2">{{cite journal|last=Spaeth|first=Anthony|title=Death in Flight 974: Who was responsible for the poisoning of one of Indonesia's bravest human rights advocates?|journal=Time|date=6 December 2004|page=28}}</ref> causing it to drastically cut back services. In 2009, the airline undertook a five-year modernization plan known as the ''Quantum Leap'', which overhauled the airline's brand, livery, logo and uniforms, as well as newer, more modern aircraft and facilities and a renewed focus on international markets, and earning the airline awards such as Most Improved Airline, 5-Star Airline, and World's Best Cabin Crew.<ref>{{cite web|url=http://www.worldairlineawards.com/Awards/worlds_best_cabin_staff.html|title=World's Best Airline Cabin Crew 2018|accessdate=2015-07-19|deadurl=no|archiveurl=https://web.archive.org/web/20160430160412/http://www.worldairlineawards.com/Awards/worlds_best_cabin_staff.html|archivedate=30 April 2016|df=dmy}}</ref>
The airline also operated a budget subsidiary [[Citilink]], which provided low-cost flights to multiple Indonesian destinations and was [[Corporate spin-off|spun-off]] in 2012.<ref>{{cite web|url=http://www.thejakartapost.com/news/2012/07/30/citilink-officially-separates-garuda-today.html|title=Citilink officially separates from Garuda today|work=The Jakarta Post|date=30 July 2012|accessdate=17 June 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130409235135/http://www.thejakartapost.com/news/2012/07/30/citilink-officially-separates-garuda-today.html|archivedate=9 April 2013|df=dmy-all}}</ref> In November 2018, the airline through its subsidiary [[Citilink]] took over operations as well as financial management of [[Sriwijaya Air]] by a cooperation agreement (KSO).<ref>{{cite news|title=Garuda Indonesia Group Ambil Alih Operasional Sriwijaya Air Group|url=https://ekonomi.kompas.com/read/2018/11/14/163415126/garuda-indonesia-group-ambil-alih-operasional-sriwijaya-air-group|accessdate=14 November 2018|work=KOMPAS|date=14 November 2018|language=id}}</ref><ref>{{cite news|url=https://en.tempo.co/read/news/2018/11/14/056923453/Garuda-Indonesia-Group-Takes-Over-Sriwijaya-Air-Group|title=Garuda Indonesia Group Takes Over Sriwijaya Air Group|newspaper=Tempo|accessdate=28 December 2018}}</ref>
== 史 ==
=== 始(一九四九年至六十年代) ===
[[檔案:Seulawah_Garuda_Indonesia_1.JPG|左|縮圖|[[Douglas DC-3]] ''Seulawah'', the first Garuda Indonesia aircraft on display in [[Taman Mini Indonesia Indah]], [[Jakarta]]. It is a contribution from the [[Acehnese people]].]]
The earliest predecessor to Garuda Indonesia was [[KNILM]], Royal Dutch Indies Airways, founded in 1928 during the [[Dutch East Indies|Dutch colonial period]]; despite the similar name, it was not a subsidiary of the main Dutch carrier [[KLM]].<ref name="Casius">{{cite book|last1=Casius|first1=Gerard|last2=Postma|first2=Thijs|title=40 jaar luchtvaart in Indië|language=Dutch|year=1986|publisher=Alkmaar|isbn=978-9060139448}}</ref> KNILM was dissolved in 1947, and its assets were transferred to a new KLM subsidiary, [[KLM Interinsulair Bedrijf]] (KLM Interinsular Service), which was nationalized in December 1949.<ref name="Casius" />
In its current institutional form, Garuda Indonesia had its beginnings in the [[Indonesian National Revolution|Indonesian war of independence]] against the Dutch in the late 1940s, when Garuda flew special transports with a [[Douglas DC-3]]. The first aircraft was a DC-3 known as ''Seulawah'' (Acehnese: "Gold Mountain", or from Arabic Shalawah, means praise/worship) and was purchased for a sum of 120,000 [[Malayan dollar|Malayan dollars]], which was provided by the [[Acehnese people|people of Aceh]] (notably local merchants).<ref>[http://tempatwisataindonesia.com/history-tours-in-aceh/monument-ri-seulawah.html Monument Ri Seulawah] {{webarchive|url=https://web.archive.org/web/20140309095828/http://tempatwisataindonesia.com/history-tours-in-aceh/monument-ri-seulawah.html|date=9 March 2014}}</ref> The first commercial flight from [[Calcutta]] to [[Rangoon]] was made on January 26, 1949, using a DC-3 Dakota aircraft with the tail number of “RI 001” and the name “Indonesian Airways”.The 26 January 1949 is generally recognized as the airline's founding date.<ref name="History">{{cite web|title=About Garuda Indonesia|publisher=Garuda Indonesia|url=https://www.garuda-indonesia.com/id/en/corporate-partners/company-profile/about/index.page?|accessdate=26 October 2015}}</ref>
[[檔案:Douglas_DC-8-55,_Garuda_Indonesia_JP6839308.jpg|縮圖|A Garuda Indonesia [[Douglas DC-8]] at [[Kai Tak Airport]] in 1967.]]
The name ''[[Garuda]]'' - in [[Hindu]] tradition, it is the name of Lord [[Vishnu]]'s mount (''[[vahana]]'') - was introduced in 1949. During the [[Dutch–Indonesian Round Table Conference]] at The Hague, from 23 August to 2 November 1949, Indonesian President [[Sukarno]] cited a Dutch poem written by a renowned Javanese scholar and poet Raden Mas [[Noto Soeroto]]: "''Ik ben Garuda, Vishnoe's vogel, die zijn vleugels uitslaat hoog boven uw eilanden''", which means "I'm Garuda, Vishnu's Bird, that spreads its wings high above the Islands". The first flight under the name of "Garuda Indonesian Airways" was made with a second DC-3 entering service in 1949: Its first flight, under the new name, carried Sukarno from Jakarta to Yogyakarta on December 28.<ref>{{cite web|url=https://www.garuda-indonesia.com/id/en/corporate-partners/company-profile/about/index.page?|title=About|work=garuda-indonesia.com}}</ref>
Throughout the revolution, Garuda supported national interests, and often carried diplomats on its flights. The [[Politics of Myanmar|Burmese government]] helped the airline significantly during its beginnings. The country's national airline, [[Myanmar National Airlines|Union of Burma Airways]], often chartered one of the airline's DC-3s for its own flights. Accordingly, upon Garuda's formal joint incorporation with [[KLM]] on 31 March 1950, the airline presented the Burmese government with a DC-3 as a gift.
By the early and mid 1950s, the airline operated a fleet of 38 aircraft, which included 22 DC-3s, 8 [[Consolidated PBY Catalina|Catalina]] seaplanes, and 8 [[Convair CV-240 family|Convair 240s]], and in 1956, the airline operated its first flight to Mecca with Convair aircraft, carrying 40 Indonesian pilgrims.<ref name="History" />
The airline's fleet continued to grow throughout the 1960s, during which time the airline continued its expansion. It acquired three [[Lockheed L-188 Electra|Lockheed L-188 Electras]] in 1961, which supplemented its [[Convair CV-240 family|Convair CV-240]] fleet, before taking delivery of its first jet aircraft, the [[Convair 990 Coronado]], in 1963, which allowed it to launch flights to Hong Kong.
In 1965, the airline took delivery of its first [[Douglas DC-8]], and grew beyond the Asian market it was focused on, beginning scheduled flights to [[Amsterdam]] and [[Frankfurt]] via [[Colombo]], [[Mumbai|Bombay]], and [[Prague]]. [[Rome]] and [[Paris]] became the airline's third and fourth European destinations, with flights stopping in [[Mumbai|Bombay]] and [[Cairo]] to refuel. Flights to the [[China|People's Republic of China]] began that same year, with service to [[Guangzhou|Canton]] via [[Phnom Penh]], the first Indonesian airline to do so.
=== 續增(二十世紀七十年代至九十年代) ===
[[檔案:Douglas_DC-10-30_PK-GIA_Garuda_AMS_11.09.77_edited-3.jpg|左|縮圖|[[McDonnell Douglas DC-10|Douglas DC-10-30]] of Garuda Indonesia at [[Amsterdam Airport Schiphol|Amsterdam Airport]] in 1977]]
During the early 1970s, Garuda Indonesia took delivery of both the [[McDonnell Douglas DC-9]] and [[Fokker F28 Fellowship]] for its short and medium-haul operations. The airline went on to take delivery of 62 F28s, holding the title for the largest operator of the F28 in the world. In 1976, the airline took delivery of its first [[McDonnell Douglas DC-10|Douglas DC-10]], giving it the capability to carry more passengers and fly longer flights, and it replaced the DC-8 and Convair 990 fleet on flights within Asia and to Europe. The DC-10 would become an integral part of the Garuda fleet for the years to come, outlasting the newer [[McDonnell Douglas MD-11|McDonnell Douglas MD-11s]], before the type was finally retired in 2002. Afterwards, in 1980, the airline took delivery of the first [[Boeing 747-200]], complementing the DC-10 on high-capacity or long-range routes.
On 21 June 1982, Garuda became the launch customer of the [[Airbus A300]]B4-220FFCC, which was the first variant of the A300 capable of being operated with two pilots instead of three. By 1984, nine of these were in service, supplemented by 8 [[McDonnell Douglas DC-10|Douglas DC-10s]], 24 [[McDonnell Douglas DC-9|Douglas DC-9s]], 45 [[Fokker F28 Fellowship|Fokker F-28s]], and 6 [[Boeing 747|Boeing 747-200s]].<!-- The 737 was mentioned but Garuda Indonesia doesn't refer to the tpye on its website --> In 1985 under [[Reyn Altin Johannes Lumenta]], who had been CEO since 1984, Garuda made the controversial decision to hire foreign brand consultants [[Landor Associates]] to create a new logo, livery and brand for the airline, a project that was regarded as expensive and unnecessary at the time. However, this move was later on applauded as vital for the reputation and corporate identity of Garuda Indonesia as the national airline.
[[檔案:Tiket_Garuda_Indonesia_Perak_Panjaitan.jpg|縮圖|A boarding ticket issued by Garuda Indonesia.]]
Under Lumenta, Garuda also increased the number of flight frequencies and destinations, reduced ticket prices and collaborated with [[Merpati Nusantara Airlines]], introducing flexible tickets valid for both Indonesian airlines.<ref name="autogenerated1">[http://www.pdat.co.id/ "Reyn Altin Johannes Lumenta", Apa dan Siapa (What and Who), Pusat Data dan Analisa (Centre of Data and Analysis), Tempo Indonesia] {{webarchive|url=https://web.archive.org/web/20130115153622/http://www.pdat.co.id/|date=15 January 2013}}</ref><ref>"World Airline Directory." ''[[Flight International]]''. 28 April 1979. [http://www.flightglobal.com/pdfarchive/view/1979/1979%20-%201439.html?search=Garuda%20Indonesia 1377] {{webarchive|url=https://web.archive.org/web/20160104203524/http://www.flightglobal.com/pdfarchive/view/1979/1979%20-%201439.html?search=Garuda%20Indonesia|date=4 January 2016}}</ref>
In 1990, the airline took delivery of the [[McDonnell Douglas MD-11|Douglas MD-11s]],<ref name="History" /> which gradually replaced the DC-10 on flights to Europe, and also allowed the airline to launch flights to Los Angeles via [[Honolulu]].<ref name="airlineroute.net" /> During this time, the airline operated a fleet of the aforementioned MD-11s, DC-10s, 747, Airbus A300 and [[Boeing 737 Classic|Boeing 737–400]], operating it to destinations throughout Asia, Europe and North America. In 1994, the airline took delivery of its first [[Boeing 747-400]] aircraft, which would go on to become a mainstay of its fleet until 2015, operating hajj flights and high density short-haul routes, while the delivery of the first [[Airbus A330-300]] in 1996 allowed more flexibility for the airline, as it was more fuel-efficient than the three and four engined jets. That same year, the airline placed an order for six [[777-200ER|Boeing 777]] aircraft,<ref name="flightglobal.com">{{cite web|url=http://www.flightglobal.com/news/articles/garuda-787-agreement-likely-to-replace-777-deal-291928/|title=Aviation reports news and data on a single platform|work=Flightglobal.com}}</ref> due for delivery in 2000, however, a new series of challenges and difficulties was about to hit the airline.
=== 難期(一九九六年至二千有四年) ===
[[檔案:2001_-_Garuda_Indonesia,_Sepinggan,_Balikpapan,_Kalimantan.jpg|縮圖|[[McDonnell Douglas MD-11]] of Garuda at [[Sultan Aji Muhammad Sulaiman Airport|Sepinggan International Airport]] in 2001.]]
The late 1990s and early 2000s would prove to be a turbulent and difficult time for the airline; two separate accidents in [[Garuda Indonesia Flight 865|Fukuoka]] in 1996 and [[Garuda Indonesia Flight 152|Medan]] in 1997 added to the problems being caused by the [[1997 Asian financial crisis]], resulting in a drastic reduction in operations, including the termination of service to the Americas and a massive scaling back of its European operations. Largely due to historical links with the [[Netherlands]], Garuda continued to operate flights to Amsterdam, Frankfurt and London after the initial cutbacks, although these flights were also discontinued on 28 October 2004. The situation was exacerbated by the [[September 11 attacks|11 September 2001 terrorist attacks]] in the U.S., the [[2002 Bali bombings|Bali bombings]], the [[2004 Indian Ocean earthquake and tsunami]], and the [[Severe acute respiratory syndrome|SARS]] scare, all of which contributed to a downturn in air travel and Indonesian tourism. As a result, its earlier order for the Boeing 777 was deferred, and so was an order for 18 [[737-800|Boeing 737–800s]] to replace its ageing 737 Classic fleet.<ref name="flightglobal.com" /> However, by 2005, the airline had largely recovered from its economic problems, swapping its order for six Boeing 777-200ERs for 10 [[Boeing 787 Dreamliner|Boeing 787]]-8 Dreamliners in 2005,<ref name="flightglobal.com" /> but its operational problems would remain.<ref>[http://www.fundinguniverse.com/company-histories/Garuda-Indonesia-Company-History.html Garuda Indonesia – Company History] {{webarchive|url=https://web.archive.org/web/20120122110602/http://www.fundinguniverse.com/company-histories/Garuda-Indonesia-Company-History.html|date=22 January 2012}}. Fundinguniverse.com. Retrieved 25 November 2010.</ref>
=== 穆尼爾謀殺案 (二千有四至二千有六年) ===
On 7 September 2004, the situation was worsened when human rights activist [[Munir Said Thalib]], travelling to Amsterdam via Singapore on Garuda Indonesia Flight 974, was assassinated by off-duty pilot [[Pollycarpus Priyanto]], who slipped arsenic into his drink some time before the departure of the flight's second leg to Amsterdam. He was reported to have felt unwell several hours after departure from Singapore, during which time he was checked on by a doctor who happened to be on board, and moved to the business class cabin to sleep. He died approximately two hours before arrival into Amsterdam, sparking an international controversy, during which time Priyanto, along with CEO Indra Setiawan and deputy Rohainil Aini, were all convicted of his murder, although it has been alleged it was under orders from the [[Indonesian State Intelligence Agency]] (BIN).<ref>{{cite web|url=http://thejakartaglobe.beritasatu.com/archive/wikileaks-us-cables-point-to-bin-role-in-munir-murder/|title=WikiLeaks US Cables Point to BIN Role in Munir Murder|access-date=5 February 2019|archive-url=https://web.archive.org/web/20150626110140/http://thejakartaglobe.beritasatu.com/archive/wikileaks-us-cables-point-to-bin-role-in-munir-murder/|archive-date=26 June 2015|dead-url=yes|df=dmy-all}}</ref><ref name="autogenerated3">{{cite news|title=Pilot guilty of activist murder|url=http://news.bbc.co.uk/2/hi/asia-pacific/7208597.stm|accessdate=6 September 2013|publisher=BBC|date=25 January 2008}}</ref><ref name="autogenerated5">{{cite news|title=Denied letter, activists to push to reopen Munir case|url=http://www.thejakartapost.com/news/2012/01/05/denied-letter-activists-push-reopen-munir-case.html|accessdate=6 September 2013|newspaper=Jakarta Post|date=5 January 2012}}</ref> The airline was found negligent in failing to perform an emergency landing and was ordered to pay compensation to Munir's widow,<ref name="autogenerated4">{{cite news|title=Judicial Commission tells Garuda to pay|url=http://www.thejakartapost.com/news/2011/02/20/judicial-commission-tells-garuda-pay.html|accessdate=6 September 2013|newspaper=Jakarta Post|date=20 February 2011|deadurl=yes|archiveurl=https://web.archive.org/web/20131018012805/http://www.thejakartapost.com/news/2011/02/20/judicial-commission-tells-garuda-pay.html|archivedate=18 October 2013|df=dmy-all}}</ref> but failed to do so.<ref name="autogenerated6">{{cite news|title=Court summons Garuda over Munir death compensation|url=http://www.thejakartapost.com/news/2011/06/14/court-summons-garuda-over-munir-death-compensation.html|accessdate=6 September 2013|newspaper=Jakarta Post|date=14 June 2011|deadurl=yes|archiveurl=https://web.archive.org/web/20131018012944/http://www.thejakartapost.com/news/2011/06/14/court-summons-garuda-over-munir-death-compensation.html|archivedate=18 October 2013|df=dmy-all}}</ref>
=== 歐盟禁令(二千有七至二千有九年) ===
In June 2007, the EU banned Garuda Indonesia, along with all other Indonesian airlines, from flying into any European countries,<ref>{{Cite news|last=Clark|first=Nicola|title=EU set to ban flights of Indonesia carriers|work=The New York Times|date=28 June 2007|url=https://www.nytimes.com/2007/06/28/world/europe/28iht-airlines.5.6398202.html|accessdate=10 December 2010}}</ref><ref>{{Cite news|title=Indonesian carriers banned from EU|agency=United Press International|date=28 June 2007|url=http://www.upi.com/Business_News/Security-Industry/2007/06/28/Indonesian-carriers-banned-from-EU/UPI-60861183048659/|accessdate=10 December 2010}}</ref> following the [[Garuda Indonesia Flight 200|crash of flight 200]] earlier that year. With the support of the international aviation industry for all Indonesian airlines, the EU promised to review its ban and sent a team of experts, led by the [[European Commission]]'s Air Safety Administrator Federico Grandini to Indonesia to consider lifting the ban.<ref name="thejakartapost.com">{{cite web|url=http://www.thejakartapost.com/news/2007/11/06/eu-audit-indonesian-airlines-focus-safety-procedures.html|title=EU to audit Indonesian airlines with focus on safety, procedures|work=thejakartapost.com|deadurl=yes|archiveurl=https://web.archive.org/web/20090812094108/http://www.thejakartapost.com/news/2007/11/06/eu-audit-indonesian-airlines-focus-safety-procedures.html|archivedate=12 August 2009|df=dmy-all}}</ref> In August 2007, the transportation minister of Indonesia announced that the EU would lift its ban hopefully sometime in October, stating that the ban was attributed to communication breakdown between the two parties and that discussions were in progress.
In November 2007, Garuda announced its intention to fly to [[Amsterdam]] from Jakarta and Denpasar with either [[Airbus A330]] or [[Boeing 777]] aircraft if the EU lifted its ban,<ref>{{cite web|url=http://www.etravelblackboard.com/index.asp?id=71423&nav=2|title=e-Travel Blackboard|publisher=e-Travel Blackboard|accessdate=22 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20120804090016/http://www.etravelblackboard.com/index.asp?id=71423&nav=2|archivedate=4 August 2012|df=dmy-all}}</ref> however, on 28 November 2007, the EU stated that the safety reforms already undertaken were a step in the right direction for the EU to consider lifting the ban, but still did not satisfy the EU's aviation safety standards, and thus, did not lift its ban.<ref>{{cite web|url=http://www.earthtimes.org/articles/show/153408.html|title=Indonesian president delays European visit after flight ban: Asia World|publisher=Earthtimes.org|accessdate=22 January 2013}}</ref> The ban was lifted in July 2009,<ref>Sukarsono, Achmad. (15 July 2009) [https://archive.today/20120719212106/http://www.bloomberg.com/apps/news?pid=20601085&sid=abDJMvikF3Ws Garuda Indonesia May Fly to Europe After EU Lifts Ban (Update2)]. Bloomberg. Retrieved 25 November 2010.</ref> after which Garuda began evaluating service to Amsterdam and other European destinations, as well as the United States.<ref>[http://www.indonesia-ottawa.org/information/details.php?type=news_copy&id=5512 As Ban Is Lifted, Garuda Launches Expansion Plan | Embassy of Indonesia Ottawa] {{webarchive|url=https://web.archive.org/web/20101213014109/http://www.indonesia-ottawa.org/information/details.php?type=news_copy&id=5512|date=13 December 2010}}. Indonesia-ottawa.org (15 July 2009). Retrieved 25 November 2010.</ref>
=== 禁令撤後續(二千有十年至今) ===
[[檔案:Garuda_Old_and_New_Livery.jpg|左|縮圖|Comparison between Garuda's current and previous livery. Aircraft on right is in the current livery; the other two are in the airline's previous livery. (2010)]]
Following the lifting of the EU ban against Garuda Indonesia and three other Indonesian carriers, the airline announced in July 2009 an aggressive five-year expansion plan known as the ''Quantum Leap''.<ref name="eTurbo">{{Cite news|title="Quantum Leap" planned for post-EU ban Garuda|publisher=eTurbo News|date=23 July 2009|url=http://www.eturbonews.com/10556/quantum-leap-planned-post-eu-ban-garuda|accessdate=9 December 2010}}</ref><ref>{{Cite news|author=Primastuti Handayani|title=Garuda says Schipol first step to 'Quantum Leap'|work=The Jakarta Post|date=6 March 2010|url=http://www.thejakartapost.com/news/2010/06/03/garuda-says-schipol-first-step-%E2%80%98quantum-leap%E2%80%99.html|accessdate=9 December 2010|deadurl=yes|archiveurl=https://web.archive.org/web/20120502031501/http://www.thejakartapost.com/news/2010/06/03/garuda-says-schipol-first-step-%E2%80%98quantum-leap%E2%80%99.html|archivedate=2 May 2012|df=dmy-all}}</ref> The plan involved an image overhaul, including changing the airline's [[Aircraft livery|livery]], staff uniform and logo, and nearly doubling the size of its fleet from 62 to 116.<ref name="eTurbo" /> The ''Quantum Leap'' also plans to boost passenger annual numbers to 27.6 million in the same period, up from 10.1 million at the time of program launch through increasing domestic and international destinations from 41 to 62.<ref name="eTurbo" /> Route expansions included [[Amsterdam]], with a stopover in [[Dubai]], in 2010. As of 2014, Garuda flies to Amsterdam non-stop five times a week using a [[777-300ER|Boeing 777-300ER]] with continuing service to [[London Gatwick Airport|London]], with the sixth weekly service to be added by the end of 2015. Other European and American cities such as [[Frankfurt Airport|Frankfurt]], [[Charles de Gaulle Airport|Paris]], [[Leonardo da Vinci–Fiumicino Airport|Rome]], [[Adolfo Suárez Madrid–Barajas Airport|Madrid]] and [[Los Angeles International Airport|Los Angeles]] are being considered for reopening.<ref>{{cite web|url=http://www.btimes.com.my/Current_News/BTIMES/articles/garudaleap/Article/|accessdate=1 August 2009}}{{dead link|date=May 2016|bot=medic}}{{cbignore|bot=medic}}</ref><ref>{{cite web|url=http://bisniskeuangan.kompas.com/read/2009/07/23/16300392/Progam.Quantum.Leap..Garuda.Kejar.Laba.Rp.3.7.Triliun|title=Progam <nowiki>[sic]</nowiki> "Quantum Leap", Garuda Kejar Laba Rp 3,7 Triliun|work=Kompas|date=23 July 2009|accessdate=2 January 2017}}</ref><ref>[http://www.mediaindonesia.com/read/2009/07/07/86762/21/2/Quantum-Leap-Ekspansi-Agresif-Garuda-Indonesia- Quantum Leap Ekspansi Agresif Garuda Indonesia] {{webarchive|url=https://web.archive.org/web/20120226010628/http://www.mediaindonesia.com/read/2009/07/07/86762/21/2/Quantum-Leap-Ekspansi-Agresif-Garuda-Indonesia-|date=26 February 2012}}. Mediaindonesia.com (23 February 2009). Retrieved 25 November 2010.</ref><ref>[http://asia.businesstraveller.com/asia-pacific/news/garuda-indonesia-revitalises-(updated) Garuda Indonesia revitalises (Updated) – Business Traveller Asia] {{webarchive|url=https://web.archive.org/web/20110708105044/http://asia.businesstraveller.com/asia-pacific/news/garuda-indonesia-revitalises-%28updated%29|date=8 July 2011}}. Asia.businesstraveller.com (23 July 2009). Retrieved 25 November 2010.</ref><ref>[http://www.themalaysianinsider.com/index.php/business/36053-the-man-who-turned-garuda-around "The man who turned Garuda around"] {{webarchive|url=https://web.archive.org/web/20160303222021/http://www.themalaysianinsider.com/index.php/business/36053-the-man-who-turned-garuda-around|date=3 March 2016}} ''The Malaysian Insider'' 26 August 2009</ref>
As part of the ''Quantum Leap'', the airline refreshed its logo and redesigned its iconic livery in 2009, more than 20 years after the last update.<ref>[http://www.brandrepublic.asia/Media/newsarticle/2009_07/Garuda-Indonesia--Refresh--Indonesia/36427 Garuda Indonesia | Refresh | Indonesia – The Work – Creativity – Campaign Asia-Pacific] {{webarchive|url=https://web.archive.org/web/20090804062135/http://www.brandrepublic.asia/Media/newsarticle/2009_07/Garuda-Indonesia--Refresh--Indonesia/36427|date=4 August 2009}}. ''Brand Republic''.asia (28 July 2009). Retrieved 25 November 2010.</ref> New uniforms were introduced in 2010.<ref>[http://www.thejakartapost.com/news/2010/05/29/fresh-look.html Fresh look] {{webarchive|url=https://web.archive.org/web/20160304234308/http://www.thejakartapost.com/news/2010/05/29/fresh-look.html|date=4 March 2016}}. The Jakarta Post (29 May 2010). Retrieved 25 November 2010.</ref> In 2010, the airline placed a firm order for six additional Airbus A330s at the 2010 [[Farnborough Airshow]],<ref>{{cite web|url=http://www.flightglobal.com/articles/2010/07/21/345002/farnborough-garuda-orders-six-a330s.html|accessdate=21 July 2010|title=FARNBOROUGH: Garuda orders six A330s}}</ref> while it opened a new hub at [[Sultan Hasanuddin International Airport]], [[Makassar]], South Sulawesi to increase services to the eastern part of Indonesia on 1 June 2011, its third after [[Jakarta]] and [[Denpasar]]<ref>{{cite web|url=http://www.thejakartapost.com/news/2011/05/28/garuda-open-third-hub-makassar.html|title=Garuda to open third hub in Makassar|work=The Jakarta Post|date=28 May 2011|accessdate=22 January 2013}}</ref>
During this time period, the airline also added additional frequencies to many of its international routes, including to Singapore, Bangkok, Beijing and Shanghai from Jakarta, while it also added capacity to Denpasar-Seoul.
At the Paris Air Show 2011, Garuda Indonesia announced a firm order of 25 Airbus A320s with an option for another 25.<ref>{{cite web|url=http://www.thejakartapost.com/news/2011/06/22/garuda-sriwijaya-ink-purchase-deals-paris.html|title=Garuda, Sriwijaya ink purchase deals in Paris|work=The Jakarta Post|date=22 June 2011|accessdate=22 January 2013}}</ref> All 25 Airbus A320s are to be used by their subsidiary, [[Citilink]]<ref>{{cite web|url=http://www.aviationnews.eu/2011/08/09/garuda-indonesia-finalises-order-for-25-a320-family-aircraft/citilink-a320neo/|title=Garuda Indonesia finalises order for 25 A320 Family aircraft Citilink A320neo – INTERNATIONAL AVIATION NEWS|publisher=Aviationnews.eu|date=9 August 2011|accessdate=22 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130524154655/http://www.aviationnews.eu/2011/08/09/garuda-indonesia-finalises-order-for-25-a320-family-aircraft/citilink-a320neo/|archivedate=24 May 2013|df=dmy}}</ref> The airline's earlier order for the [[Boeing 787 Dreamliner|Boeing 787]], made in 2005, was changed once more, due to the delays in the 787's entry into service, and Garuda opted to sign for 10 [[777-300ER|Boeing 777-300ERs]] instead, which it would take delivery of in 2013 to use on long-haul flights to Europe, and medium-haul flights within Asia, such as to Japan, China, Singapore and Saudi Arabia, as well as short-haul domestic routes between Jakarta and Denpasar.
The airline made its debut on the [[Indonesia Stock Exchange]] in February 2011,<ref>{{cite web|url=http://www.thejakartaglobe.com/archive/garuda-ipo-lost-altitude-on-poor-planning-analyst-says/|archive-url=https://archive.today/20130615171516/http://www.thejakartaglobe.com/archive/garuda-ipo-lost-altitude-on-poor-planning-analyst-says/|dead-url=yes|archive-date=15 June 2013|title=Garuda IPO Lost Altitude on Poor Planning, Analyst Says|work=Jakarta Globe|date=11 February 2011|accessdate=17 June 2013}}</ref> with the [[Politics of Indonesia|government of Indonesia]] retaining a majority of the shares. PT Trans Airways bought 10.9 percent stake of Garuda Indonesia unsold IPO shares from underwriters on 27 April 2012. The transaction was valued at Rp 1.53 trillion ($166.8 million).<ref>{{cite web|url=http://www.thejakartapost.com/news/2012/04/28/trans-airways-buys-109-stake-garuda.html|title=Trans Airways buys 10.9% stake in Garuda|date=28 April 2012}}</ref>
In late 2014, the airline became one of seven airlines to earn the prestigious 5 star rating from [[Skytrax]], marking the end of the 5-year ''Quantum Leap'' program.<ref name="Skytrax 5-Star">{{cite web|url=http://www.airlinequality.com/news/Garuda-achieves-5-Star-rating.htm|title=Garuda Indonesia is to be confirmed as the world's newest 5-Star Airline|publisher=Airlinequality.com|date=11 December 2014|accessdate=1 February 2015|archiveurl=https://web.archive.org/web/20141215051343/http://www.airlinequality.com/news/Garuda-achieves-5-Star-rating.htm|archivedate=15 December 2014}}</ref> Following this announcement, Emirsyah Satar, who had been CEO for the past nine years, announced his resignation and retirement, and promoted former Citilink chief Arif Wibowo as his successor.
Following Wibowo's promotion, he began a "Quick Wins" cost-cutting drive to cut down on losses while boosting revenue through various measures, including cancelling unprofitable routes and increasing staff efficiency.<ref>{{cite web|url=http://www.ch-aviation.com/portal/news/34374-garuda-indonesia-unveils-quick-wins-cost-cutting-drive|title=Garuda Indonesia unveils 'Quick Wins' cost-cutting drive}}</ref> Despite this, Wibowo remains committed to continue the airline's international expansion, especially once market conditions, such as the weakening rupiah, improve. This was reaffirmed following the airline's announcement of its intent to order 90 new aircraft, from both Boeing and Airbus, worth $20 billion at list prices at the 2015 Paris Air Show.<ref>{{cite news|url=https://www.independent.co.uk/news/business/news/paris-air-show-spending-spree-begins-with-big-garuda-order-10322330.html|title=Paris Air Show spending spree begins with big Garuda order|work=The Independent}}</ref>
== 公司事務和身份 ==
=== 主席與首席執行官 ===
{| class="wikitable"
!姓名
!由
!至
|-
|Dr. E. Konijnenburg
|1950
|1954
|-
|Ir. Soetoto
|1954
|1959
|-
|Marsekal Iskandar
|1959
|1961
|-
|Partono
|1961
|1965
|-
|Soedarmo
|1965
|1968
|-
|{{ill|Wiweko Soepono|id}}
|1968
|1984
|-
|[[Reyn Altin Johannes Lumenta]]<ref name="autogenerated1" />
|1984
|1988
|-
|Soeparno
|1988
|1992
|-
|Wage Mulyono
|1992
|1995
|-
|Soepandi
|1995
|1998
|-
|Robby Djohan
|1998
|1999
|-
|Abdul Gani
|1999
|2002
|-
|Indra Setiawan
|2002
|2005
|-
|{{ill|Emirsyah Satar|id}}<ref>{{cite web|url=http://www.terrapinn.com/2012/aviation-outlook-asia/speaker-emirsyah-SATAR.stm|title=Asia's leading airline industry gathering – Aviation Outlook Asia 2014|work=terrapinn.com|access-date=19 January 2013|archive-url=https://web.archive.org/web/20121020004651/http://www.terrapinn.com/2012/aviation-outlook-asia/speaker-emirsyah-SATAR.stm|archive-date=20 October 2012|dead-url=yes|df=dmy-all}}</ref>
|2005
|2014
|-
|Muhammad Arif Wibowo
|2014
|2017
|-
|Pahala Nugraha Mansury<ref>{{Cite news|url=http://bisniskeuangan.kompas.com/read/2017/04/12/203939626/pahala.nugraha.mansury.bankir.yang.kini.jadi.pilot.garuda.indonesia|title=Pahala Nugraha Mansury, Bankir yang Kini Jadi "Pilot" Garuda Indonesia - Kompas.com|last=Media|first=Kompas Cyber|work=KOMPAS.com|access-date=2017-04-12|language=en}}</ref>
|2017
|2018
|-
|I Gusti Ngurah Askhara Danadiputra
|2018
|Present
|}
=== Branding and livery ===
[[檔案:Garuda_Indonesia_Flight_Attendants_in_Kebaya.jpg|右|縮圖|The new Garuda Indonesia flight attendants' uniform, featuring [[kebaya]] and ''parang gondosuli'' [[batik]]]]
Since its establishment, Garuda Indonesia has changed its branding and livery a few times.
==== Original livery and logo ====
During the early years, Garuda color scheme was simple logotype "Indonesia Airways" with blue lines and Indonesian flag.
==== 1960s rebranding ====
In the 1960s, Garuda introduced a red and white color scheme in accordance to the Indonesian national identity and the [[Flag of Indonesia|Indonesian flag]]. Also in this period "Garuda Indonesian Airways" introduced a bird logo: a triangle stylized eagle-like Garuda with red and white shield. The logo was painted on the [[vertical stabilizer]] of Garuda's fleet from 1961 to 1969.
==== 1970s rebranding ====
In the 1970s, a [[Wordmark|logotype]] with a unique font replaced the triangular eagle as Garuda's corporate identity, along with a new color scheme consisting of a red and orange "hockey stick" line running along the aircraft's windows and vertical stabilizer. This livery used from 1969 to 1985.
==== 1985 rebranding ====
In 1985, Garuda underwent a complete branding makeover, changing its name into "Garuda Indonesia" along with its color scheme, logo and logotype. The new branding and livery was created by [[Landor Associates]] who also created the new iconic bird logo: the Garuda symbol with five bent lines forming its wings.<ref name="Landor">{{cite web|url=http://landor.com/#!/work/case-studies/garuda-indonesia/|title=Garuda Indonesia|publisher=Landor Associates|accessdate=14 September 2012}}</ref> The color scheme was changed completely to a deep royal blue and aqua color, said to be inspired by the nature of Indonesia that was dominated by tropical greenery and seas when viewed from the air. The nationalistic red and white color scheme was no longer used.
==== 2009 rebranding ====
In 2009, a new branding initiative was launched through a new image, developed once again by brand consultant Landor Associates, a new spin of the idea called "nature's wing".<ref name="Landor" /> Garuda has since replaced the old logo painted on its fleet vertical stabilizer with this new "nature's wing" graphic of blue and aqua shades. The "nature's wing" graphic was inspired by the wings of tropical birds as well as the ripples of waves upon the water. The iconic bird symbol designed by Landor 24 years earlier is still maintained as Garuda Indonesia's logo, with minor changes, while the logotype now uses a font similar to [[Myriad|Myriad Pro]]. The new look is expected to be able to "Capture the Spirit of Friendliness and Professionalism of Indonesia".
==== Special liveries ====
To celebrate its 62 years of service on 26 January 2011, Garuda Indonesia painted 2 of its [[Boeing 737-800]] aircraft with the retro liveries the airline used in the 1960s and 1970s.
=== Slogans ===
==== Former slogans ====
* ''Garuda Indonesia, Kini Lebih Baik'' (Now Better)
* ''Garuda Indonesia, Bangga Bersamanya'' (Proud of You Together)
==== Current slogan ====
* ''Garuda Indonesia, The Airline of Indonesia''
{{multiple image
<!-- Essential parameters -->|align=center|direction=horizontal|width=<!-- Image 1 -->|image1=|width1=100|alt1=|caption1=1949–1969
<!-- Image 2 -->|image2=Garuda Indonesia 1969.png|width2=150|alt2=|caption2=1969–1985
<!-- Image 3 -->|image3=Garuda Indonesia 1985.svg|width3=300|alt3=|caption3=1985–2009
<!-- Image 4 -->|image4=Garuda Indonesia Logo.svg|width4=260|alt4=|caption4=2009–present|header=Gallery of Garuda Indonesia logos|header_align=center|header_background=|footer=|footer_align=center|footer_background=|background color=}}
{{multiple image
<!-- Essential parameters -->|align=center|direction=horizontal|width=<!-- Image 1 -->|image1=Seulawah Indonesian Airways.jpg|width1=160|alt1=|caption1=A [[Douglas DC-3]] Seulawah RI-001, with simple "Indonesia Airways" logotype, Indonesian flag and blue lines (1949–1961)
<!-- Image 2 -->|image2=Garuda Convair 990 Manteufel.jpg|width2=160|alt2=|caption2=A [[Convair 990 Coronado|Convair 990]] at [[Amsterdam Airport Schiphol]] in 1965 with triangular bird logo (1961–1969)
<!-- Image 3 -->|image3=Garuda Indonesian Airways Douglas DC-8-55 Gilliand.jpg|width3=160|alt3=|caption3=A [[Douglas DC-8|Douglas DC-8-55]] at [[Paris–Le Bourget Airport]] in 1970 with Garuda logotype (early 1970s transition livery)
<!-- Image 4 -->|image4=McDonnell Douglas DC-10-30, Garuda - Indonesian Airways AN0839836.jpg|width4=160|alt4=|caption4=McDonnell Douglas DC-10 in 1985 with red and orange color scheme (1969–1985)
<!-- Image 5 -->|image5=Boeing 747-2U3B, Garuda Indonesia AN0063060.jpg|width5=160|alt5=|caption5=Boeing 747-200B at [[Frankfurt Airport]] in 1990 (1985–2009)
<!-- Image 6 -->|image6=PK-GMC Boeing 737 Garuda Indon (7170013657).jpg|width6=160|alt6=|caption6=[[Boeing 737 Next Generation|Boeing 737–800]] with blue and white color scheme livery at [[Perth Airport]] (2009–present)|header=Gallery of Garuda Indonesia liveries|header_align=center|header_background=|footer=This set of images shows the evolution of Garuda Indonesia's livery.|footer_align=center|footer_background=|background color=}}
=== Head office ===
Garuda Indonesia has its head office at [[Soekarno–Hatta International Airport]] in [[Tangerang]], [[Banten]], [[Indonesia]],<ref>"[http://www.garuda-indonesia.com/about-us/organization-group Organization & Group] {{webarchive|url=https://web.archive.org/web/20110426202249/http://www.garuda-indonesia.com/about-us/organization-group|date=26 April 2011}}." Garuda Indonesia. Retrieved 22 June 2009. "Having a Head Office at the Soekarno-Hatta International Airport,"</ref><ref>"[http://www.thejakartapost.com/news/2010/09/01/soekarnohatta-airport-needs-expansion-accommodate-more-passengers.html Soekarno-Hatta must be expanded to meet passenger demand] {{webarchive|url=https://www.webcitation.org/6aqtKOEOY?url=http://www.thejakartapost.com/news/2010/09/01/soekarnohatta-airport-needs-expansion-accommodate-more-passengers.html|date=17 August 2015}}." ''[[The Jakarta Post]]''. Wednesday 1 September 2010. Retrieved 16 September 2010. "In this August, 2010 file photo passengers crowd the domestic terminal at Soekarno-Hatta International Airport in Tangerang, Banten."</ref> near [[Cengkareng]] and near [[Jakarta]].<ref>"[http://www.garuda-indonesia.com/us/contact/index.page Garuda Indonesia Head Office] {{webarchive|url=https://web.archive.org/web/20130621022209/http://www.garuda-indonesia.com/us/contact/index.page|date=21 June 2013}}." Garuda Indonesia. Retrieved 6 June 2013. "Jl. M1. Area Perkantoran Gedung Garuda City Center, Soekarno-Hatta Internasional Airport Cengkareng 19120-Indonesia P.O.Box 1004"</ref> The head office is the Garuda Indonesia Management Building, located within the Garuda Indonesia City Center. The about {{convert|17000|sqm|sqft|adj=on}} head office facility is on a {{convert|5|ha|acre|adj=on}} plot of land. As of 2009, the head office houses the Garuda management and about 1,000 employees from various units. [[President of Indonesia|Indonesian President]] [[Susilo Bambang Yudhoyono]] opened the current Garuda head office in 2009.<ref name="Headofficeopens">"[http://www.garuda-indonesia.com/news/2009/07/23/president-susilo-bambang-yudhoyono-officially-opens-new-head-office-and-the-unveiling-of-new-garuda-indonesia-concept-of-service PRESIDENT SUSILO BAMBANG YUDHOYONO OFFICIALLY OPENS NEW HEAD OFFICE AND THE UNVEILING OF NEW GARUDA INDONESIA CONCEPT OF SERVICE] {{webarchive|url=https://web.archive.org/web/20101231210258/http://www.garuda-indonesia.com/news/2009/07/23/president-susilo-bambang-yudhoyono-officially-opens-new-head-office-and-the-unveiling-of-new-garuda-indonesia-concept-of-service|date=31 December 2010}}." Garuda Indonesia. Thursday 23 July 2009. Retrieved 16 September 2010.</ref> The previous head office was located in the city center of Jakarta, in [[Central Jakarta]].<ref name="Headofficeopens" /><ref>"World Airline Directory." ''[[Flight International]]''. 3–9 April 1996. [http://www.flightglobal.com/pdfarchive/view/1996/1996%20-%200796.html?search=Garuda&tracked=1 60]. "jl Merdeka Selatan 13, Jakarta 10110, Indonesia"</ref><ref>"[http://eproc.garuda-indonesia.com/guest/index.php?act=newsdetail&p_id=137 Detail News] {{webarchive|url=https://web.archive.org/web/20071014031733/http://eproc.garuda-indonesia.com/guest/index.php?act=newsdetail&p_id=137|date=14 October 2007}}." Garuda Indonesia. 11 October 2007. Retrieved 16 September 2010. "The Auction Committee PT. Garuda Indonesia (Persero) Gedung Garuda Indonesia, M Floor, Jl. Medan Merdeka Selatan 13, Jakarta Pusat, "</ref>
=== Privatization ===
Garuda Indonesia had announced that its subsidiary GMF AeroAsia would be listed in [[Indonesia Stock Exchange]] in 2008. However, due to [[Financial crisis of 2007–08|financial crisis in 2008]], GMF delayed [[Initial public offering|IPO]] until 2009. The Ministry of State-Owned Companies (Kementrian BUMN) also had announced a plan to privatize Garuda, that opened a possibility to offer its shares publicly.
Garuda Indonesia aimed to list on 11 February 2011, for an Initial Public Offering.<ref>{{cite news|url=https://www.reuters.com/article/idUSTOE70302X20110104|title=UPDATE 1-Garuda $500 mln IPO kicks off busy yr in Indonesia|agency=Reuters|accessdate=22 January 2013}}</ref> Government of Indonesia has confirmed the IPO price of Garuda Indonesia at Rp.750 per share and also cut offering size to 6.3 billion shares only from 9.362 billion planned before.<ref>{{cite news|url=https://www.reuters.com/article/idUSL3E7CQ07L20110126|title=UPDATE 1-Garuda Indonesia IPO to raise $526 mln, retail may lift debut|agency=Reuters|date=26 January 2011|accessdate=22 January 2013}}</ref>
=== Subsidiaries ===
Garuda Indonesia’s subsidiaries include:
<div style="text-align: center;">
{| class="wikitable sortable toccolors" style="font-size:98%;"
|+Garuda Indonesia Group<ref>{{cite web|url=http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/organization-and-groups/subsidiaries.page|title=Garuda Indonesia|publisher=Garuda Indonesia|accessdate=17 June 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130305140859/http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/organization-and-groups/subsidiaries.page|archivedate=5 March 2013|df=dmy-all}}</ref><ref>{{cite web|url=http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/organization-and-groups/strategic-business-unit.page|title=Garuda Indonesia|publisher=Garuda Indonesia|accessdate=17 June 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130615031617/http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/organization-and-groups/strategic-business-unit.page|archivedate=15 June 2013|df=dmy-all}}</ref>
!Company
!Type
!Principal activities
!Country
!Group's Equity Shareholding
|-
|[[Citilink]]
|Subsidiary
|[[Low-cost airline]]
|Indonesia
|100%
|-
|[[GMF AeroAsia]]
|Subsidiary
|[[Aircraft Maintenance]]
|Indonesia
|100%
|-
|[[Aerowisata|PT. Aerowisata]]
|Subsidiary
|Travel, hotel, transportation and catering services
|Indonesia
|100%
|-
|PT. Sabre Travel Network Indonesia (Previously Abacus)<ref>{{cite web|url=http://www.sabretn.co.id/tentang-sabre-indonesia/|title=Tentang Sabre Indonesia – Sabre Indonesia|website=www.sabretn.co.id|access-date=2016-11-26}}</ref>
|Subsidiary
|Computer reservation provider
|Indonesia
|100%
|-
|PT. Gapura Angkasa
|Subsidiary
|Ground handling service
|Indonesia
|58,75%<ref>{{cite web|url=http://www.thejakartaglobe.com/business/garuda-buys-stake-gapura-angkasa-become-majority-owner/|title=Garuda Buys Stake in Gapura Angkasa to Become Majority Owner|work=The Jakarta Globe|accessdate=24 April 2015|archive-url=https://web.archive.org/web/20140912090811/http://www.thejakartaglobe.com/business/garuda-buys-stake-gapura-angkasa-become-majority-owner/|archive-date=12 September 2014|dead-url=yes|df=dmy-all}}</ref>
|-
|PT. Aero Systems Indonesia
|Subsidiary
|[[Information technology|IT]] provider and solutions
|Indonesia
|100%
|-
|Cargo Garuda Indonesia
|Strategic Business Unit
|Cargo
|Indonesia
|100%
|-
|Garuda Sentra Medika
|Strategic Business Unit
|Aircrew health services
|Indonesia
|100%
|}
</div>
== Destinations ==
{{Main|List of Garuda Indonesia destinations}}
[[檔案:Terminal_Garuda_Indonesia_di_Bandara_Soekarno-Hatta_Cengkareng.jpg|縮圖|Garuda's aircraft on stand at [[Soekarno–Hatta International Airport]] Terminal 3, which is the airline's main hub]]
Garuda Indonesia operates flights to 96 destinations (72 domestic and 24 international) in 14 countries, with approximately 500 daily departures from its hubs at [[Soekarno-Hatta International Airport|Jakarta]], [[Ngurah Rai International Airport|Denpasar]], [[Kualanamu International Airport|Medan]] and [[Sultan Hasanuddin International Airport|Makassar]]. The airline serves 3 continents [[Asia]], [[Australia]] and [[Europe]] with its fleet of 140 aircraft, to destinations such as [[Singapore]], [[Shanghai]], [[Tokyo]], [[Amsterdam]] and [[London]], and although it has rapidly expanded its route network since the ''Quantum Leap'' began in 2009, the airline still does not fly to several major cities, such as [[Manila]] and [[Ho Chi Minh City]], and despite the airline repeatedly stating its intention to fly to Manila, a time frame has not been given.<ref>{{cite web|url=http://indo-aviation.com/2014/02/06/garuda-indonesia-incar-tiga-rute-internasional-baru/|title=Garuda Indonesia Incar Tiga Rute Internasional Baru | Indo-Aviation | Aviation News Portal|publisher=Indo-Aviation|date=|accessdate=2014-04-25|archive-url=https://web.archive.org/web/20140215151531/http://indo-aviation.com/2014/02/06/garuda-indonesia-incar-tiga-rute-internasional-baru/|archive-date=15 February 2014|dead-url=yes|df=dmy-all}}</ref>
On 13 October 2009, the airline announced it would resume flights to Europe for the first time following its removal from the [[List of air carriers banned in the European Union|E.U. blacklist]]. It commenced flights between [[Jakarta]] and [[Amsterdam]] in June 2010, initially with a refueling stop in [[Dubai]].<ref>[http://www.nationmultimedia.com/2009/11/11/regional/regional_30116346.php Indonesia's Garuda airline to return to Europe next year] {{webarchive|url=https://web.archive.org/web/20091118181550/http://www.nationmultimedia.com/2009/11/11/regional/regional_30116346.php|date=18 November 2009}}. ''The Nation'' (Thailand).com (12 November 2009). Retrieved 25 November 2010.</ref> On 2 December 2012, after agreeing to a codeshare agreement with [[Etihad Airways]], the airline changed the refueling stop to [[Abu Dhabi]].<ref name="travelweekly.com.au">{{cite web|last=Majumdar|first=Anne|title=Garuda to codeshare with Etihad|url=http://www.travelweekly.com.au/travel-today/news/garuda-to-codeshare-with-etihad|archive-url=https://archive.today/20121205230025/http://www.travelweekly.com.au/travel-today/news/garuda-to-codeshare-with-etihad|dead-url=yes|archive-date=5 December 2012|work=Travel Weekly|accessdate=16 January 2013|date=17 October 2012}}</ref> After the delivery of its [[777-300ER|Boeing 777-300ER]] aircraft in 2013, the airline removed the [[Abu Dhabi]] refueling stop, and commenced [[Non-stop flight|non-stop]] service to Amsterdam, as the longest flight operated by the airline, and consequently ending flights to [[Abu Dhabi International Airport|Abu Dhabi]], leaving Etihad as the sole operator between Jakarta and Abu Dhabi.<ref>{{cite web|url=https://www.garuda-indonesia.com/id/en/news-and-events/news/Garuda-indonesia-layani-penerbangan-langsung-pertam-dari-indonesia-ke-Eropa.page|title=Garuda Indonesia The Airline of Indonesia|publisher=Garuda-indonesia.com|date=|accessdate=2014-04-25|deadurl=yes|archiveurl=https://web.archive.org/web/20140413170823/https://www.garuda-indonesia.com/id/en/news-and-events/news/Garuda-indonesia-layani-penerbangan-langsung-pertam-dari-indonesia-ke-Eropa.page|archivedate=13 April 2014|df=dmy-all}}</ref> On 8 September that year, the airline extended its Amsterdam flight with continuing service to [[Gatwick Airport|London Gatwick]].<ref>{{cite web|title=Garuda launches Jakarta-London service|date=9 September 2014|publisher=The Jakarta|url=http://www.thejakartapost.com/news/2014/09/09/garuda-launches-jakarta-london-service.html|accessdate=10 September 2014}}</ref><ref>{{cite web|author=JL|url=http://airlineroute.net/2014/03/17/ga-cgkams-may14/|title=Garuda Indonesia S14 European Operation Changes|publisher=Airline Route|date=2014-03-17|accessdate=2014-04-25}}</ref>
In 2011, Garuda flew 17.1 million passengers up 39% from the previous year, while the total revenue jumped 38% to Rp27.1 trillion ($2.95 billion). Composition of passengers on domestic routes and international routes was 81% versus 19% respectively.<ref>{{cite web|url=http://www.thejakartapost.com/news/2012/01/13/garuda-indonesia-ends-2011-flying-high0.html|title=Garuda Indonesia ends 2011 flying high|date=13 January 2012}}</ref>
On 31 March 2016, Garuda Indonesia inaugurated its first flight from Singapore Changi Airport to London Heathrow, using Boeing 777-300ER.
In mid 2016, Garuda announced its intention to resume service to [[Chhatrapati Shivaji International Airport|Mumbai]] from [[Soekarno–Hatta International Airport|Jakarta]]. This service is opened on 12 December 2016 via Bangkok using Boeing 737–800 NG.<ref>{{cite web|editor-last=Nursastri|editor-first=Sri Anindiati|url=http://travel.kompas.com/read/2016/12/12/180300327/garuda.indonesia.resmi.layani.penerbangan.jakarta-mumbai|title=Garuda Indonesia Resmi Layani Penerbangan Jakarta-Mumbai|work=Kompas|date=12 December 2016|accessdate=2 January 2017}}</ref>
On 12 September 2016, Garuda Indonesia announced its intention to resume service to [[Los Angeles International Airport|Los Angeles]] via [[Narita Airport|Tokyo-Narita]] using a [[777-300ER|Boeing 777-300ER]] from [[Soekarno–Hatta International Airport|Jakarta]] after the [[Federal Aviation Administration]] (FAA) granted a Category 1 rating to Indonesia. This is slated to start in November 2017.<ref>{{cite web|url=http://onemileatatime.boardingarea.com/2017/02/23/garuda-lax/|title=Yay: Garuda Indonesia Formally Requests LAX Flights|last=Schlappig|first=Ben|date=23 February 2017|website=onemileatatime|access-date=14 June 2017}}</ref> The last time Los Angeles was served was in 1997.<ref>{{cite web|url=https://finance.detik.com/berita-ekonomi-bisnis/3270867/sebelum-dilarang-ke-as-garuda-pernah-terbangi-rute-jakarta-la|title=Sebelum Dilarang ke AS, Garuda Pernah Terbangi Rute Jakarta-LA|last=Sutianto|first=Feby Dwi|date=8 August 2016|website=detikFinance|access-date=14 Jun 2017}}</ref> As of 2019, however, the plan is yet to be realized and has most likely been shelved as the Government of Japan has yet to approve fifth freedom rights to Garuda.<ref>{{cite web|url=https://bisniskeuangan.kompas.com/read/2017/02/13/120312826/garuda.indonesia.berharap.jepang.segera.keluarkan.izin.terbang.ke.as|title=Garuda Indonesia Berharap Jepang Segera Keluarkan Izin Terbang ke AS|last=Media|first=Kompas Cyber|website=KOMPAS.com|language=id|access-date=2019-02-20}}</ref>
In February 2017, Garuda Indonesia announced that the airline will resume flights to Dubai and Moscow using wide body aircraft [[Airbus A330-200]]. This flight is planned to be resumed in 2018, although as of 2019 has not been realized.
In August 2018, Garuda Indonesia announced that the airline will end flights to London Heathrow by October, although it then resumed flights on December with a dual-class Boeing 777-300ER on the same year.<ref>{{cite web|url=https://ukaviation.news/garuda-indonesia-returns-to-heathrow-after-short-break/|title=Garuda Indonesia returns to Heathrow after short break|date=November 11, 2018|website=ukaviation.news|access-date=12 Nov 2018}}</ref> 2019 marked further adjustments to Garuda's flight to London Heathrow as the airline announced a Jakarta-London Heathrow, London Heathrow-Denpasar routing.<ref>{{cite web|url=https://www.thejakartapost.com/news/2019/01/23/garuda-opens-london-to-denpasar-route.html|title=Garuda opens London to Denpasar route|last=Post|first=The Jakarta|website=The Jakarta Post|language=en|access-date=2019-02-20}}</ref>
=== Codeshare agreements and alliances ===
{{main article|SkyTeam}}
Codesharing has allowed Garuda Indonesia to expand services into Western Europe and the Middle East. In 2009, Garuda Indonesia expressed an interest in joining the [[SkyTeam]] [[airline alliance]], which would make it the second airline in Southeast Asia to join after [[Vietnam Airlines]]. Membership would open SkyTeam's network to Indonesian, Australian, and New Zealand markets, which it lacked connectivity to. In December 2009, three [[SkyTeam]] members – [[Korean Air]], [[KLM]], and [[Delta Air Lines]] (China Airlines joined as fourth member to support Garuda after its 2011 SkyTeam inclusion)<ref>{{cite web|url=http://centreforaviation.com/analysis/garuda-gives-skyteam-leading-presence-in-southeast-asia-as-garudas-international-profile-is-raised-155551|title=Garuda gives SkyTeam leading presence in Southeast Asia as Garuda's international profile is raised|work=CAPA Centre for Aviation|date=5 March 2014|accessdate=2 January 2017|deadurl=yes|archiveurl=https://web.archive.org/web/20140305111719/http://centreforaviation.com/analysis/garuda-gives-skyteam-leading-presence-in-southeast-asia-as-garudas-international-profile-is-raised-155551|archivedate=5 March 2014|df=dmy}}</ref> – committed to supporting Garuda Indonesia to join SkyTeam. This made Garuda Indonesia eligible to apply for membership in the alliance. On 23 November 2010, Garuda Indonesia signed an agreement to join SkyTeam. However instead of the usual 18–24 months to complete membership formalities, shortcomings with its IT system delayed Garuda's entry. After a 40-month process, the airline eventually became the 20th member of the alliance on 5 March 2014, some two years after the original target date.<ref>{{cite press release|url=http://www.skyteam.com/en/About-us/Press/News/2014/Garuda-Indonesia-Becomes-20th-Member-of-SkyTeam-Alliance/|title=Garuda Indonesia Becomes 20th Member of SkyTeam|publisher=[[SkyTeam]]|date=5 March 2014|accessdate=6 March 2014|deadurl=yes|archiveurl=https://web.archive.org/web/20140305104028/https://www.skyteam.com/en/About-us/Press/News/2014/Garuda-Indonesia-Becomes-20th-Member-of-SkyTeam-Alliance/|archivedate=5 March 2014|df=dmy-all}}</ref><ref name="Garuda gives SkyTeam leading presence in Southeast Asia as Garuda’s international profile is raised">{{cite news|title=Garuda gives SkyTeam leading presence in Southeast Asia as Garuda’s international profile is raised|url=http://centreforaviation.com/analysis/garuda-gives-skyteam-leading-presence-in-southeast-asia-as-garudas-international-profile-is-raised-155551|work=Centre for Aviation|date=5 March 2014|deadurl=yes|archiveurl=https://web.archive.org/web/20140305111719/http://centreforaviation.com/analysis/garuda-gives-skyteam-leading-presence-in-southeast-asia-as-garudas-international-profile-is-raised-155551|archivedate=5 March 2014|df=dmy-all}}</ref>
* On 19 June 2007, Garuda Indonesia and [[Hainan Airlines]] began codesharing in a bid to strengthen both airlines' marketing positions in Indonesia and People's Republic of China.<ref>[http://www.garuda-indonesia.com/index.php?menu=news&opt=detail&id=62 Garuda Indonesia-News] {{webarchive|url=https://web.archive.org/web/20120209031544/http://www.garuda-indonesia.com/index.php?menu=news&opt=detail&id=62|date=9 February 2012}}</ref> In this agreement, Garuda Indonesia will be the operating partner on the Jakarta-Beijing (vv) service, flying five times a week using a new [[Airbus A330|A330-200]].
* An interline agreement between Garuda Indonesia and Australian airline [[Virgin Australia|Virgin Blue]] was confirmed in November 2007. This facilitates travel for passengers connecting from a Virgin Australia domestic flight to a Garuda Indonesia international service departing from either [[Sydney]], [[Melbourne]] or [[Perth]].<ref>[http://www.impactpub.com.au/micebtn/index.php?option=com_content&task=view&id=1232&Itemid=50 MICEBTN] {{webarchive|url=https://web.archive.org/web/20091011045436/http://www.impactpub.com.au/micebtn/index.php?option=com_content&task=view&id=1232&Itemid=50|date=11 October 2009}}</ref>
* In June 2008, it was announced that Garuda Indonesia would increase services between Australia and Bali. From 25 June, Garuda Indonesia added an extra flight between [[Darwin, Northern Territory|Darwin]] and [[Denpasar]], bringing the total number of services to three per week. Additionally, a fourth flight from Melbourne to Denpasar began on 22 July. On 2 September, another extra service departed from Melbourne to bring the total number of flights per week to five, and a sixth flight left from Sydney. This extra capacity was in response to an increase in the number of Australians who traveled to [[Bali]] in the first quarter of 2008, marking a resurgence in Balinese tourism, which was hit hard by the [[2002 Bali bombings|2002]] and [[2005 Bali bombings]].<ref>{{cite web|url=http://www.etravelblackboard.com/showarticle.asp?id=78465&nav=2%7ce-Travel|title=Blackboard news|publisher=Etravelblackboard.com|accessdate=22 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20120308025857/http://www.etravelblackboard.com/showarticle.asp?id=78465&nav=2%7Ce-Travel|archivedate=8 March 2012|df=dmy-all}}</ref>
* In August 2008, a codeshare agreement between [[Singapore Airlines]] and the airline on route between Singapore and [[Denpasar]] was established. Singapore Airlines is the operating carrier.
* A partnership agreement with [[Etihad Airways]] was announced on 16 October 2012. The partnership includes a codeshare agreement for a total of 36 flights between the two airlines; subject to Government Regulatory Approval. Reciprocal Frequent Flyer programmes were also part of the agreement, allowing passengers to earn miles flying both Garuda Indonesia and Etihad Airways. Garuda Indonesia subsequently shifted its [[Dubai]] operations to [[Abu Dhabi]] as to compliment the agreement.<ref name="travelweekly.com.au" /><ref>{{cite web|url=http://finance.detik.com/read/2013/02/26/104330/2179775/1036/etihad-garuda-berbagi-rute-ke-eropa-timur-tengah-dan-australia?|title=Etihad & Garuda Berbagi Rute ke Eropa, Timur Tengah, dan Australia|date=26 February 2013}}</ref>
* During the [[APEC Indonesia 2013|APEC summit]] on 7 October 2013, a codeshare agreement between Garuda Indonesia and [[Aeroméxico]] was announced, allowing passengers to travel from Jakarta to [[Mexico City]] via Tokyo and vice versa. Under the codeshare agreement, Aeromexico would place its flight numbers on Garuda Indonesia's Jakarta-Tokyo flights while Garuda Indonesia would place its flight numbers on Aeromexico's Tokyo-Mexico City flights.<ref>{{cite web|url=http://centreforaviation.com/analysis/garuda-indonesia--aeromexico-poised-to-become-first-southeast-asia-latin-america-codeshare-partner-132784|title=Garuda Indonesia & Aeromexico poised to become first Southeast Asia-Latin America codeshare partner | CAPA|publisher=Centre for Aviation|date=|accessdate=2013-12-04}}</ref>
* On 19 November 2013, a codeshare agreement was announced between Garuda Indonesia and [[Jet Airways]] of India. Under the codeshare agreement, Jet Airways would place its flight numbers on Garuda Indonesia flights between Jakarta and Singapore while Garuda Indonesia would place its flight numbers on Jet Airways flights between Singapore and [[Mumbai]], [[Delhi]] and [[Chennai]]. The two airlines also announced a reciprocal Frequent Flyer programme partnership, allowing passengers to earn miles flying both Garuda Indonesia and Jet Airways.<ref>{{cite news|url=http://www.thehindubusinessline.com/industry-and-economy/logistics/jet-airways-signs-codeshare-pact-with-garuda-indonesia/article5368221.ece/|title=Jet Airways signs codeshare pact with Garuda Indonesia | News|newspaper=The Hindu Business Line|accessdate=2013-12-19|deadurl=yes|archiveurl=https://web.archive.org/web/20131123064327/http://www.thehindubusinessline.com/industry-and-economy/logistics/jet-airways-signs-codeshare-pact-with-garuda-indonesia/article5368221.ece|archivedate=23 November 2013|df=dmy-all}}</ref>
* On 19 December 2013, Garuda Indonesia and Japan's [[All Nippon Airways]] announced a partnership agreement encompassing codeshare flights as well as reciprocal Frequent Flyer programmes. Under the codeshare agreement, ANA passengers arriving in Jakarta would be able to transfer to 10 destinations in Indonesia on board Garuda Indonesia flights, while Garuda Indonesia passengers arriving in Tokyo or Osaka would be able to transfer to 11 destination in Japan on board ANA flights.<ref>{{Cite news|author=Friday, 25 April 2014|url=http://www.business-standard.com/article/news-ani/ana-and-garuda-indonesia-announce-comprehensive-partnership-pact-113121900405_1.html|title=ANA and Garuda Indonesia announce comprehensive partnership pact|publisher=Business Standard|date=2013-12-19|accessdate=2014-04-25|newspaper=Business Standard India}}</ref>
Garuda Indonesia has [[Codeshare agreement|codeshare agreements]] with the following airlines:<ref name="CAPA Garuda Indonesia profile">{{cite web|url=http://centreforaviation.com/profiles/airlines/garuda-indonesia-ga|title=Profile on Garuda Indonesia|website=CAPA|publisher=Centre for Aviation|access-date=2016-10-30|archive-url=https://web.archive.org/web/20161030214512/http://centreforaviation.com/profiles/airlines/garuda-indonesia-ga|archive-date=2016-10-30|dead-url=no}}</ref>
{{div col|colwidth=17em}}
* [[Aeroflot]]
* [[Aeroméxico]]
* [[Air Europa]]
* [[Air France]]
* [[All Nippon Airways]]
* [[Bangkok Airways]]
* [[China Airlines]]
* [[China Eastern Airlines]]
* [[China Southern Airlines]]
* [[Delta Air Lines]]
* [[Etihad Airways]]
* [[Hong Kong Airlines]]
* [[Japan Airlines]]<ref>{{cite web|url=https://asia.nikkei.com/Business/Companies/Garuda-expands-US-routes-with-Japan-Airlines-code-share-deal|title=Garuda expands US routes with Japan Airlines code-share deal|website=Nikkei Asian Review}}</ref>
* [[Kenya Airways]]
* [[KLM]]
* [[Korean Air]]
* [[Malaysia Airlines]]
* [[Myanmar Airways International]]
* [[Oman Air]]
* [[Philippine Airlines]]
* [[Royal Brunei Airlines]]
* [[Saudia]]<ref>{{cite web|url=https://www.routesonline.com/news/38/airlineroute/280437/saudia-expands-garuda-indonesia-codeshare-to-australia-from-sep-2018/|title=Saudia expands Garuda Indonesia codeshare to Australia from Sep 2018|publisher=Routesonline|date=7 September 2018}}</ref>
* [[SilkAir]]
* [[Singapore Airlines]]
* [[Thai Airways]]
* [[Turkish Airlines]]
* [[Vietnam Airlines]]
* [[XiamenAir]]
{{div col end}}
=== ''Explore'' and ''Explore-jet'' sub-brands ===
[[檔案:Garuda_Indonesia_CRJ1000_at_YPXM.jpg|縮圖|A [[Bombardier CRJ1000]] of Garuda Indonesia ''Explore-jet'' landing at [[Christmas Island Airport]] on its weekly service from [[Jakarta]] (February 2017)]]
As Indonesia's flag carrier, Garuda Indonesia tries to connect many parts of Indonesia to support the government's "Indonesian Interconnectivity" program. However, there are many remote and smaller airports that cannot be reached by Garuda Indonesia's fleet of [[737-800|Boeing 737–800s]]. This is caused by the lack of airport infrastructure in smaller cities and remote areas, such as insufficient [[runway]] length that mostly less than 1,600 meters.
In line with its ''Quantum Leap'' plan, Garuda Indonesia ordered brand-new [[Bombardier CRJ1000]] and [[ATR 72]] to reach smaller airports from Garuda's hubs like [[Ngurah Rai International Airport]], [[Sultan Hasanuddin International Airport]], and [[Kualanamu International Airport]]. On 25 November 2013, Garuda Indonesia has launched its new sub-brands "Explore" and "Explore-jet", for servicing ''perintis'' ("pioneer") lines traditionally served by other airlines — (dormant) [[Merpati Nusantara Airlines]] and also its competitor [[Wings Air]].
=== SkyTeam ===
[[檔案:PK-GMH_Garuda_Indonesia_Skyteam_Livery.jpg|縮圖|Boeing 737–800 (PK-GMH) taxiing with Boeing 777-300ER (PK-GII) on the background at [[Soekarno-Hatta International Airport]] (2017). Both aircraft are wearing [[SkyTeam]] livery.]]
On 5 March 2014, Garuda Indonesia officially joined the [[SkyTeam]] alliance and became its 20th member.<ref name="SkyTeam">{{cite web|title=Garuda Indonesia Becomes 20th Member of SkyTeam Alliance|url=http://www.skyteam.com/en/About-us/Press/News/2014/Garuda-Indonesia-Becomes-20th-Member-of-SkyTeam-Alliance/|date=5 March 2014|publisher=Skyteam|accessdate=6 March 2014|deadurl=yes|archiveurl=https://web.archive.org/web/20140305104028/https://www.skyteam.com/en/About-us/Press/News/2014/Garuda-Indonesia-Becomes-20th-Member-of-SkyTeam-Alliance/|archivedate=5 March 2014|df=dmy-all}}</ref> The inclusion of Garuda Indonesia adds 40 new destinations to SkyTeam’s global network and strengthens the alliance presence in Southeast Asia and Australia. To commemorate the event, the airline repainted an [[Airbus A330|Airbus A330-300]], a [[Boeing 737 Next Generation|Boeing 737-800]], and a [[Bombardier CRJ700 series|Bombardier CRJ1000]] with SkyTeam livery. In addition to repainted aircraft, a [[Boeing 777|Boeing 777-300ER]] was delivered with SkyTeam livery.<ref>{{cite web|url=http://www.boeing.com/commercial/customers/garuda-indonesia/garuda-indonesia-celebrates-777-delivery-with-special-livery.page|title=Boeing: Garuda Indonesia Celebrates 777-300ER Delivery with SkyTeam Livery|publisher=Boeing|accessdate=25 August 2018}}</ref> With the arrival of Garuda Indonesia to SkyTeam, a variety of facilities are given as including SkyPriority, as well as changing its current frequent flyer membership into GarudaMiles. In addition, Garuda is connected with 140 new destinations and also teamed up with the world's major airlines, such as [[Aeroflot]], [[Aeroméxico]], [[Air France]], [[China Airlines]], [[Delta Air Lines]], [[KLM]], [[Korean Air]], and [[Saudia]].<ref>{{cite web|url=http://www.eturbonews.com/43390/skyteam-welcomes-garuda-indonesia-its-20th-member|title=SkyTeam welcomes Garuda Indonesia as its 20th member|publisher=eTurboNews.com|date=2014-03-06|accessdate=2014-04-25|archive-url=https://web.archive.org/web/20140306101043/http://www.eturbonews.com/43390/skyteam-welcomes-garuda-indonesia-its-20th-member|archive-date=6 March 2014|dead-url=yes|df=dmy-all}}</ref>
== Fleet ==
The [[List of Boeing customer codes|Boeing customer code]] for Garuda Indonesia is U3, which appears on its aircraft designations as an infix, such as 737-8U3 and 777-3U3ER.
The airline utilizes the [[Boeing 777|Boeing 777-300ER]] on high-density medium and long-haul routes. The [[Airbus A330]] fleet is primarily used on most medium-haul routes from Jakarta and Denpasar, as well as for Umrah and Hajj flights. The [[Boeing 737 Next Generation|Boeing 737–800]] and [[Boeing 737 MAX|Boeing 737 MAX 8]] aircraft are used on most domestic and regional routes. Meanwhile, the [[Bombardier CRJ1000]] is used to fly to airports incapable of handling the newer 737–800, replacing the [[Boeing 737 Classic]]. The [[ATR 72|ATR 72–600]] turboprop entered service at the end of 2013, serving new inter-island routes to airports in middle and eastern part of Indonesia that cannot handle jet aircraft.<ref>{{cite web|url=http://indo-aviation.com/2013/12/02/atr-72-600-garuda-terbang-perdana-ke-labuan-bajo-dan-bima/|title=ATR 72–600 Garuda Indonesia Terbang Perdana ke Labuan Bajo dan Bima|access-date=16 February 2014|archive-url=https://web.archive.org/web/20131204034825/http://indo-aviation.com/2013/12/02/atr-72-600-garuda-terbang-perdana-ke-labuan-bajo-dan-bima/|archive-date=4 December 2013|dead-url=yes|df=dmy-all}}</ref>
At the Paris Air Show in 2015, Garuda Indonesia signed a Letter of Intent (LoI) to purchase 90 new aircraft from Boeing and Airbus (30 737 MAX 8, 30 787–9 Dreamliner, 30 A350-900 XWB) worth $20 billion at list prices<ref>{{cite web|url=http://aviationweek.com/paris-air-show-2015/orders-announced-day-1-paris-air-show|title=Orders Announced On Day 1 Of The Paris Air Show}}</ref> Garuda has also signed a LoI for 14 Airbus A330-900neo aircraft (including 7 cancellations from existing A330-300 order), first reported during the Singapore Airshow 2016, confirming the order on 19 April 2016.<ref>{{cite web|url=https://www.flightglobal.com/news/articles/garuda-confirms-14-a330neos-to-replace-a330-order-424355/|title=Garuda confirms 14 A330neos to replace A330 order|website=FlightGlobal|date=19 April 2016|access-date=5 February 2019}}</ref>
On October 5, 2017, Garuda operated its last Boeing 747 service after the last aircraft touched down in Makassar from Medina, a returning Hajj flight. It was then ferried to Jakarta the following day for retirement.<ref>{{cite web|url=https://www.flightglobal.com/news/articles/picture-garuda-indonesia-retires-last-boeing-747-40-441955/|title=PICTURE: Garuda Indonesia retires last Boeing 747–400|date=10 October 2017}}</ref>
In January 2019, CEO Ari Askhara stated that the airline was considering and negotiating with lessors for a switch of 34 out of the remaining 49 Boeing 737 MAXes on order to the larger MAX 10 variant, as the airline was planning to resume 737 MAX deliveries by 2020.<ref>{{cite web|url=https://www.flightglobal.com/news/articles/garuda-indonesia-considering-switch-to-737-max-10-455434/|title=Garuda Indonesia considering switch to 737 Max 10|website=FlightGlobal|date=1 February 2019|access-date=5 February 2019}}</ref><ref>{{cite web|url=https://ekonomi.bisnis.com/read/20190126/98/882759/garuda-indonesia-bakal-mendatangkan-34-unit-boeing-737-max-10|title=Garuda Indonesia Bakal Mendatangkan 34 Unit Boeing 737 Max 10|website=Bisnis.com|language=id|date=26 January 2019|access-date=5 February 2019}}</ref> In March 2019 the airline decided to cancel its outstanding orders for 49 Boeing 737 MAX aircraft, citing a loss of passenger confidence in the type after the crashes of [[Lion Air Flight 610]] and [[Ethiopian Airlines Flight 302]].<ref name="Dont" /><ref>{{Cite news|url=https://www.bbc.com/news/business-47662967|title=Garuda looks to scrap Boeing 737 {{sic|nolink=y|Max}} order|date=2019-03-22|access-date=2019-03-24|website=BBC News|language=en-GB}}</ref>
=== Current fleet ===
As of August 2019, the Garuda Indonesia fleet consists of the following aircraft:<ref name="Fleet Revitalization">{{cite web|url=https://www.garuda-indonesia.com/id/en/garuda-indonesia-experience/fleets/fleet-revitalization.page?|title=Fleet Revitalization – Garuda Indonesia|website=www.garuda-indonesia.com|access-date=2018-06-06}}</ref><ref>{{cite web|url=https://www.planespotters.net/airline/Garuda-Indonesia|title=Garuda Indonesia Fleet Details and History – Planespotters.net Just Aviation|publisher=Planespotters.net|accessdate=5 February 2019}}</ref>
<center>
{| class="wikitable" style="margin:0.5em auto;text-align:center"
|+Garuda Indonesia Fleet
! rowspan="2" |Aircraft
! rowspan="2" |In Service
! rowspan="2" |Orders
! colspan="4" |Passengers
! rowspan="2" |Notes
|-
!<abbr title="First Class">F</abbr>
!<abbr title="Executive class">C</abbr>
!<abbr title="Economy Class">Y</abbr>
!Total
|-
|[[Airbus A330|Airbus A330-200]]
|10
|—
|—
|36
|186
|222
|
|-
| rowspan="3" |[[Airbus A330|Airbus A330-300]]
| rowspan="3" |17
| rowspan="3" |—
| rowspan="3" |—
|—
|360
|360
| rowspan="3" |
|-
|36
|215
|251
|-
|24
|263
|287
|-
|[[Airbus A330neo|Airbus A330-900neo]]
|—
|14
| colspan="4" class="unsortable" |<abbr title="To Be Announced"><div style="text-align: center;">TBA</div></abbr>
|First three aircraft to be delivered in 2019<ref>{{cite web|url=https://blueswandaily.com/garuda-indonesia-to-add-three-a330neo-and-five-737-max-aircraft-in-2019-20/|title=Garuda Indonesia to add three A330neo and five 737 MAX aircraft in 2019/20 – Blue Swan Daily|language=en-AU|access-date=2019-01-29}}</ref>
|-
|[[ATR 72|ATR 72-600]]
|13<ref name="Fleet Revitalization" />
|—
|—
|—
|70
|70
|Operating under the ''Explore'' subbrand<br />Will be transferred to [[Citilink]]<ref>{{cite web|url=https://market.bisnis.com/read/20190201/192/884667/garuda-indonesia-alihkan-2-unit-pesawat-ke-citilink|title=Garuda Indonesia Alihkan 2 Unit Pesawat ke Citilink - Market Bisnis.com|language=id|date=1 February 2019|access-date=5 February 2019}}</ref>
|-
| rowspan="2" |[[Boeing 737-800]]
| rowspan="2" |73<ref name="Fleet Revitalization" />
| rowspan="2" |—
| rowspan="2" |—
|12
|150
|162
| rowspan="2" |
|-
|8
|162
|170
|-
|[[Boeing 737 MAX 8]]
|1<ref name="Fleet Revitalization" />
|—
|—
|8
|162
|170
|Original order for 50 aircraft.<br />Remaining order for 49 were cancelled following the 2019 worldwide [[Boeing 737 MAX groundings]].<ref name="Dont">{{cite news|url=https://www.afp.com/en/news/717/indonesias-garuda-cancels-49-plane-boeing-737-order-after-crashes-doc-1ex5964|title=Indonesia's Garuda cancels 49-plane Boeing 737 order after crashes|website=AFP|date=2019-03-22|access-date=2019-03-22}}</ref><br />Consider to switching to [[Boeing 737 MAX 10]] and [[Boeing 787 Dreamliner]].<ref>{{cite news|url=https://www.ifn.news/posts/garuda-indonesia-to-order-boeing-737-max-10-and-787-dreamliner/|title=Garuda Indonesia to order Boeing 737 MAX 10 and 787 Dreamliner|website=International Flight Network|date=2 May 2019}}</ref>
|-
| rowspan="2" |[[Boeing 777|Boeing 777-300ER]]
| rowspan="2" |10<ref name="Fleet Revitalization" />
| rowspan="2" |—
|8
|38
|268
|314
| rowspan="2" |
|-
|—
|26
|367
|393
|-
|[[Bombardier CRJ1000]]
|18<ref name="Fleet Revitalization" />
|—
|—
|12
|84
|96
|Operating under the ''Explore Jet'' subbrand<br />Planned to be deployed to [[Citilink]]<ref>{{cite web|url=https://centreforaviation.com/news/garuda-considering-crj1000-aircraft-to-be-deployed-at-citilink-844774|title=Garuda considering CRJ1000 aircraft to be deployed at Citilink|publisher=CAPA – Centre for Aviation|website=centreforaviation.com|language=en|access-date=2018-10-13}}</ref>
|-
!Total
!142
!14
! colspan="5" |
|}
</center>
=== Historic fleet ===
{{multiple image
<!-- Essential parameters -->|align=right|direction=vertical|width=200|image1=|caption1=A [[Boeing 747-200]] landing at [[Kai Tak Airport]].|width1=|image2=|width2=|alt2=|caption2=An [[Airbus A300|Airbus A300B4-220FF]] landing at [[Kai Tak Airport]]|header=Garuda Indonesia's Former fleet|header_align=center|header_background=|footer=|footer_align=<!-- left/right/center -->|footer_background=|background color=}}
<center>
<!--Do not add aircraft to this list unless all of that type have been retired. This means don't add any 737-800s that are no longer operated to this list. -->
{| class="wikitable" style="margin:0.5em auto;text-align:center"
|+Previously operated<ref>{{cite web|archive-url=https://web.archive.org/web/20130520104512/http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/corporate-profile/history/aircraft.page|archive-date=20 May 2013|url=http://www.garuda-indonesia.com/us/investor-relations/about-garuda-indonesia/corporate-profile/history/aircraft.page|title=Garuda Indonesia|publisher=Garuda Indonesia|accessdate=17 June 2013}}</ref>
!Aircraft
!Total
!Introduced
!Retired
!Replacement
!Notes
|-
|[[Airbus A300|Airbus A300B4-200FF]]
|8
|1981
|2002
|[[Airbus A330]]
|Launch customer
|-
|[[Airbus A300|Airbus A300-600R]]
|13
|1990
|2001
|[[Airbus A330]]
|
|-
|[[Boeing 737 Classic|Boeing 737-300]]
|29
|1989
|2014
|[[Boeing 737 Next Generation|Boeing 737-800]]<br />[[Bombardier CRJ1000]]
|
|-
|[[Boeing 737 Classic|Boeing 737-400]]
|27
|1993
|2011
|[[Boeing 737 Next Generation|Boeing 737-800]]
|
|-
|[[Boeing 737 Classic|Boeing 737-500]]
|5
|1997
|2016
|[[Boeing 737 Next Generation|Boeing 737-800]]<br />[[Bombardier CRJ1000]]
|
|-
|[[Boeing 747|Boeing 747-200]]
|33
|1980
|2003
|[[Boeing 747-400]]
|
|-
|[[Boeing 747-400]]
|14
|1994
|2017
|[[Boeing 777|Boeing 777-300ER]]
|
|-
|[[Consolidated PBY Catalina|Consolidated PBY-5A Catalina]]
|{{Unknown}}
|1950
|1953
|{{Unknown}}
|
|-
|[[Convair CV-240 family|Convair 240]]
|{{Unknown}}
|1950
|1965
|[[Fokker F27 Friendship|Fokker F27-200]]
|
|-
|[[Convair CV-240 family|Convair 340]]
|{{Unknown}}
|1952
|1968
|[[Fokker F27 Friendship|Fokker F27-200]]
|The first Hajj flight was operated by this aircraft
|-
|[[Convair CV-240 family|Convair CV-440]]
|{{Unknown}}
|1956
|1970
|[[Fokker F27 Friendship|Fokker F27-200]]
|
|-
|[[Convair 990 Coronado|Convair CV-990]]
|3
|1962
|1975
|[[Douglas DC-8|Douglas DC-8-50]]
|First jet aircraft in fleet
|-
|[[de Havilland Heron]]
|14
|1952
|1956
|{{Unknown}}
|
|-
|[[Douglas DC-3]]
|{{Unknown}}
|1949
|1970
|[[Fokker F27 Friendship|Fokker F27-200]]<br />[[Lockheed L-188 Electra]]
|
|-
|[[Douglas DC-8|Douglas DC-8-50]]
|12
|1966
|1980
|[[Airbus A330]]
|
|-
|[[Fokker F27 Friendship|Fokker F27-200]]
|{{Unknown}}
|1967
|1975
|[[Fokker F28 Fellowship|Fokker F28 Mk-1000]]
|
|-
|[[Fokker F27 Friendship|Fokker F27-600]]
|12
|1969
|1977
|[[Fokker F28 Fellowship|Fokker F28 Mk-1000]]
|
|-
|[[Fokker F28 Fellowship|Fokker F28 Mk-1000]]
|24
|1969
|1982
|[[Fokker F28 Fellowship|Fokker F28 Mk-3000]]
|
|-
|[[Fokker F28 Fellowship|Fokker F28 Mk-3000]]
|7
|1973
|1999
|[[Boeing 737 Classic]]
|Launch customer
|-
|[[Fokker F28 Fellowship|Fokker F28 Mk-4000]]
|{{Unknown}}
|1978
|2001
|[[Boeing 737 Classic]]
|
|-
|[[Lockheed L-188 Electra]]
|3
|1960
|1976
|[[Boeing 737 Classic]]
|
|-
|[[McDonnell Douglas DC-9|McDonnell Douglas DC-9-30]]
|25
|1970
|1993
|[[Boeing 737 Classic]]
|
|-
|[[McDonnell Douglas DC-10|McDonnell Douglas DC-10-30]]
|26
|1976
|2005<ref name="airfleets.net">{{cite web|title=Garuda PK-GIB (McDonnell Douglas DC-10 – MSN 46919) {{!}} Airfleets aviation|url=http://www.airfleets.net/ficheapp/plane-dc10-46919.htm|website=www.airfleets.net|accessdate=2015-07-23}}</ref>
|[[Airbus A330]]
|
|-
|[[McDonnell Douglas MD-11]]
|18
|1990
|2001
|[[Airbus A330]]
|
|}
</center>
== Services ==
Garuda Indonesia is a full-service airline featuring economy, business and first classes. The airline began to introduce new premium products and services with the arrival of the [[Airbus A330|Airbus A330-200]] and [[Boeing 737-800]] aircraft. First class cabins were introduced in 2013 on board the [[777-300ER|Boeing 777-300ER]] with [[Wi-Fi]] and telecommunication services on board.<ref>{{cite web|url=http://finance.detik.com/read/2013/12/19/100630/2446239/1036/terbang-bersama-pesawat-garuda-a330-bisa-terhubung-wifi|title=Terbang Bersama Pesawat Garuda A330 Bisa Terhubung WiFi|date=19 December 2013}}</ref>
=== Cabin ===
'''First Class'''
[[First class (aviation)|First class]] is available on two Boeing 777-300ER aircraft, featuring eight suites arranged in a 1-2-1 configuration. The first class seats are suites, with sliding doors for extra privacy. They feature 24" [[Video on demand|AVOD]] screen and [[Airline seat|seats]] that converts into a bed, as well as a touchscreen seat controller. There is a chef onboard the aircraft to tend to the passengers' needs. First Class passengers can use in-flight [[Wi-Fi]] connectivity at no extra cost. It has a [[seat pitch]] of 82 inches and a seat width of 22 inches.<ref name="Fleet">{{cite web|url=http://www.garuda-indonesia.com/id/news-and-events/news/garuda-indonesia-operasikan-penerbangan-langsung-jakarta-london.page|title=Garuda Indonesia|publisher=Garuda Indonesia|accessdate=17 June 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130617144643/http://www.garuda-indonesia.com/id/news-and-events/news/garuda-indonesia-operasikan-penerbangan-langsung-jakarta-london.page|archivedate=17 June 2013|df=dmy-all}}</ref><ref>{{cite web|url=http://finance.detik.com/read/2013/07/03/125242/2291331/1036/yuk-jajal-layanan-first-class-garuda-indonesia?|title=Yuk, Jajal Layanan First Class Garuda Indonesia|date=3 July 2013}}</ref><ref>{{cite web|title=The First Class Experience With Garuda Indonesia|url=http://www.airliners.net/aviation-forums/trip_reports/read.main/243586/|accessdate=23 July 2014}}</ref>
The product was originally available on all Boeing 777-300ER aircraft, however, it was decided the final four aircraft would be delivered in a two-class configuration. In 2017, four more aircraft were refitted into the two-class configuration, leaving just two aircraft featuring First Class.
[[檔案:Garuda_Indonesia_B_777_300_ER_Executive_Class.jpg|縮圖|Garuda Indonesia [[Boeing 777]]-300ER Business Class]]
'''Business Class'''<ref>{{cite web|title=Fleet Revitalization|url=http://www.garuda-indonesia.com/us/garuda-indonesia-experience/fly-with-us/our-fleet.page?|work=Garuda Indonesia|accessdate=16 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20121219004754/http://www.garuda-indonesia.com/us/garuda-indonesia-experience/fly-with-us/our-fleet.page|archivedate=19 December 2012|df=dmy-all}}</ref>
Garuda's [[business class]] product, is available on all aircraft except the [[ATR 72|ATR 72–600]] and six older A330-300.
The new Business Class cabin on-board Garuda's [[777-300ER|Boeing 777-300ERs]] are fitted with EADS Sogerma flat-bed seats arranged in a staggered 1-2-1 configuration; allowing for direct aisle access to all passengers. These seats feature a 74" seat pitch, 15" AVOD screen, [[USB]] ports, in-seat laptop power supply, and personal reading light.
Four new A330-300 aircraft, delivered from 2016 onwards, feature the B/E Super Diamond business class seat, featuring all-aisle access, in a staggered 1-2-1 configuration, a 180 degree recline, more storage space, a new 16 inch entertainment screen, and touchscreen seat controls, along with an all new Panasonic eX3 inflight entertainment system.<ref>{{cite web|url=http://www.ausbt.com.au/garuda-gets-new-business-class-for-airbus-a330s|title=Garuda gets new business class for Airbus A330s|last=Flynn|first=David|work=Australian Business Traveller|date=2 February 2016|accessdate=20 September 2016}}</ref>
On-board other [[Airbus A330|Airbus A330s]], the Business Class cabin feature a fully flat-bed seats on all [[A330-200|-200s]] and seven [[A330-300|-300s]] (delivered between 2013 and 2015). However, there are no Business Class seats onboard six older A330-300s. The flat bed seats feature fully flat beds with up to 74" seat pitch. Seats are equipped with personal [[Video on demand|AVOD]] In-Flight Entertainment System (IFE), [[USB]] ports, in-seat laptop power supply, and personal reading light. Business Class seats onboard these are configured in a 2-2-2 configuration.
Garuda's [[Boeing 737-800]] aircraft also features a reclining Business Class product with 42" seat pitch in a 2–2 layout, equipped with an in-seat laptop power supply, personal 9-inch touch-screen & handset activated AVOD In-Flight Entertainment, and personal reading light.
A range of hot and cold beverages are available, along with snacks and/or meals, depending on the length of the flight. Wine and beers are also offered on international flights.
'''Economy Class'''
[[檔案:Garuda_Cabin_(7373630910).jpg|縮圖|Garuda Indonesia [[A330-200]] older Economy Class]]
Economy Class seats are available on all aircraft. Seat configuration is 2–2 on the ATR72 and CRJ1000, 3-3 on the 737, 2-4-2 on the A330 as well as 3-3-3 on the 777. Seat widths range from 17 inches onboard all 737, ATR72 and CRJ1000, to over 18 inches onboard the A330 and 777. Seat pitch is 30 inches on the ATR 72 and Bombardier CRJ1000 aircraft, 31–32 inches on the 737, 32–33 inches onboard the 777, and 33–34 inches onboard the A330.
Seat-back inflight entertainment is offered on all 737s (except PK-GEx series) and all A330s and 777s. With the exception of four newest A330 aircraft (which feature an 11.1 inch touchscreen), every seat has a 9 inch seat-back touchscreen.
===== ESCort =====
ESCort is Garuda's one of two newest onboard class service that was introduced in 2019 exclusively on its flights to and from London Heathrow. On ESCort class, passengers are able to enjoy three whole economy class seats for themselves. The airline provides a mattress, pillow, and duvet cover along with business class meals and amenities for passengers traveling in this class. Passengers are allowed to lie down on the three-seats during the flight.<ref name=":0">{{cite web|url=https://www.garuda-indonesia.com/id/en/special-offers/sales-promotion/escort-dan-premium.page?|title=Fly Long-Haul More Comfortably with Our ESCort and Premium Seats|website=www.garuda-indonesia.com|access-date=2019-02-20}}</ref>
===== Premium Economy =====
Premium Economy is the second onboard class service that Garuda Indonesia introduced in 2019 as it marks its maiden flight from London Heathrow to Denpasar Bali. The Premium Economy class is gives a traveling couple an extra empty seat in the regular economy class cabin. Passengers on Premium Economy can also enjoy 40kg checked baggage allowance along with a business class meal and amenity kit.<ref name=":0" />
=== In-flight entertainment ===
[[In-flight entertainment|In-Flight Entertainment (IFE)]] is available on board most Garuda Indonesia aircraft: all A330s, all 777s, and all but three 737-800s.
Garuda's [[777-300ER|Boeing 777-300ER]], [[Airbus A330|Airbus A330s]], and newer [[Boeing 737-800]] aircraft are equipped with [[Video on demand|Audio video on demand]] In-Flight Entertainment System in all classes. The Economy Class on these aircraft features a 9-inch [[Liquid-crystal display|LCD]] touch-screen, while the Business Class features a 9-inch, 11-inch, and 15-inch touch-screen LCD in Garuda's Boeing 737–800, older Airbus A330-200, and all remaining Airbus A330 series and 777 aircraft respectively. In Business Class on board the [[Airbus A330-300]] and newer [[A330-200]] aircraft, the screens are located on the seat backs or in the armrest of bulkhead rows, while in the older [[Airbus A330-200]] aircraft and [[Boeing 737 Next Generation|Boeing 737-800s]], the screens are stowed in the armrest. In Economy Class, they are on the seat back.<ref>{{cite web|title=In-flight Entertainment|url=http://www.garuda-indonesia.com/us/garuda-indonesia-experience/in-flight/in-flight-entertainment/index.page?|work=Garuda Indonesia|accessdate=16 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20130120053633/http://www.garuda-indonesia.com/us/garuda-indonesia-experience/in-flight/in-flight-entertainment/index.page|archivedate=20 January 2013|df=dmy-all}}</ref>
Garuda introduced a new IFE system onboard four A330-300 aircraft. These come with an 11-inch touchscreen in Economy with a touchpad controller, and a 16-inch touchscreen in Business with a 4.7-inch touchscreen remote. Newspapers and magazines are provided to all passengers on board all flights.<ref name="Inflight">{{cite web|title=In-Flight Service|url=https://www.garuda-indonesia.com/id/en/garuda-indonesia-experience/in-flight/index.page?|publisher=Garuda Indonesia|date=|accessdate=26 October 2015}}</ref> 6 international television channels are available on board the Boeing 777-300ER.<ref name="Connectivity">{{cite web|title=In-Flight Connectivity|url=https://www.garuda-indonesia.com/id/en/garuda-indonesia-experience/in-flight/connectivity/index.page?|publisher=Garuda Indonesia|date=|accessdate=26 October 2015}}</ref>
=== Immigration On-Board (IoB) ===
Immigration on Board (IoB) was a special service created by Garuda Indonesia to provide more convenience for their passengers traveling to Indonesia. With this service, in cooperation with the [[:id:Direktorat Jenderal Imigrasi|Directorate General of Immigration]], an agency under Indonesian Ministry of Law and Human Rights, Garuda Indonesia passengers on certain long haul flights could complete their immigration process on-board before landing and disembarking.
By utilizing this service, Garuda Indonesia passengers did not have to queue at the immigration counter upon arrival at [[Ngurah Rai International Airport]] in [[Denpasar]] or [[Soekarno–Hatta International Airport]] in [[Jakarta]].<ref name="IOB">{{cite web|url=https://www.garuda-indonesia.com/sg/en/garuda-indonesia-experience/in-flight/immigration/index.page|title=Immigration on Board|publisher=Garuda Indonesia|accessdate=2017-05-22}}{{Dead link|date=August 2018|bot=InternetArchiveBot|fix-attempted=yes}}</ref><ref name="test">{{cite web|url=http://www.ausbt.com.au/flight-test-garuda-s-onboard-immigration-service|title=Flight test: Garuda's onboard immigration service – Flights | hotels | frequent flyer | business class – Australian Business Traveller|publisher=Ausbt.com.au|date=2013-09-04|accessdate=2014-04-25}}</ref> The service was stopped since 2014
=== Ticketing ===
[[檔案:Soekarno-Hatta_Garuda_Ticket_Box.JPG|縮圖|Former Garuda Indonesia ticket sales counter at [[Soekarno–Hatta International Airport]]]]
A Jakarta-based 24-hour call center is available for local customer access where payment can be made by credit cards, internet/mobile banking or transfer via ATM. Recently online booking from their website is also possible with payment can be made online with credit cards from select countries.
In April 2011, Garuda Indonesia announced plans to develop online sales. Garuda Indonesia had cooperated with [[Visa Inc.|Visa]] and [[MasterCard]] to develop an online credit card payment system, allowing customers to use [[PayPal]]. Debit card payments may be processed with [[Bank Mandiri]], [[Bank Central Asia|BCA]] or [[Bank Maybank Indonesia|BII]].<ref>{{cite web|url=http://www.thejakartapost.com/news/2011/04/28/garuda-indonesia-targets-online-sales.html|title=Garuda Indonesia targets online sales|work=The Jakarta Post|date=28 April 2011|accessdate=22 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20121009233830/http://www.thejakartapost.com/news/2011/04/28/garuda-indonesia-targets-online-sales.html|archivedate=9 October 2012|df=dmy-all}}</ref><ref>{{cite web|url=http://www.thejakartapost.com/news/2011/04/29/garuda-bii-ink-deal-online-payment.html|title=Garuda, BII ink deal on online payment|work=The Jakarta Post|date=29 April 2011|accessdate=22 January 2013}}</ref>
== Frequent-flyer program ==
[[檔案:GarudaMiles_logo.svg|連結=Special:FilePath/GarudaMiles_logo.svg|左|縮圖|NaNxNaN像素|GarudaMiles logo.]]
Garuda Frequent Flyer, Garuda Indonesia's [[frequent-flyer program]] was launched in September 1999.<ref>[http://suarapembaca.detik.com/read/2008/09/11/165556/1004663/283/penjelasan-pengenaan-biaya-garuda-free-flight detikcom: Penjelasan Pengenaan Biaya Garuda Free Flight] {{webarchive|url=https://web.archive.org/web/20090103234729/http://suarapembaca.detik.com/read/2008/09/11/165556/1004663/283/penjelasan-pengenaan-biaya-garuda-free-flight|date=3 January 2009}}. Suarapembaca.detik.com (3 September 2008). Retrieved 25 November 2010.</ref>
In 2005, Garuda Indonesia relaunched its ''Garuda Frequent Flyer'' (GFF) with a new look, benefits and services. The new program allows members to earn miles on domestic and international flights and has four tiers of membership covering GFF Junior, Blue, Silver, Gold, and Platinum status levels. Since June 2011 Garuda Indonesia launched a joint frequent flyer program with [[Korean Air]]. Members of the Garuda Frequent Flyer (GFF) program and Korean Air’s SkyPass program will benefit from the cooperation by accruing mileage for flying both Korean Air and Garuda or any Garuda–Korean Air code share flights.<ref>{{cite web|url=http://www.thejakartapost.com/news/2011/06/27/garuda-teams-with-korean-air-frequent-flyer-program.html|title=Garuda teams with Korean Air on frequent flyer program|work=Jakarta Post|date=27 June 2011|accessdate=22 January 2013}}</ref>
From 27 March 2014, due to joining SkyTeam, Garuda Indonesia announced that Garuda Frequent Flyer renamed as GarudaMiles.<ref>{{cite web|url=https://www.garudamiles.com|archive-url=https://web.archive.org/web/20140329052229/http://www.garudamiles.com/|dead-url=yes|archive-date=2014-03-29|title=Beranda|publisher=GarudaMiles|date=|accessdate=2014-04-25}}</ref><ref>{{cite web|url=http://indo-aviation.com/2014/03/27/layanan-garudamiles-resmi-diluncurkan-garuda-indonesia/|title=Layanan "GarudaMiles" Resmi Diluncurkan Garuda Indonesia | Indo-Aviation | Aviation News Portal|publisher=Indo-Aviation|date=|accessdate=2014-04-25|archive-url=https://web.archive.org/web/20140401111712/http://indo-aviation.com/2014/03/27/layanan-garudamiles-resmi-diluncurkan-garuda-indonesia/|archive-date=1 April 2014|dead-url=yes|df=dmy-all}}</ref> Currently, GFF Gold and Platinum members whose membership expires in February, are being sent their new card under GarudaMiles, with other GFF members following soon.<ref>{{cite web|url=https://gff.garuda-indonesia.com/TopHome/news-and-offers/gff-info/Your-New-GarudaMiles-Membership-Card-is-Being-Delivered|title=Beranda » GarudaMiles|author=Roy Adi|publisher=|accessdate=24 April 2015}}</ref> Before joining SkyTeam, GFF members could earn/redeem their miles with (besides Garuda & Citilink) [[Korean Air]], [[Etihad Airways]] and [[Air France]]-[[KLM]] (Flying Blue). They do also operated another Frequent Flyer which is [[Flying Blue]] since 2015.<ref>{{cite web|url=https://gff.garuda-indonesia.com/TopHome/earn-gff-miles/fly/|title=Garuda Frequent Flyer|publisher=Gff.garuda-indonesia.com|date=|accessdate=2014-04-25}}</ref>
=== Lounge ===
[[檔案:Garuda_Indonesia_Executive_Lounge_Soekarno_Hatta_01.jpg|縮圖|Business Lounge at Terminal 3 of [[Soekarno–Hatta International Airport|Soekarno-Hatta Airport]]]]
[[檔案:Garuda_Lounge_Hang_Nadim.jpg|右|縮圖|Garuda Indonesia Business Lounge at [[Hang Nadim Airport]]]]
==== Business Class lounge ====
The Garuda Business Lounge is open to passengers travelling in Business Class, as well as those holding a Platinum GarudaMiles card. Lounges are located at [[Soekarno–Hatta International Airport]] and throughout Indonesia, offering food and drinks, wireless internet, showers, meeting rooms and business services.<ref>[http://www.garuda-indonesia.com/index.php?menu=page&pageid=19 Garuda on the ground] {{webarchive|url=https://web.archive.org/web/20071104124829/http://www.garuda-indonesia.com/index.php?menu=page&pageid=19|date=4 November 2007}}</ref>
==== First Class lounge ====
Garuda Indonesia First Class Lounge is located only in Soekarno–Hatta International Airport.The lounge's facilities including favorite reading materials, a small library, a cigar room, kitchen, Prayer room (Musholla), nursery room, disabled toilet, showers and a self-played [[piano]]. The lounge is also providing selected foods and beverages.
==== Emerald Sky Lounge ====
==== Garuda Executive Lounge ====
== ''Sponsorships'' ==
Garuda Indonesia was the official sponsor of the [[2011 Southeast Asian Games]]. Garuda Indonesia also support the "[[Wonderful Indonesia]]" tourism campaign by placing the "Wonderful Indonesia" logo in their promotion materials as well as on the hull of their fleet.<ref>{{cite web|title=Garuda Indonesia Dukung "Wonderful Indonesia"|date=21 February 2012|url=http://bisniskeuangan.kompas.com/read/2012/02/21/15140060/Garuda.Indonesia.Dukung.Wonderful.Indonesia.|publisher=Kompas.com|language=Indonesian|accessdate=12 March 2014}}</ref>
[[檔案:Garuda_Indonesia_A330-300_PK-GPA_in_Liverpool_FC_onboard_markings_landing_runway_27_at_Liverpool_John_Lennon_airport-2.jpg|縮圖|Garuda Indonesia [[Airbus A330-300]] in Liverpool FC onboard marking at [[Liverpool John Lennon Airport]]]]
In July 2012, Garuda Indonesia signed a 3-year sponsorship deal with [[Premier League]] club [[Liverpool F.C.|Liverpool FC]]. The agreement gives Garuda Indonesia the right to be the Official Partner of Liverpool Football Club and the Official Global Airline Partner of Liverpool Football Club. In addition, a six-minute advertisement video of Garuda Indonesia will be broadcast during matches held at the Liverpool FC home ground, [[Anfield]], for the 2012–2014 season.<ref>{{cite web|url=http://www.thejakartapost.com/news/2012/07/11/garuda-forms-partnership-with-liverpool-fc.html|title=Garuda forms partnership with Liverpool FC|date=11 July 2012|deadurl=yes|archiveurl=https://web.archive.org/web/20120712131719/http://www.thejakartapost.com/news/2012/07/11/garuda-forms-partnership-with-liverpool-fc.html|archivedate=12 July 2012|df=dmy-all}}</ref><ref>{{cite web|url=http://www.liverpoolfc.com/news/latest-news/garuda-indonesia-signs-with-lfc|title=Garuda Indonesia signs with LFC|publisher=Liverpool FC|date=12 July 2012|accessdate=22 January 2013|deadurl=yes|archiveurl=https://web.archive.org/web/20121228164350/http://www.liverpoolfc.com/news/latest-news/garuda-indonesia-signs-with-lfc|archivedate=28 December 2012|df=dmy-all}}</ref>
This collaboration with Liverpool will give Garuda Indonesia media '' exposure '' to increase brand awareness in the international market more effectively with more maximal benefits, given the '' brand '' Garuda Indonesia will get a higher frequency of delivery with a longer broadcast duration. In 2013, Liverpool toured Asia with one of the countries the goal was Indonesia. Through the tour visit, it is expected that this visit will improve the quality of football matches in Indonesia. <ref> {{cite web|url=http://www.thejakartapost.com/news/2012/07/11/garuda-forms-partnership- with-liverpool-fc.html|title=Garuda forms partnership with Liverpool FC|accessdate=July 11, 2012}}</ref>
To support the visit target of 20 million tourists in 2019, Garuda Indonesia will increase the number of aircraft fleets that have been installed with the 'Wonderful Indonesia' logo on their aircraft starting this year. Business Director of Garuda Indonesia, Handayani at the Tourism Ministry's End-of-Year Press Conference at Sapta Pesona Building, Ministry of Tourism Office of the Republic of Indonesia, Jakarta said, in February 2016 there will be at least five additional Garuda Indonesia aircraft that have the Wonderful Indonesia logo as a form of cooperation between Garuda Indonesia and the Ministry of Tourism. "Hopefully it can support Indonesia's tourism," said Handayani. In addition, Garuda Indonesia will provide tourism support in the form of developing flight routes by strengthening flight routes that are superior in the tourism sector, such as Labuan Bajo, Lombok, and Wakatobi. <ref> http://indo-aviation.com/2015/12/31/Garuda-indonesia-akan-tempel-logo-wonderful-indonesia-di-pesawat/</ref>
== Market share ==
{{Pie chart|thumb=right|caption=Aviation market share in Indonesia (2015)<ref name="JG-Avi-Share">{{cite news |title=Lion Loses Market Share as Air Travel Growth Slows |newspaper=Jakarta Globe |url=http://jakartaglobe.beritasatu.com/business/lion-loses-market-share-air-travel-growth-slows/ |access-date=2 December 2018 |archive-url=https://web.archive.org/web/20160305112537/http://jakartaglobe.beritasatu.com/business/lion-loses-market-share-air-travel-growth-slows/ |archive-date=5 March 2016 |dead-url=yes |df=dmy-all }}</ref>|label1=[[Lion Air]]|value1=41.6|color1=Red|label2=Garuda Indonesia|value2=23.5|color2=DodgerBlue|label3=[[Sriwijaya Air]]|value3=10.4|color3=Blue|label4=[[Citilink]]|value4=8.9|color4=Green|label5=[[Wings Air]]|value5=4.7|color5=OrangeRed|label6=[[Indonesia AirAsia]]|value6=4.4|color6=DarkRed|label7=Others|value7=6.5|color7=White}}
For most of modern Indonesian history, Garuda Indonesia has dominated the Indonesian air travel market share. However, started in 2000, [[Lion Air]] started to grow and become a serious rival in domestic air travel in Indonesia. By mid 2015, Lion Air rules Indonesia's domestic air travel market share by 41.6 percent, while Garuda Indonesia came in second with 23.5 percent share. [[Sriwijaya Air]] came in third with a market share of 10.4 percent, followed by Garuda's low-cost subsidiary [[Citilink]] (8.9 percent) and Lion Air's regional flight service Wings Air (4.7 percent). [[Indonesia AirAsia]], a unit of the Malaysian budget airline, had a 4.4 percent market share.<ref name="JG-Avi-Share" />
Overall, Indonesian domestic air travel business is overwhelmingly ruled by two groups; Lion Air group and Garuda Indonesia group. By mid 2015, Lion Air group accounted for 43.17 percent of market share, while Garuda Indonesia group had a 37.08 percent market share.<ref>{{cite news|work=CNN Indonesia|language=Indonesian|title=Garuda Indonesia Gerus Pangsa Pasar Penumpang Domestik Lion|date=2015-06-04|author=Safyra Primadhyta & Gentur Putro Jati|url=http://www.cnnindonesia.com/ekonomi/20150604112341-92-57614/garuda-indonesia-gerus-pangsa-pasar-penumpang-domestik-lion/}}</ref>
For international routes, Garuda Indonesia has identified four airlines that became the benchmark to improve their service and to compete to be the world's best airline. The serious rivals for Garuda Indonesia's international routes are [[Singapore Airlines]], [[Qatar Airways]], [[Emirates (airline)|Emirates]] and [[Cathay Pacific]].<ref>{{cite web|title=Empat Maskapai Ini Dianggap Sebagai Pesaing Utama Garuda Indonesia|work=indo-aviation.com|url=http://indo-aviation.com/2015/06/20/empat-maskapai-ini-dianggap-sebagai-pesaing-utama-garuda-indonesia/|language=Indonesian|access-date=18 April 2016|archive-url=https://web.archive.org/web/20160408002044/http://indo-aviation.com/2015/06/20/empat-maskapai-ini-dianggap-sebagai-pesaing-utama-garuda-indonesia/|archive-date=8 April 2016|dead-url=yes|df=dmy-all}}</ref>
== Incidents and accidents ==
* On 17 November 1950, a Douglas C-47A-65-DL (DC-3) ran off runway and hit a ditch during landing at Surabaya Juanda Airport, killing 2 crew aboard, while 20 passengers and 1 crew member survived.
* On 3 February 1961, a [[Douglas DC-3]] operating flight 542 went missing while flying over the [[Java Sea]]. All 5 crew and 21 passengers on board were believed to have perished.<ref>{{cite web|title=Accident description|publisher=Aviation Safety Network|url=http://aviation-safety.net/database/record.php?id=19610203-1|accessdate=11 December 2012}}</ref>
* On 1 January 1966, two Garuda Douglas DC-3s (PK-GDE and PK-GDU) collided while on approach into [[Palembang Airport]], Indonesia, crashing into a swamp. All 34 occupants (17 on each aircraft) were killed in the accident.<ref>{{cite web|title=Accident description|publisher=Aviation Safety Network|url=https://aviation-safety.net/database/record.php?id=19660101-0|accessdate=17 January 2018}}</ref><ref>{{cite web|title=Accident description|publisher=Aviation Safety Network|url=https://aviation-safety.net/database/record.php?id=19660101-1|accessdate=17 January 2018}}</ref>
* On 16 February 1967, [[Garuda Indonesia Flight 708]] crashed on landing at [[Manado]], capital of the [[North Sulawesi]] province, killing 22 out of 84 passengers.
* On 28 May 1968, a [[Convair 990 Coronado|Convair 990]] bound for [[Karachi]], [[Pakistan]] crashed into the sea shortly after taking off from [[Chhatrapati Shivaji International Airport|Bombay Santa Cruz airport]]. All 29 people on board (15 passengers and 14 crew members) died. In addition, there was one casualty on the ground.
* On 7 September 1974, a [[Fokker F27 Friendship|Fokker F-27]] crashed on approach to [[Radin Inten II Airport|Tanjung Karang-Branti Airport]]. The aircraft crashed short of the runway while on approach in limited visibility . The aircraft eventually struck buildings near the runway and caught fire. 33 out of 36 people on board perished.
* On 24 September 1975, [[Garuda Indonesia Flight 150]] crashed on approach to Sultan Mahmud Badaruddin II Airport. The accident, which was attributed to poor weather and fog, killed 25 out of 61 passengers and one person on the ground.
* On 11 July 1979, a [[Fokker F28 Fellowship|Fokker F-28]] on a [[1979 Garuda Fokker F28 crash|domestic flight]] hit a volcano on approach to Medan Airport, Indonesia. All 61 people on board were killed.<ref>{{cite web|title=Accident description|publisher=Aviation Safety Network|url=http://aviation-safety.net/database/record.php?id=19790711-0|accessdate=7 July 2011}}</ref>
* On 28 March 1981, [[Garuda Indonesia Flight 206]], a McDonnell Douglas DC-9-32, PK-GNJ "Woyla", was hijacked on a domestic flight from Palembang to Medan by five heavily armed hijackers. The hijackers diverted the flight to Penang, and then to Bangkok. The hijackers demanded the release of 84 political prisoners in Indonesia. On the third day of the hijacking (31 March 1981) the airplane parked in Bangkok [[Don Muang International Airport]] was stormed by [[Kopassus|Indonesian commandos]] One of the commandos was shot, probably by his comrades, as was the pilot, also probably by Indonesian commandos. The rest of the hostages were released unharmed. Two of the hijackers surrendered to the Thai commandos, but they were killed by the Indonesian commandos on the plane taking them back to Jakarta.<ref>{{cite book|author=Conboy, Ken|title=Kopassus: Inside Indonesia's Special Forces|year=2004|publisher=Equinox Publishing|isbn=978-9799589880|pages=277–278}}</ref><ref>{{cite web|work=Aviation Safety Network|title=Hijacking description : Saturday, 28 March 1981|url=https://aviation-safety.net/database/record.php?id=19810328-0|accessdate=16 December 2015}}</ref>
* On 20 March 1982, a Fokker F-28 on a [[1982 Garuda Fokker F28 crash|domestic flight]] overran the runway at [[Radin Inten II Airport|Tanjung Karang-Branti Airport]] in bad weather. The aircraft subsequently burst into flames killing all 27 people on board.<ref>{{cite web|url=http://aviation-safety.net/database/record.php?id=19820320-1|title=Accident Description|publisher=Aviation Safety Network|accessdate=18 December 2016}}</ref>
* On 30 December 1984, a [[Douglas DC-9-34|DC-9-30]] on a domestic flight touched down 1800m down the runway and overran through a ditch, trees and a fence at [[Radin Inten II Airport|Ngurah Rai International Airport]]. The aircraft broke in 3 and caught fire.<ref>{{cite web|url=http://aviation-safety.net/database/record.php?id=19841230-0|title=Accident description|publisher=Aviation Safety Network|accessdate=18 December 2016}}</ref>
* On 4 April 1987, [[Garuda Indonesia Flight 035]] hit a pylon and crashed on approach to [[Soewondo Air Force Base|Polonia International Airport]] in bad weather. 23 people were killed.<ref name="ASN19870404-1">{{ASN accident|id=19870404-1}}</ref>
* On 13 June 1996, [[Garuda Indonesia Flight 865]] overran the runway at [[Fukuoka Airport]], Japan after aborting takeoff well above rotation speed. The number-3 engine fuel line was severed, resulting in a massive fire and the total destruction of the rear end of the aircraft. Three of the 275 people on board were killed.<ref>{{cite web|url=http://www.airdisaster.com/cgi-bin/view_details.cgi?date=06131996®=PK-GIE&airline=Garuda+Indonesia|title=Air Disasters – 1996 Crash|publisher=Airdisaster.com|date=13 June 1996|accessdate=22 January 2013}}</ref>
* On 26 September 1997, [[Garuda Indonesia Flight 152]], an [[Airbus A300|Airbus A300B4-220]] flying from Jakarta to Medan, crashed in Sibolangit, {{convert|18|mi|km}} short of Medan airport in low visibility, killing all 234 people on board. It is the deadliest aviation incident in [[Indonesia]].<ref>{{cite web|url=http://www.airdisaster.com/cgi-bin/view_details.cgi?date=09261997®=PK-GAI&airline=Garuda+Indonesia|title=Air Disasters – 1997 Crash|publisher=Airdisaster.com|date=26 September 1997|accessdate=22 January 2013}}</ref>
* On 16 January 2002, [[Garuda Indonesia Flight 421]] en route from [[Selaparang Airport|Lombok]] to [[Adisutjipto International Airport|Yogyakarta]] was forced to make an emergency landing but finally crashed in poor weather on the [[Solo River]], due to an engine [[flameout]] caused by water and hail ingestion. One person, a stewardess, was killed in the accident.<ref>{{cite web|url=http://www.airdisaster.com/cgi-bin/view_details.cgi?date=01162002®=PK-GWA&airline=Garuda+Indonesia|title=Air Disasters – 2002 Crash|publisher=Airdisaster.com|date=16 January 2002|accessdate=22 January 2013}}</ref>
* On 7 September 2004, human rights activist [[Munir Said Thalib]] was murdered on Garuda Indonesia Flight 974, bound for Amsterdam.<ref name="autogenerated2" /> Garuda's CEO at the time, Indra Setiawan, his deputy Rohainil Aini, and pilot [[Pollycarpus Priyanto]] were all convicted of his murder.<ref name="autogenerated3" /><ref name="autogenerated5" /> Garuda was found negligent in failing to perform an emergency landing and was ordered to pay compensation to Munir's widow,<ref name="autogenerated4" /> but did not do so immediately.<ref name="autogenerated6" />
* On 7 March 2007, [[Garuda Indonesia Flight 200]], a [[Boeing 737-400]] flying from Jakarta to Yogyakarta, overran the runway on landing at [[Adisutjipto International Airport]], [[Yogyakarta]]. 21 people were killed when the aircraft burst into flames.<ref>[http://www.news.com.au/dailytelegraph/index/0,22045,5012584,00.html Daily Telegraph March 2007 Crash] {{webarchive|url=https://web.archive.org/web/20090401190120/http://www.news.com.au/dailytelegraph/index/0%2C22045%2C5012584%2C00.html|date=1 April 2009}}</ref>
* On 3 February 2015, Garuda Indonesia Flight 7040, an ATR 72 registered PK-GAG, overran the runway at [[Lombok International Airport]] on landing. There were no injuries, but the airport had to be closed for several hours.
* On 1 February 2017, Garuda Indonesia Flight 258, a Boeing 737–800 registered PK-GNK, overran the runway at [[Adisutjipto International Airport]] on landing in heavy rain. There were no injuries to the 119 passengers and the 5 crew onboard.<ref>{{cite web|url=http://regional.kompas.com/read/2017/02/01/21175591/pesawat.garuda.tergelincir.di.bandara.adisutjipto|title=Pesawat Garuda Tergelincir di Bandara Adisutjipto|publisher=Kompas.com|date=1 February 2017|accessdate=4 February 2017}}</ref>
== 他策 ==
{{Portal|Aviation|Companies|Indonesia}}
* [[Tourism in Indonesia]]
* [[Aviation in Indonesia]]
* [[List of airlines of Indonesia]]
* [[List of airports in Indonesia]]
* [[List of companies of Indonesia]]
* [[Transport in Indonesia]]
* [[Citilink]]
{{Clear}}
== 攷 ==
{{Reflist|30em}}
== 外鏈 ==
{{Commons category inline|Garuda Indonesia}}
* [http://www.garuda-indonesia.com/ Official website] {{en icon}} {{id icon}} {{ja icon}} {{nl icon}} {{zh icon}}
* [https://web.archive.org/web/*/http://www.garuda.co.id/ Official website] (1996–1997)
* [http://www.garuda-indonesia.com/files/pdf/AR-GA-2012.pdf Garuda Annual Report 2012]
* [http://www.colours-indonesia.com Colours Garuda Indonesia Magazine]
{{Garuda Indonesia}}
{{Navboxes|list={{Airlines of Indonesia}}
{{SkyTeam}}
{{IATA members|asia}}
{{Association of Asia Pacific Airlines}}}}
{{Authority control}}
[[分類:Airlines established in 1949]]
[[分類:Airlines of Indonesia]]
[[分類:Association of Asia Pacific Airlines]]
[[分類:Companies listed on the Indonesia Stock Exchange]]
[[分類:Garuda Indonesia| ]]
[[分類:Government-owned airlines]]
[[分類:Government-owned companies of Indonesia]]
[[分類:IATA members]]
[[分類:Indonesian brands]]
[[分類:SkyTeam]]
[[分類:Former seaplane operators]]
awi9z8pu08aqp3icjdjewunwwle7faf
用戶:Dasze/羯族
2
91216
448785
338458
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/羯族]]至[[用戶:Dasze/羯族]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
338458
wikitext
text/x-wiki
'''羯族''',略稱'''羯''',不長於史。在東晉十六國時期建立了後趙政權,為北方游牧民族匈奴族貴族之奴隸軍隊。匈奴造反之時候,羯人強大,最後消滅了匈奴政權。五胡亂華時期之一段時間內在中國北方地區稱霸,為北方游牧民族政權之一。
== 名 ==
中國史書對於羯人起源記載不詳,在晉朝之前沒有記載。第一個被記載下來之羯人為後趙之創建者石勒,居於[[并州]][[上黨]][[武鄉]],源自於[[南匈奴]]19種中之[[羌渠]]種,為[[匈奴]]部落之中之世襲領袖<ref>《晉書》〈石勒載記〉:「石勒,字世龍,初名,上黨武鄉羯人也。其先匈奴別部羌渠之冑。」</ref><ref>《[[s:世說新語|世說新語]]》〈[[s:世說新語/7|識鑒第七]]〉:「石勒不知書,使人讀《漢書》。聞酈食其勸立六國後,刻印將授之,大驚曰:『此法當失,云何得遂有天下?』至留侯諫,乃曰:『賴有此耳!』」[[劉孝標]]註:「勒字世龍,上黨武鄉人,匈奴之苗裔也。」</ref>。山西自古居住許多游牧民族,春秋戰國時代有被稱為[[翟戎]]等外族居住,《史記》曾稱此地「羯羠不均」、民風慓悍<ref>《史記》〈貨殖列傳〉:「其民羯羠不均,自全晉之時固已患其僄悍,而武靈王益厲之,其謠俗猶有趙之風也。」</ref><ref name="貨殖列傳索隱">司馬貞《史記索隱》:「羯,音己紇反。羠,音慈紀反。徐廣雲:『羠,音兕,皆健羊也。』其方人,性若羊,健捍而不均。」</ref>。
因為不確定這個名稱為來自漢族或羯人自稱,學者對於羯族之名稱由來有許多猜測。在漢語中,羯之字面意思為[[閹割]]後之公[[山羊]]或公[[綿羊]]<ref>《說文解字》:「羯,羊羖犗也。」</ref>。也有性情強悍之意<ref name="貨殖列傳索隱" />。晉朝時,羯被使用來稱呼雜胡與胡人,匈奴劉淵、劉曜等人也曾被稱為羯胡,所以羯不一定為單指石勒部落<ref>[[王隱]]《晉書》卷1:「永嘉五年。羯賊劉曜破洛。」</ref><ref>《晉書》〈李矩列傳〉:「後劉聰遣從弟暢步騎三萬討矩,屯於韓王故壘,相去七里,遣使招矩。時暢卒至,矩未暇為備,遣使奉牛酒詐降於暢,潛匿精勇,見其老弱。暢不以為虞,大饗渠帥,人皆醉飽。矩謀夜襲之,兵士以賊眾,皆有懼色。矩令郭誦禱鄭子產祠曰:『君昔相鄭,惡鳥不鳴。兇胡臭羯,何得過庭!』」</ref>。此外,在史書中,又稱他們為戎羯、胡羯、羯賊、羯胡、羯虜、匈羯等。[[內田吟風]]認為,羯為漢族對於外族之一種蔑稱<ref>內田吟風《北亞史研究·匈奴篇》({{lang|ja|北アジア史研究匈奴篇}}),東洋史研究叢刊,1988年</ref>。
《魏書》認為,其名稱來自他們之居住地,[[上黨]][[武鄉]]之羯室(今[[山西]][[榆社縣]]),因此被稱為羯胡<ref>《[[s:魏書|魏書]]》〈羯胡石勒傳〉:「其先匈奴別部,分散居於上黨鄉羯室,因號羯胡。」</ref>。[[陳寅恪]]認為,[[康居]]募勇士成為軍隊成員,稱為柘羯<ref>《[[s:新唐書|新唐書]]》[[s:新唐書/卷221|卷221]]〈西域傳下〉:「安者,一曰布豁,又曰捕喝,元魏謂忸蜜者。東北至東安,西南至畢,皆百裏所。西瀕[[烏滸河]],治[[阿濫謐城]],即康居小君長罽王故地。大城四十,小堡千餘。募勇健者為柘羯。柘羯,猶中國言戰士也。」</ref>,之後被省略為羯,成為羯人名稱之由來。
[[前秦]][[苻堅]]曾提出[[五胡]]之說法<ref>《晉書‧苻堅載記》:「萇求傳國璽於堅曰:「萇次膺符曆,可以為惠。」堅瞋目叱之曰:「小羌乃敢幹逼天子,豈以傳國璽授汝羌也,圖緯符命,何所依據?五胡次序,無汝羌名。違天不祥,其能久乎!璽已送晉,不可得也。」」</ref>。[[陳寅恪]]認為,五胡之名,起自於[[五德終始說]],為圖緯符命思想下之產物<ref>[[萬繩楠]]記,[[陳寅恪]]《魏晉南北朝史演講錄》第六篇〈五胡種族問題〉:「姚萇自謂次應歷數,這就出現了一個「五胡次序」的問題。就建國先後而言,是一胡(匈奴),二羯,三鮮卑,四氐,五羌。這五種胡人,在《晉書》103《劉曜載記》中曾經提及。……所謂胡、羯、鮮卑、氏、羌就是「五胡」。但在劉曜的時候,還無「五胡」的名稱。「五胡」名稱最早出自苻堅之口,「次序」也是苻堅講的。」</ref><ref>陳寅恪〈五胡問題及其他〉:「近人繆鳳林氏據苻堅與姚萇語:『五胡次序,無汝羌名』,遂謂『五胡無羌』,非是。蓋不知『五胡次序』,乃圖讖名,『汝』系單數人稱代詞,『羌』爲姚萇之代稱;意即謂:『圖讖中,並無汝姚萇名』也。」,收入《講義及雜稿》,北京三聯書局,2002年。</ref>。元[[胡三省]]註《資治通鑑》時,將羯定義為[[五胡]]之一<ref>《資治通鑑》卷106〈晉孝武帝太元十年八月〉:「五胡次序,無汝羌名。」,胡三省註:「胡,羯,鮮卑,氐,羌,五胡之次序也。無汝羌名,謂讖文耳。姚萇自謂之應歷數,堅故以讖文為言。」</ref><ref>{{cite web|language=zh|url=http://big5.xjass.com/ls/content/2009-12/01/content_120382.htm|title=“五胡”新釋|publisher=新疆哲學社會科學網|author=吳洪琳|date=2013-09-26|accessdate=2013-09-26|deadurl=yes|archiveurl=https://web.archive.org/web/20140407071624/http://big5.xjass.com/ls/content/2009-12/01/content_120382.htm|archivedate=2014-04-07}}</ref>。
羯人為否為獨立民族,或只為一個族群名稱,現在學者仍有爭議,如[[杉山正明]]認為羯就為南匈奴之一部分,中國傳統史家特地將其分出只為為了要搭配五胡這個數字<ref>杉山正明著、黃美蓉譯《遊牧民的世界史》:「所以說,將其稱為五胡十六國,除瞭如同先前所述,是便於時間設定之外,也是相當取巧的文字組合。五胡之中的羯是匈奴,實在沒有必要將其特別分出。總之,就是因為5這個數字太好了,故想要這樣組合。還有,就算說是十六國,但實際上也包含了由漢族建立的政權,這也是因為16這個數字聽起來較順,才故意這樣搭配。」「總之,五胡十六國這個稱呼本身,帶有濃厚的人為意圖成份。老實說,是個從漢語語句的順口程度,及政治上的思想作為,而特意做出的用語。」「回過頭來說,若站在漢族中心主的歷史觀立場來看,就可以了解想要使用五胡十六國的心情。即使是作為敍述上的語彙,確實有其方便之處。再加上我們重複地從歷史教科書等聽到這個詞彙,故也已經聽習慣了。人對於感到熟悉的事物會抱有肯定的情感。但是,不可以忘記這是個隱藏了誤解結構的詞彙及概念。」,頁208-210,台北讀書共和國出版,2013年。</ref>。史書中,又稱他們為[[雜胡]]。[[唐長孺]]認為,雜胡即雜種之胡,為部落間通婚之後代,並不為屬於單一種族。[[陳寅恪]]認為,雜胡即小胡、部落胡,因為他們為附屬在南匈奴之下之小部落,因此被稱為雜胡。
北朝之[[爾朱氏]],在文獻中被稱為羯胡,或契胡。唐朝[[安祿山]],出身[[粟特人]],也被史書稱為羯胡。中國東北之[[靺鞨]],唐初也被寫為靺羯<ref>唐李百藥《北齊書》卷7〈武成帝紀〉:「是歲,室韋、庫莫奚、靺羯、契丹並遣使朝貢。」</ref>,可能也與羯人有關。但因文獻不足,無法確定他們與石勒部落之間之關連。
== 史 ==
西晉滅亡後,匈奴族統治者劉聰佔有了北方大部分土地。公元三百十八年劉聰死,劉曜乘內部變亂之機,奪取政權,遷都長安稱帝,國號為漢國(後被改稱為趙),史稱'''前趙'''。
=== 石勒稱王 ===
石勒舉族遷至襄國來,把朝臣官員包括貴族三百戶遷至崇仁里(今崇里街)。東晉元帝大興二年,石勒反劉曜,自稱大單於、趙王,定都襄國(今河北邢台市),以河內等二十四郡為趙國,擁有民戶二十九萬。因「國」在趙地,為與匈奴貴族劉曜建立之前趙區分,史稱'''後趙''',十六國之一。
時北方漢人約四百萬左右,餘數多逃[[關中]]、[[東晉]]或者為[[遼東]]。後來石勒聽取了謀士之建議,改策略,收降漢人為奴之政策,而非大屠殺。永嘉六年,石勒據漢人張賓建議,定都襄國(今河北省邢台市)。在南方石勒軍長期與祖逖將軍作戰。祖逖將軍死後,沒人能有效之組織北方各堡與胡人對抗。公元三百二十年前後,屈指可數之幾個保壁大帥也最後降石趙,石趙王朝完成了對中原和關中之牢固統治。
石勒為固其統治,重用漢族人趙郡張賓為謀主,宜漢人國策,國力日強。參魏晉之法規,立政制,設庠校,倡經學,閱戶口,勸農桑,對安定社會起到一定作用。惟法政嚴苛,殺人甚多,《晉陽秋》殘本所稱之「胡皇」石勒一次就屠殺百姓數十萬,諸晉史中也有大量屠殺記錄,屠殺在數個州開展。實行「胡漢分治」,禁說「胡」字;稱羯人為國人,稱漢人為漢人,並縱容羯人欺壓異族。朝廷設有專門官吏門臣祭酒,管理羯人訴訟。
公元三百二十一年,遣石虎進取幽州,俘刺史段匹磾,幽州、冀州、并州三州皆歸屬後趙。不久,石虎又率軍進討鮮卑鬱粥於離石,鬱粥逃奔烏桓,石虎悉降其眾,繼爾南下,盡收河南之地。前趙與後趙為爭奪地盤,多次交戰,公元三百二十九年,石勒攻滅前趙,併吞關隴之地。後趙之地「南逾淮海,東濱於海,西至河西,北盡燕代」,統治了北方廣大地區,與江南之東晉政權形成北南對峙局面。石勒在位,實行過一些漢化政策。
公元三百三十三年,石勒死,侄石虎奪取政權。公元三百三十五年,遷都鄴城(今河北臨漳西南)。
=== 石虎奪權 ===
石勒死後傳位於太子石弘,石虎殺死石弘奪取了帝位。石虎和其叔石勒一樣殘暴,更有甚,施行暴政,民不聊生。
石虎殘暴,殺戮漢人。石虎發男女十六萬,運土築華林苑及長牆於鄴北。時逢暴雨,漳水水漲,死者數萬人;他已有多處宮殿,還不滿足,又驅漢丁四十餘萬營洛陽、長安二宮,造成屍積原野;修林苑甲兵,五十萬人造甲,十七萬人造船,死亡超過三分之二;從長安,到洛陽,再到鄴城,成漢之使者見到沿途樹上掛滿上吊自殺之人,城牆上掛滿漢人人頭,屍骨則被做成「屍觀」,恐嚇世人,數萬反抗將士之屍體被棄之荒野餵獸;血腥屠殺和殘酷之民族壓迫,北方漢人銳減至六七百萬,造成赤地千里之景象;人口之大量減少,土地之大量荒蕪,伴之虎狼等野獸成群出現繁殖。
在鄴城大建宮室,築樓台高閣,眾役繁興,加之征伐遼西及東晉之窮兵黷武,終於引發了社會之動盪和人民之強烈反抗。
殘留之漢人,為了免於屠殺,紛紛築堡自衛,與胡人對抗。但這並不意味著一些人認為之「塢堡遍地都為」,當時之北方壁堡也要相隔百里才有一個。按鳴沙屈出土之《鳴沙石室佚書》記錄:「永嘉大亂,中夏殘荒。保壁大帥數不盈四十。多者不過四五千家,少者千家五百家。」
公元三百四十九年,梁犢率邊兵起義,敗後趙之主。
=== 冉魏殺胡 ===
石虎病死後,他之兒子們為爭奪帝位,自相殘殺。
三百四十九年,後趙大將軍石虎養孫石閔(漢族,後改名李閔、冉閔)號召漢族殺胡人,攻殺後趙皇帝石鑑,奪取政權,國號魏,史稱冉魏,仍都鄴城。冉魏政權,號召漢人,針對胡人進行種族滅絕行動,羯胡部落遭到大量殘殺<ref name="晉書石季龍">《[[s:晉書|晉書]]》〈[[s:晉書/卷107|石季龍載記下]]〉:「於是伏都及銖率眾攻閔、農,不克,屯于鳳陽門。閔、農率眾數千毀金明門而入。……閔、農攻斬伏都等,自鳳陽至琨華,橫屍相枕,流血成渠。宣令內外六夷敢稱兵杖者斬之。胡人或斬關,或逾城而出者,不可勝數。使尚書王簡、少府王郁帥眾數千,守鑒於禦龍觀,懸食給之。令城內曰:『與官同心者住,不同心者各任所之。』敕城門不復相禁。於是趙人百里內悉入城,胡羯去者填門。閔知胡之不為己用也,班令內外趙人,斬一胡首送鳳陽門者,文官進位三等,武職悉拜牙門。一日之中,斬首數萬。閔躬率趙人誅諸胡羯,無貴賤男女少長皆斬之,死者二十余萬,屍諸城外,悉為野犬豺狼所食。屯據四方者,所在承閔書誅之,于時高鼻多須至有濫死者半。」</ref><ref>《十六國春秋》:「鑒即位,大赦,以石閔為將軍,封武德王。李農為大司馬。鑒使中書令李松、殿中將軍張才等夜誅閔、農等於琨華殿,不克,禁中擾亂。鑒偽不知,夜斬松等於西中華門。龍驤將軍孫伏都、劉銖等結羯士三千人,伏於胡天,亦欲誅閔等。……伏都等攻閔,不尅。閔、農攻斬伏都等,自鳳陽門至琨華,橫尸相枕,諸胡羯無少長皆斬之,死者二十餘萬。于時高鼻多須,至有濫死者。」</ref><ref>《資治通鑑》卷98〈晉紀〉〈孝宗穆皇帝上之下永和五年〉:「閔、農攻斬伏都等,自鳳陽至琨華,橫尸相枕,流血成渠。宣令內外六夷,敢稱兵仗者斬。胡人或斬關、或逾城而出者,不可勝數。閔使尚書王簡、少府王郁帥衆數千守鑒于禦龍觀,懸食以給之。下令城中曰:『近日孫、劉構逆,支黨伏誅,良善一無預也。今日已後,與官同心者留,不同者各任所之。敕城門不復相禁。』于是趙人百里內悉入城,胡、羯去者填門。閔知胡之不爲己用,班令內外:『趙人斬一胡首送鳳陽門者,文官進位三等,武官悉拜牙門。』一日之中,斬首數萬。閔親帥趙人以誅胡、羯,無貴賤、男女、少長皆斬之,死者二十餘萬,尸諸城外,悉爲野犬豺狼所食。其屯戍四方者,閔皆以書命趙人爲將帥者誅之,或高鼻多須濫死者半。」</ref>,羯人最後主要被冉魏帝冉閔屠滅。
公元三百五十年前後,冉閔推翻後趙王朝,並號召河北等地漢人殺胡復仇,鄴都一地被殺之胡人就高達二十幾萬。氐、羌、胡蠻等各民族不少都返還隴西或河套等地之家鄉,九大石胡甚至遷回中亞。返遷途中各不同民族之胡人相互進攻掠對方,甚至人肉相食,十個人中僅有二三人得以歸。
因為胡人數量大減,民間漢人恢復增長。五胡亂華時之少數民族往往打仗不論男女老少全族皆兵。在十六國南北朝頻繁之戰爭中,胡族大量戰死,胡族彼此之間也相互滅族。民間從事農耕之漢人不斷恢復增長,北朝東西魏之戰爭使胡人人口枯竭。兩國漢族大地主勢力卻強大起來,為補充兵源不足,不得不開始大量起用漢軍。西涼地區之漢軍得到北周起用。正為在這一時期,鮮卑國主們把公主嫁給這些漢族地主勢力以拉攏他們,漢軍之起用為後來楊堅滅胡和隋唐之建立創造外部條件。
公元三百五十二年,鮮卑族首領慕容氏從東北攻入冀州,冉閔兵敗被殺。
=== 羯人族滅 ===
冉魏滅亡後,羯人在鮮卑之統治下以打仗為業。公元547年,羯人在侯景之帶領下跑到南方梁朝統治區躲避北朝之打擊,梁武帝蕭衍接納了他們。但隨後侯景卻進行了叛亂,掠殺江南,赤地千里、屍骨遍地,僅建康城,屠絕全城四萬戶(約二十萬人),史稱[[侯景之亂]]。後有[[南梁]]大將王僧辯,召陳霸先、杜龕、韋載等人伐之,花了很大代價才撲滅叛亂,此後這一種族在史書上消失。
惟有學者認為爾朱榮包括侯景這些所謂羯胡與十六國時期之羯胡不為一回事。北齊書封隆之傳記載:「既至信都,集諸州郡督將僚吏等議曰:『逆胡爾朱兆窮凶極虐,天地之所不容,人神之所捐棄,今所在蜂起,此天亡之時也。欲與諸君剪除兇羯,其計安在?』」學者認為,羯胡本屬雜胡,羯人之血統本來就很雜,時人思羯人不可開化,只識殺戮,所以史官把有過「河陰之變」屠殺之爾朱榮跟亂江南之侯景寫成羯胡(實際上爾朱榮應該為山胡,侯景有可能為有鮮卑血脈之雜胡)。根據北齊書與北史、粱書之前此二人並沒有被記載為羯人。
== 築 ==
公元319年,石勒即大單于、趙王位,榮登皇帝寶座,改元建平,依張賓之言,定都襄國。石勒按周禮建宗廟社稷靈臺,營造東西官署,歷十八年完成了都城之建設。都城周長九里十三步,四角有子城拱衛,名「建平大城」。都城建四門,在永豐門擺上從洛陽拉來之銅馬和翁仲,在城內修造正陽門、端門、建德殿、太武殿、徵文殿、單于庭、東堂、西閣、崇訓宮、百尺樓、后宮等宮殿群,其中太武殿基座高二丈八尺,用名貴之大理石鋪設裝飾,下面為暗藏之房間,可以盛下五百名衛兵,負責保衛皇宮之安全。巍峨之太武殿,東西長有七十五步,南北長有六十五步,漆金之瓦當,純金之柱子,純銀之楹聯,珍珠之簾子,玉石裝飾之牆壁,富麗堂皇。太武殿造好了,鄴城之東西兩宮同時完工。
石勒命人把巨大之晷影從西晉之國都洛陽拉來,擺在單于庭上,用來觀測日影確定時刻。命工匠把三十九個功臣之畫像雕刻在石匣子上,放在建德殿前,以感念他們之功績。第八殿顯陽殿後為靈風颱,為遴選宮女之地方。
后宮一萬多宮女穿著華麗之衣服,賞玩著無數之珍寶,其中女官分八等,嬪妃規定了名稱和級別:昭儀、夫人、淑儀、美人視男等。城外有明堂、太學、靈臺、桑梓苑、灃水宮等附屬建築群。
== 族源 ==
羯族從某種意義上說還不能成為一個真正之民族,因為它只為當時匈奴族之一個分支(或部落),為晉代入塞匈奴十九種之一之羌渠(晉代入塞匈奴十九種:屠各、鮮支、寇頭、烏譚、赤勒、捍蛭、黑狼、赤沙、鬱鞞、萎莎、禿董、勃蔑、羌渠、賀賴、鐘跋、大樓、雍屈、真樹、力羯,各有部落,不相雜錯。)。羯人入塞之前,隸屬於匈奴,即「匈奴別落」。其種族之根源,眾說紛紜,多不足以為實。約於中國漢朝時期被當時之匈奴族所俘而帶入中國。
《晉書》卷一百四〈石勒載記上〉載:「石勒字世龍。其先匈奴別部羌渠之冑。」《魏書》卷九五《羯胡石勒傳》雲:「其先匈奴別部,分散居於上黨、武鄉、羯室,因號羯胡。」唐長孺指出,當時稱為別部,意為與匈奴本非一族。被稱之為羯,也並不完全為因為居於羯室,晉朝之雜胡皆可稱為羯。
=== 匈奴人 ===
[[王國維]]認為,羯人為匈奴分支。羯人入塞之前,隸屬於匈奴,即「匈奴別落」。
=== 羌匈 ===
[[呂思勉]]與[[錢穆]]皆認為羯人源自羌族。
=== 羌匈混血 ===
[[顧頡剛]]主張為羌族與匈奴混血。
=== 西域胡 ===
唐長孺認為主要為西域胡<ref>唐長孺:《魏晉南北朝史論叢》,第416頁。</ref>。
==== 呼揭國後代 ====
陳可畏主張,羯人為[[呼揭國]]後代。
==== 小月氏 ====
[[唐長孺]]與[[姚薇元]]主張,羯人為西域胡之一,為[[小月氏]]後代。
陳寅恪主張羯人為月氏人。<ref>陳寅恪:《唐代政治史述論稿》,第30頁。</ref>
=== 葉尼塞語系 ===
[[蒲立本]]推測古代羯族,可能屬於[[葉尼塞語系]]。因為「羯」字之中古發音(“羯”字之中古發音一說為[ki̯at]<ref name="Pulleyblank2">{{cite journal|last=Pulleyblank|first=Edwin George|authorlink=Edwin G. Pulleyblank|title=The consonantal system of Old Chinese. Part II|journal=Asia Major|volume=9|year=1963|pages=206–265|url=http://www.ihp.sinica.edu.tw/~asiamajor/pdf/1962/1962-206.pdf}}</ref>{{rp|二百四十六}})與現今居住於[[鄂畢河]]與[[葉尼塞河]]流域之[[凱特人]](Kets),名近幾何。
=== 索格底亞那人 ===
譚其驤謂羯人乃中亞康居人統治下之索格底亞那人<ref>譚其驤:《羯考》;《東南日報》副刊,1947年。</ref>。
=== 石國 ===
[[蒲立本]]認為,羯之中古漢語發音(中古拼音:kiat)近於[[突厥語|突厥語khes]]或kit,意譯為石。他認為,羌渠即中亞[[康居]],羯人來自[[石國]],因此以石作為部落稱呼,就如同[[昭武九姓]]中之石姓,其部落領袖也以石為姓。因此,[[蒲立本]]又認為,羯人可能為[[吐火羅語]]系民族。
王仲犖認為:羯人為石國(粟特族之一)人,白種人、崇祆教,同匈奴不為一個部落;又據《魏書》有者舌國,《隋書》有石國,都柘折城,即今天之塔什幹。據此推斷,石勒之祖先可能就為石國人,移居中原後,遂以石為姓,其祖並為部落小帥。<ref>王仲犖:《魏晉南北朝史》上冊,第241頁。</ref>
=== 康國 ===
羯人具有深目、高鼻、多鬚之特点<ref>《晉書》卷107〈石季龍下〉:(冉)閔躬率趙人誅諸胡羯⋯于時高鼻多鬚至有濫死者半。</ref>。体貌特征类似于[[高加索人种]]。
[[陳寅恪]]曾提出羯人源自康居之說法。
學者[[童超]]認為羯人為[[中亞]][[康居]]人,但不為農耕之[[粟特人]],而為康居(羌渠)游牧人<ref>童超《關於五胡內遷的幾個考證》,《山西大學學報》1978年4期</ref>。兩漢時期,康羈屬匈奴,因而可能有一部分人隨匈奴東來,轉戰於蒙古草原,其後又隨之南遷,逐漸內徙於上黨武鄉一帶<ref>童超:《关于五胡内迁的几个考证》,见《山西大学学报》1978年4期。</ref>。因為他們既為康居人,又為匈奴之附庸,故稱:「匈奴別部,羌渠之冑。」
=== 粟特人 ===
安祿山被稱為羯胡,其出身於粟特人。據此,羯人可能為粟特人之後裔。
== 受 ==
羯族僅於五胡亂華時期建立了在地方割據之少數民族政權。羯族也在學習漢文化,受到漢族之熏陶,符合當時民族融合、民族文化互補之歷史發展趨勢和潮流。但為其政治統治過於殘暴,讓當時統治下之各族人民飽受其苦難。
入塞後之羯人保留著部落組織,部有大、小酋帥。羯人主要從事農業,生活貧困,有之為漢族地主傭工,有之外出作商販。
作為少數民族,他們能把農業放在如此高度,也說明了羯族在東漢時期已開始隨匈奴內遷。漢晉時期之羯人雖還保持有一定之游牧經濟,但農業所佔之比重越來越大。
羯未立國前,所需軍糧除一部分自給以外,餘者皆為之掠。《晉書·孝愍帝紀》載:公元317年夏北方大旱,隨之蝗蟲氾濫,「時石勒亦竟取百姓禾,時人謂之胡蝗」,攻襄國亦「分遣諸將收掠野谷」。
即待石勒建立趙,政局稍穩以後就開始進行了農業化,他令右常侍霍浩為「勸課大夫」,與他人一起「循行州郡,核定戶籍,勸課農桑」,平常賞賜也多以穀帛為主,如在巡幸冀州諸郡時,引見「高年、孝悌、力田、文學之士,班賜谷帛有差」。石勒重視人才,在城四門建立了宣文、宣教、崇儒、崇訓等十幾個學校,還親自到太學監考,對優秀者加以褒獎。
石勒之後繼者也繼承了他發展農業之政策,如石虎就對「田疇不闢,桑業不修」之地方官員嚴加貶抑。在上下之一齊努力下,羯族石氏統治區內農業生產出現了繁榮之局面,國倉豐盈,石虎就曾經「以租入殷廣,轉輸勞煩,令中倉歲入百萬斛,餘皆儲之水次」。農產發達,可見一斑。
== 言 ==
羯語有一段話留存於史書中,該段詞組為:「秀支替戾岡,僕谷劬禿當。(音)」其中「秀支」指軍隊;「替戾岡」指「派出」;「僕谷」指之為劉曜之位階;而「劬禿當」則指「捉拿」。許多學者根據這個記載,結合當今土耳其語、哈薩克語(例如:伴隨著戰爭,活捉僕固)等突厥語之發音,推測羯族語言為阿爾泰語系之一個分支,與突厥語族有著深厚之淵源。
羯語有一段話留存於史書中,該段片語為:「秀支替戾岡,僕谷劬禿當。(音)」其中「秀支」指軍隊;「替戾岡」指「出發」;「僕谷」指之為劉曜之位階;而「劬禿當」則指「捉拿」。<ref>《晉書·卷九十五·列傳第六十五·藝術傳》:及曜自攻洛陽,勒將救之,其群下咸諫以為不可。勒以訪澄,澄曰:「相輪鈴音云:『秀支替戾岡,僕谷劬禿當。』此羯語也。秀支,軍也。替戾岡,出也。僕谷,劉曜胡位也。劬禿當,捉也。此言軍出捉得曜也。</ref><ref>《高僧傳·卷第九·神異上竺佛圖澄一單道開二竺佛調三耆域四·竺佛圖澄一》:至光初十一年曜自率兵攻洛陽。勒欲自往拒曜。內外僚佐無不必諫。勒以訪澄。澄曰。相輪鈴音雲。秀支替戾岡僕谷劬禿當此羯語也。秀支軍也。替戾岡出也僕谷劉曜胡位也。劬禿當捉也。此言軍出捉得曜也。 </ref>
這段片語已為一些人出版之刊物所檢析。白鳥庫吉(1900)<ref>Shiratori, Kurakichi, ''Uber die Sprache des Hiung-nu Stammes und der Tung-hu-Stdmme'', Tokyo, 1900</ref>、[[古斯塔夫‧約翰‧拉姆斯戴德]](Gustaf John Ramstedt;1922)<ref>Ramstedt G.J., "Zur Frage nach der Stellung des Tschuwassischen" (On the question of the position of the Chuvash), Journal de la Société finno-ougrienne 38, 1922, pp. 1–34</ref>、[[路易‧巴忍]](Louis Bazin;1948)<ref>{{cite journal|last=Bazin|first=Louis|title=Un texte proto-turc du IVe siècle: le distique hiong-nou du "Tsin-chou"|journal=Oriens|volume=1|issue=2|year=1948|pages=208–219|jstor=1578997}}</ref>、馮‧賈拜因(von Gabain;1950)<ref>{{cite journal|last=von Gabain|first=Annemarie|title=Louis Bazin: Un texte proto-turc du IVe siècle: le distique hiong-nou du "Tsin-chou" (Besprechung)|journal=Der Islam|volume=29|year=1950|pages=244–246}}</ref>與舍爾瓦什澤(Shervashidze;1986)<ref>Shervashidze I.N. ''"Verb forms in the language of the Turkic runiform inscriptions"'', Tbilisi, 1986, pp. 3–9</ref>等人皆假設羯語為[[突厥語族]]之語言,並據其假設給出了對羯語這段話之構擬和翻譯:
{| class="wikitable"
!拉姆斯戴德之構擬
!巴忍之構擬
!馮·賈拜因之構擬
!舍爾瓦什澤之構擬
|-
|Sükä talıqın
bügüg tutun!
|Süg tägti ıdqaŋ
boquγıγ tutqaŋ!
|Särig tılıtqan
buγuγ kötürkän
|Sükâ tol'iqtin
buγuγ qodigo(d)tin
|-
|伴隨戰爭
(並)捉得「僕谷」(bügü)!
|遣軍攻擊
捉住指揮官!
|你若出動軍隊
(你)當得那隻鹿
|你進入軍隊
廢黜「僕谷」(buγuγ)
|}
[[蒲立本]](Edwin G. Pulleyblank;1963)認為根據基於突厥語族假設之構擬,和該片語在中古漢語中之發音為難相契合,是而不可謂之成。他並提出羯語乃[[葉尼塞語系]]語言之假說。{{rp|二百六十四}}
沃文(Vovin)根據羯語屬葉尼塞語系之假說,給出了以下之構擬與翻譯<ref>Vovin, Alexander. "Did the Xiongnu speak a Yeniseian language?". Central Asiatic Journal 44/1 (2000), pp. 87-104.</ref>:
{| class="wikitable"
!沃文之構擬
|-
|suke t-i-r-ek-ang
bok-kok k-o-t-o-kt-ang!
|-
|軍隊 PV-CM-PERF-出去-3pp 僕谷 PV-?-OBJ-CM-抓-3pp
(PV = 前動詞(preverb);CM = 變位標記;OBJ = 受詞標記;PERF = 完成式標記)
|-
|軍隊已出發。
[他們]將會抓到「僕谷」(指劉曜)
|}
== 信 ==
羯族多信祆教,後多信佛教。人逝火葬。
一個叫佛圖澄之印度高僧,不遠萬里來到中國,攜帶異域神秘之佛教文化,嬴得石勒信任。佛圖澄住錫襄國,在城北之達火泉開壇作法,呼風喚雨,令石勒欽佩不已。石勒與其侄子石虎把他當國師供養,於為襄國和鄴城兩地佛寺驟增,和尚云集,佛圖澄在華弘法之目之終於達到。
== 攷 ==
<references />
kx6n90gj2iz0iah8zrddl037prhdjlx
用戶討論:Renamed user d98759f57e10a1c55a22f7f15c01ae45
3
113186
448794
388990
2026-11-05T15:23:45Z
Manchiu
7402
Manchiu已移動頁面[[用戶討論:Chunwai yau]]至[[用戶討論:Renamed user d98759f57e10a1c55a22f7f15c01ae45]],不留重新導向:當重新命名使用者「[[Special:CentralAuth/Chunwai yau|Chunwai yau]]」至「[[Special:CentralAuth/Renamed user d98759f57e10a1c55a22f7f15c01ae45|Renamed user d98759f57e10a1c55a22f7f15c01ae45]]」時自動移動頁面
388990
wikitext
text/x-wiki
{{Template:Welcome|realName=|name=Chunwai yau}}
-- <span style="text-shadow:0 1px 5px #66f9cf;">[[User:MintCandy|薄荷糖]]</span>敬上 <small>([[User talk:MintCandy|議]])</small> 二〇二三年三月二六日 (日) 〇五時五四分 (UTC)
pbgfuyt3gf2fpokhl5wnc18lsg765yl
用戶討論:LDP924
3
124230
448792
409936
2026-11-05T14:43:09Z
Manchiu
7402
Manchiu遷頁[[用戶討論:Q1852178459]]至[[用戶討論:LDP924]]:當重新命名使用者「[[Special:CentralAuth/Q1852178459|Q1852178459]]」至「[[Special:CentralAuth/LDP924|LDP924]]」時自動移動頁面
409936
wikitext
text/x-wiki
{{Template:Welcome|realName=|name=Q1852178459}}
-- [[用戶:Davidzdh|<font color="#008B8B">关山</font>]] ([[User talk:Davidzdh|修書]]) 二〇二四年九月二七日 (五) 一六時一一分 (UTC)
i4ebkfmtjnr551yat4msxi4i3o16fas
巴伐利亞公主索菲
0
137122
448790
442773
2026-11-05T14:16:59Z
Shunshen Lee
68656
448790
wikitext
text/x-wiki
[[File:Princess sophie of bavaria 1866.jpg|200px|thumb|索菲太后真像]]
'''巴伐利亞公主維特爾斯巴赫氏''' {{按|[[德語]] Friederike Sophie Dorothee Wilhelmine}},諱'''弗蕾德里克·多蘿西·威廉明妮''',小字'''索菲''',[[奧匈帝國|奧地利]]人。[[馬克西米連一世|巴伐利亞王]]第六女也,妣巴登公主卡羅琳。[[西元]][[一八〇五年]]一月廿七日,誕[[慕尼黑]]。
==平生==
[[File:Joseph Karl Stieler - Die Prinzessinnen Louisa, Marie und Sophie von Bayern auf einer Wiese tanzend.jpg|left|180px|thumb|幼公主索菲及其姊妹(最左)]]
[[File:Sophie franzjoseph.jpg|left|180px|thumb|奧地利皇太弟妃索菲]]
索菲姿貌端麗,豐艷健有力,嫻騎射,工談論。及長,能自制[[詩]],尤嗜書[[史]]。[[一八二四年|年十九]],入[[維也納]]宮,適奧皇子弗朗茨·卡爾,遂納為妃,專寵椒房<ref>{{Cite web|title=Archduchess Sophie: the 'only man' at court? |url=https://www.habsburger.net/en/chapter/archduchess-sophie-only-man-court |access-date=2023-01-05 |website=Die Welt der Habsburger |language=en}}</ref>。索菲生四子曰大公弗朗茨·約瑟夫、馬克西米連、卡爾、路德維希,一女曰瑪麗亞·安娜公主。[[拿破崙]]子[[拿破崙二世|帕爾馬親王]]嘗出入奧宮<ref>{{Cite web|url=http://www.biography.com/people/napoleon-ii-21272987#life-in-austria|title=''Napoleon II Biography''|access-date=2014-09-22|archive-date=2015-09-18|archive-url=https://web.archive.org/web/20150918012548/http://www.biography.com/people/napoleon-ii-21272987#life-in-austria|url-status=dead|引月日=2026-04-12|archivedate=2015-09-18|archiveurl=https://web.archive.org/web/20150918012548/http://www.biography.com/people/napoleon-ii-21272987#life-in-austria}}</ref>,特承索菲寵遇焉;每召見,王伴駕承迎,輒動索菲情意,恩禮如上賓,為時所訾。會[[一八四八年|革命作]],奧皇暗弱不慧,迫於輿情,詔禪位。權臣[[梅特涅]]以守舊自矜,變起,物議沸騰,因連及梅氏罷,國內日見亂。
始,奧皇無子,諸侯百官乃召宗室議,謀立皇太弟弗朗茨·卡爾。太弟以所議告妻索菲,索菲知太弟類奧皇,殊無懌容,命侍婢扶太弟入,陰謂曰:「殿下性恬淡寬厚,好畋遊,常有倦勤之意;吾兒弗朗茨年已長,且仁愛,頗有人望,何不立之邪?」太弟素內倚索菲,事多用其請,遂從之<ref>{{Cite book|title=Erzherzogin Sophie: Die starke Frau am Wiener Hof | last2=Bauer | first2=Christa|last1=Ehrlich | first1=Anna | publisher=Amalthea Signum Verlag|isbn=978-3-99050-024-8|location=Wien|oclc=932029774|year = 2016}}</ref>。是歲,太弟希索菲意與羣臣迎長子弗朗茨立為[[奧地利皇帝|天子]],及即位,是以尊大公妃索菲為皇太妃{{按|[[德語|德言]]Archduchess}}<ref>{{Cite book |last=Bled, Jean-Paul |title=Sophie de Habsbourg: L'impératrice de l'ombre |date=2018 |publisher=Perrin |isbn=978-2-262-06539-3 |location=Paris |oclc=1023604752}}</ref>,同臨朝,居於美泉宮。
[[File:Elisabetta e i figli.jpg|200px|left|thumb|茜茜手撫子女圖]]
先是,帝大婚,納母家親親之誼,冊立太妃妹女[[奧地利皇后伊麗莎白|茜茜]]為[[皇后|中宮]]。太妃稱茜茜幼而頑昧,而盛言茜茜姊海倫妮嫻淑有婦德,欲因以導帝選聘海倫妮,固請再三<ref>https://www.habsburger.net/de/kapitel/erzherzogin-sophie-die-heimliche-kaiserin; in the 1850s Sophie was the "bestimmende Gestalt at court" (dominant figure at the Viennese court)</ref>,其黨亦爭以為請。帝不聽,詔定婚茜茜,太妃繇是與茜茜有隙矣。茜茜生皇女蘇菲、吉賽拉<ref>{{Cite web|title=Elisabeth and Franz Joseph: wedding and marriage|url=https://www.habsburger.net/en/chapter/elisabeth-and-franz-joseph-wedding-and-marriage|access-date=2026-04-07|website=Die Welt der Habsburger|language=英文}}</ref>,太妃必欲朝夕視女孫起居向學,手教中宮,取而養之。故茜茜益怨懟,嘗陰與左右詈太妃曰:「本宮實無辜,姨母強奪小女,骨肉離也。本宮雖年少,豈可視我如無物歟!」<ref>{{Cite book|title=Emperor Francis Joseph: Life, death and the fall of the Hapsburg Empire|last=Van der Kiste, John.|date=2005|publisher=Sutton|isbn=0-7509-3787-4|location=Thrupp, Stroud, Gloucestershire|oclc=58554150}}</ref>蘇菲生二歲猝殤,時茜茜與帝車駕方幸[[匈牙利]]境,得報,慟哭,或謂曰茜茜因太妃養護己女不逮,自是深銜恨之。帝慮以茜茜失其女,常憐之,日更心動焉。太妃微聞中宮語,慍甚,又以帝寵茜茜特異,疏排於己,滋不悅。是時太妃自思春秋高,浸致政,遂引帝父年老,且病,自請隨侍遷居於別宮。後[[一八七二年|十餘年]],太妃病[[肺]]<ref>{{Cite news |date=1872-05-25 |title=AUSTRIA.; Dangerous Illness of the Emperor's Mother, Archduchess Sophia. |url=https://www.nytimes.com/1872/05/25/archives/austria-dangerous-illness-of-the-emperors-mother-archduchess-sophia.html |access-date=2026-02-28 |work=The New York Times |language=en-US |issn=0362-4331}}</ref>,大漸;五月廿八日,太妃殂,時年六十七,合葬皇陵。
==引據==
{{reflist|2}}
{{正典}}
[[分類:奧匈列傳]]
rhbfsoz42ibff3m7a31knkxwh73e7sz
448791
448790
2026-11-05T14:21:21Z
Shunshen Lee
68656
448791
wikitext
text/x-wiki
[[File:Princess sophie of bavaria 1866.jpg|200px|thumb|索菲太妃真像]]
'''巴伐利亞公主維特爾斯巴赫氏''' {{按|[[德語]] Friederike Sophie Dorothee Wilhelmine}},諱'''弗蕾德里克·多蘿西·威廉明妮''',小字'''索菲''',[[奧匈帝國|奧地利]]人。[[馬克西米連一世|巴伐利亞王]]第六女也,妣巴登公主卡羅琳。[[西元]][[一八〇五年]]一月廿七日,誕[[慕尼黑]]宮。
==平生==
[[File:Joseph Karl Stieler - Die Prinzessinnen Louisa, Marie und Sophie von Bayern auf einer Wiese tanzend.jpg|left|180px|thumb|幼公主索菲及其姊妹(最左)]]
[[File:Sophie franzjoseph.jpg|left|180px|thumb|奧地利皇太弟妃索菲]]
索菲姿貌端麗,豐艷健有力,嫻騎射,工談論。及長,能自制[[詩]],尤嗜書[[史]]。[[一八二四年|年十九]],入[[維也納]]宮,適奧皇子弗朗茨·卡爾,遂納為妃,專寵椒房<ref>{{Cite web|title=Archduchess Sophie: the 'only man' at court? |url=https://www.habsburger.net/en/chapter/archduchess-sophie-only-man-court |access-date=2023-01-05 |website=Die Welt der Habsburger |language=en}}</ref>。索菲生四子曰大公弗朗茨·約瑟夫、馬克西米連、卡爾、路德維希,一女曰瑪麗亞·安娜公主。[[拿破崙]]子[[拿破崙二世|帕爾馬親王]]嘗出入奧宮<ref>{{Cite web|url=http://www.biography.com/people/napoleon-ii-21272987#life-in-austria|title=''Napoleon II Biography''|access-date=2014-09-22|archive-date=2015-09-18|archive-url=https://web.archive.org/web/20150918012548/http://www.biography.com/people/napoleon-ii-21272987#life-in-austria|url-status=dead|引月日=2026-04-12|archivedate=2015-09-18|archiveurl=https://web.archive.org/web/20150918012548/http://www.biography.com/people/napoleon-ii-21272987#life-in-austria}}</ref>,特承索菲寵遇焉;每召見,王伴駕承迎,輒動索菲情意,恩禮如上賓,為時所訾。會[[一八四八年|革命作]],奧皇暗弱不慧,迫於輿情,詔禪位。權臣[[梅特涅]]以守舊自矜,變起,物議沸騰,因連及梅氏罷,國內日見亂。
始,奧皇無子,諸侯百官乃召宗室議,謀立皇太弟弗朗茨·卡爾。太弟以所議告妻索菲,索菲知太弟類奧皇,殊無懌容,命侍婢扶太弟入,陰謂曰:「殿下性恬淡寬厚,好畋遊,常有倦勤之意;吾兒弗朗茨年已長,且仁愛,頗有人望,何不立之邪?」太弟素內倚索菲,事多用其請,遂從之<ref>{{Cite book|title=Erzherzogin Sophie: Die starke Frau am Wiener Hof | last2=Bauer | first2=Christa|last1=Ehrlich | first1=Anna | publisher=Amalthea Signum Verlag|isbn=978-3-99050-024-8|location=Wien|oclc=932029774|year = 2016}}</ref>。是歲,太弟希索菲意與羣臣迎長子弗朗茨立為[[奧地利皇帝|天子]],及即位,是以尊大公妃索菲為皇太妃{{按|[[德語|德言]]Archduchess}}<ref>{{Cite book |last=Bled, Jean-Paul |title=Sophie de Habsbourg: L'impératrice de l'ombre |date=2018 |publisher=Perrin |isbn=978-2-262-06539-3 |location=Paris |oclc=1023604752}}</ref>,同臨朝,居於美泉宮。
[[File:Elisabetta e i figli.jpg|200px|left|thumb|茜茜手撫子女圖]]
先是,帝大婚,納母家親親之誼,冊立太妃妹女[[奧地利皇后伊麗莎白|茜茜]]為[[皇后|中宮]]。太妃稱茜茜幼而頑昧,而盛言茜茜姊海倫妮嫻淑有婦德,欲因以導帝選聘海倫妮,固請再三<ref>https://www.habsburger.net/de/kapitel/erzherzogin-sophie-die-heimliche-kaiserin; in the 1850s Sophie was the "bestimmende Gestalt at court" (dominant figure at the Viennese court)</ref>,其黨亦爭以為請。帝不聽,詔定婚茜茜,太妃繇是與茜茜有隙矣。茜茜生皇女蘇菲、吉賽拉<ref>{{Cite web|title=Elisabeth and Franz Joseph: wedding and marriage|url=https://www.habsburger.net/en/chapter/elisabeth-and-franz-joseph-wedding-and-marriage|access-date=2026-04-07|website=Die Welt der Habsburger|language=英文}}</ref>,太妃必欲朝夕視女孫起居向學,手教中宮,取而養之。故茜茜益怨懟,嘗陰與左右詈太妃曰:「本宮實無辜,姨母強奪小女,骨肉離也。本宮雖年少,豈可視我如無物歟!」<ref>{{Cite book|title=Emperor Francis Joseph: Life, death and the fall of the Hapsburg Empire|last=Van der Kiste, John.|date=2005|publisher=Sutton|isbn=0-7509-3787-4|location=Thrupp, Stroud, Gloucestershire|oclc=58554150}}</ref>蘇菲生二歲猝殤,時茜茜與帝車駕方幸[[匈牙利]]境,得報,慟哭,或謂曰茜茜因太妃養護己女不逮,自是深銜恨之。帝慮以茜茜失其女,常憐之,日更心動焉。太妃微聞中宮怨望語,慍甚,又以帝寵茜茜特異,疏排於己,滋不悅。是時太妃自思春秋高,浸致政,遂引帝父年老,且病,自請隨侍遷居於別宮。後[[一八七二年|十餘年]],太妃病[[肺]]<ref>{{Cite news |date=1872-05-25 |title=AUSTRIA.; Dangerous Illness of the Emperor's Mother, Archduchess Sophia. |url=https://www.nytimes.com/1872/05/25/archives/austria-dangerous-illness-of-the-emperors-mother-archduchess-sophia.html |access-date=2026-02-28 |work=The New York Times |language=en-US |issn=0362-4331}}</ref>,大漸;五月廿八日,太妃殂,時年六十七,合葬皇陵。
==引據==
{{reflist|2}}
{{正典}}
[[分類:奧匈列傳]]
7e0ro6gviafw78y2689eozw0etbpqo7
維基大典:要律疏議
4
140017
448795
448759
2026-11-05T16:04:49Z
一室幽蘭
105415
/* 第四條 稱文稱頁 */ 補充。
448795
wikitext
text/x-wiki
「疏議」之名,本於唐永徽中所撰《律疏》。其序曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律文簡約,必有疏以申其義,然後用之者不致歧誤。茲篇撮大典修纂之要規以為律,而以疏議發明之,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾人共事,不可無規;規而不明,則爭訟之端起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」,至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>;史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:書文言|書文言]]〉、〈[[維基大典:章法|章法]]〉諸篇,又多因維基百科之方針指引而損益之,學者每苦其散而難稽。今撮其要者,依唐律之篇目,分為六卷;仿宋人分門之體,卷下分門。每條先出律文;律文所未盡者,以小字為注;次以疏議申其義;義有可疑者,設問答以明之。
凡稱律者,所以錄公議,非所以刑人;其用在止亂息爭,其本在成書。纂者觀之,可以知所當為,亦可以知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,所以錄眾議之所同,明修典之常道,以成可信之書者也。律文不能盡眾議;律與眾議相違者,從眾議。<small>纂者不必先讀律而後修典。</small>
諸援律行事者,須依常理,度其本意,不得執文以害義。
{{疏議|律非自上而下之令,乃眾人公議之所成,書之於文,以便稽考耳。故律文所載,不能盡公議之全;公議既改,律亦從而改之,不以舊文奪新議。新進之士未讀律而有所失者,宜導之以善,不宜責之以文,〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。本律諸條,皆所以申五柱之義;律有未及者,依五柱之義處之。
{{疏議|〈五柱〉其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道門、公議門所由立也。其三曰:「版權公有,翻印不究。」版權門所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>,其義兼乎勇於修典與有所不為,變通門、所不為門所由立也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,而先於公議。基金會之行動,不受本律所拘。
{{疏議|大典託於基金會之伺服器,受其使用條款所約。基金會之制,非一典公議所能易,故列於公議之上。受酬修典者須自申報之類是也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,謂大典之條目。稱「頁」者,兼謂文、議、齋、書房及大典諸制度之頁。<small>齋,即用戶頁;議,即討論頁;書房,即用戶討論頁,並見〈[[維基大典:簿之權限|簿之權限]]〉。</small>稱「纂者」者,謂凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,謂大典之管理員。稱「公議」者,謂眾纂者經修纂或議論所成之共識。稱「可靠之書」者,謂已刊行、可覆按,而以考據嚴謹見稱者。
{{疏議|唐律名例有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>,先定稱謂,而後諸條可得而讀。本門之設,其義亦同。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,除本條及他條明定之例外,更無例外;第八條另有規定者,從其規定。
{{疏議|律文之輕重,悉繫於此六字。須、不得者,強制之條也;宜、不宜者,勸導之條也;得、不必者,聽許之條也。三者不明,則讀律者或以勸為令,或以令為勸,而爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者,常道也,非必行之令。纂者有正當之由而不從,聽之;然受質詰之時,宜陳其由。若無由而屢違,眾議不許,則入雜律擾亂之科。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文義,參其本意。文義兼容二解以上者,從其最能成本意者。
諸纂者不得執律之文字以避律之本意;亦不得以律無明禁,而為顯違律意之事。<small>違者,依第四十一條。</small>
諸解律,得參考注、疏、例示及歷次公議。
{{疏議|唐律有「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」之文<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,蓋律文有限而事變無窮,不得不以理推之也。大典之律亦然。若執文字以爭,曰「律無明禁,吾得為之」,是以律為逋逃之藪,非立律之本意也。}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律妨纂者善修、善護大典者,纂者得不從其律。<small>不從者,受質詰或有須之時,宜陳其由;必要時,得就會館議之。</small>
{{疏議|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義。其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」者,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>,言因時制宜,不拘條文也。
* 問曰:律既可不從,何以立律?
* 答曰:律所以記眾人之常道,非所以縛人手足。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通者,所以成書,非所以便己;以私意不從,而託之變通者,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸律條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須能明其不從何以益大典。
{{疏議|不得變通之條,限於違之則傷人、傷典,重大而難復者。今本律所定凡三:無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條形同虛設,故不輕增。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者之所改,無人質詰者,推定眾已許之。<small>後有質詰者,不在此推定之限。</small>
諸纂者改文,宜以摘要或議頁陳其由。纂者不同他人善意之所修者,宜因其所修而損益之,不宜徑復其舊;必須復舊者,須陳其由。
{{疏議|默而不言,推定為許,此修典之常也。然推定者可以反證破之:後有質詰,則不復推定。數人互復其修,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必眾口一辭;不能一辭者,宜從多數,而於少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,及其合於成規與否。無理之辭,若曰「吾不喜之」者,例不與焉。少數之論已駁多數,而多數不能答者,不為公議。
{{疏議|〈五柱〉曰「集思廣益」,此之謂也。公議所重在理,不在聲勢;票數雖眾,理有不足,不足為議。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新近之議,或事勢未變而屢以已答之少數論挑成議者,以擾亂論。
諸纂者宜守成議,尤以眾所訂立之律為然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,亦不得斷某說為是,其說雖最通行或最居中者亦同;不得獨為貶之而述一說。<small>文宜明其爭端所在:某人持某說,其所以持之之由,及何說較為人所受。</small>
諸文有不持平者,纂者宜改其辭,使歸持平;不宜但以「不持平」為由而去之。
{{疏議|持平者,非無說也,亦非折中;如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。凡纂者皆有所好,持平與否,在其所以組織眾書者。補其未備之說,正其輕重之失,修其措辭之偏,率勝於去之。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。不宜以少數之說與通說等量;極少數之說,除專述其說之文外,不宜收錄。不得使讀者以少數之說為重於多數,亦不得使讀者以二者為相當。
諸說之輕重,以可靠之書為準,不以纂者之中持其說者之多寡為準。<small>輕重之義,兼及正文、圖像、內外連結、分類諸端;述事之輕重亦同。</small>
{{疏議|假如述大地之形者,不必及今世猶持地平之說者。少數之說未為眾書所論,而欲入文者,須先刊行於他處,經人論辨,然後可錄。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留、主復者任其舉證。
諸增入或復入文字者,須能明其文合於撰述諸條,非止於有據而已。
{{疏議|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>文之是否見於書,增者證之;文之是否當錄,亦主變其舊者說之。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;纂者須為所增入者具其出處。
諸直引之文、已受質詰或可受質詰之文,及涉生人、新故者之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足以損生人或現存團體之名者,不得存於文,亦不得移於議頁,須即去之,不必待議。<small>不得變通。</small>
{{疏議|大典〈明引據〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證者,讀者覽其書,不待纂者之推論,即得文中所述也。合二書而後得之者,非直證,乃自作,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否、出人意表與否,及其涉數目、年月、因果、褒貶與否。如曰地繞日而行,人不致詰;如曰某廟建於某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者及刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏議|維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名或非專家所撰者,其可信稍遜。引古籍者,具其篇卷,則讀者易於覆按。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,以成或示諸書所未明言之論;合一書數處之說者亦同。纂者不得以親歷見聞而無書可據者入文,未刊行之目擊之辭亦同。
諸纂者須具直涉其主題、直證其文之可靠之書,以明其非自作。
{{疏議|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟,纂者遂書曰「由是推之,廟之建當在某年之後」,而甲書、乙碑皆無此言:是為自作,其推雖合於理,猶不得入文。若丙氏之論已合書、碑而言之,則書曰「丙氏據碑及史,以廟建於某年之後」,而引丙氏為據:是為述也。凡文中有「由是推之」、「可見」、「宜存疑」之辭,而其斷之者實為纂者者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也,非作也。若因譯而增損其義,則與自作同。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
大典生不立傳,然撰文之際,難免雜揉生人之言行於其中。諸纂者凡於頁中增入涉生人言行之文,須加審慎。其文須確,須以優質可靠之書為據;須嚴守法令及撰述諸條;須顧其私隱。大典不得為傳播流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏議|私隱與文之完整不能兩全者,以私隱為先。所謂法令,謂大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;其文或毀或譽或但可疑,皆同:<small>不得變通。</small>
:一、無據或據劣者;
:二、臆度所據之書之意者;
:三、據自刊之書,而非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得為之護頁、禁簿;有秩嘗修其文者亦同。
諸纂者去之,宜於摘要明援本條,並宜於議頁陳其由。纂者實疑其文是否有爭、所據是否為劣者,宜就會館議之。
{{疏議|所謂爭議之文,不論於其人為毀為譽,但可受質詰者皆是。去之者明援本條,所以別於爭修也。復入其文者,任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵他人版權之物;度其入典或侵版權者,不得入之。纂者須保其所入合於版權及法令。<small>文字、圖像、音像及所引之文皆同。</small>
諸疑其物違法者,宜自撰其文,或求助於眾,或求可自由用之物,或以己辭述其義;亦得請版權人以相容之授權釋出其作。
{{疏議|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一有侵權之物雜於其間,則翻印者或罹於法,而大典之本壞矣。自撰之文,即新作也,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵版權者,須去其侵權之文,宜於議頁陳之;知其原出者,宜並具之。後得版權人之許者,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,或其事真確、有用,猶不足以入典。文不必盡載其主題之細節;宜總括經評審而為人所公認之知。<small>大典非印本之書,非字書,非發表新說之所,非宣傳之具,非鏡站及連結、圖像之集,非網誌及追思之所,非名錄,非手冊、教本,非預言,非新聞之報,非不擇之叢鈔。凡此所舉,皆例示而非盡列。</small>
{{疏議|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證外,宜推定他人之所修所言出於善意;疑之者,亦宜於所能之內推之。明出惡意者,若故毀大典,不在此限。
{{疏議|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論其心,不論其事。善意之人亦有失,正其失可也,不宜謂其故為。然屢以「請推誠」責人者,其辭本身或已疑人矣,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者,於大典之內,不得攻人身。宜就事論事,不宜及人。
諸攻人身者,謂:
:一、詈辱人,或以惡言否定其人;
:二、辱人之政見、黨屬、信仰、出身、僱主或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教而歧視人,或以貶稱稱之;
:四、以法令恐人;
:五、恫嚇人,尤以死相脅者;
:六、以貶稱攻人之政治身份;
:七、脅人使受官府、僱主或他人之迫害,或故使其受之者。
{{疏議|大典〈察禁律〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁、簡之字相譏,或以敵黨之蔑稱相呼,不問出自何方、施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;其所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏議|末項即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。<small>躡人所修而隨之以擾、恫嚇、揭人私隱、擾於其齋及書房,及於大典之外擾之者,皆其類也。</small>
{{疏議|擾人者,使人不樂修典,甚或棄典而去。各類之擾,不止則眾手相協之本潰矣。屢以提及之功能呼人,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結者外,不得揭他人之私隱,亦不得具載其私隱之內外連結;其事真偽皆同。<small>不得變通。私隱,謂真名、生日、證件號碼、居所、職所、電話、電郵,及凡可識其人者。</small>
諸所修有揭私隱者,須即復其舊,並須請有其權者永去之。揭私隱者,除出於無心而無惡意者外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者,須稱其事為「欲揭他人私隱」,並須註其真偽未定;禁誌及告示,不得論其真偽。
{{疏議|一言其真偽,揭者、觀者皆得以推之,故雖受害者亦不宜言。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。<small>以法令脅人,謂揚言將訴之於官,或將告發於有司,以加於大典或纂者;大典之內解紛諸程序不與焉。</small>
諸纂者不得為人可合理視為以法令脅人之言。屢斥他人之言為誹謗者,雖無脅人之意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令脅人者,宜告有秩。纂者決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口而不敢修,所謂寒蟬者也,文由是而偏。纂者固得訴於官,然大典非訟所也。欲人正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文及其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡;不得招人為己之傀儡,不得呼朋引伴入議以亂之,亦不得為人之傀儡。<small>傀儡,謂一人而用數簿,以欺人、亂議、避律者,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。</small>
諸纂者不得輕指人為傀儡。
{{疏議|邀親友入典,大典所樂;邀之以助己見,則不可。新簿之行與他簿全同,或唯為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡者,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典或亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉諸議而使人淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分其功績於數簿以避察;
:六、以正簿修典,而以傀儡毀亂;
:七、共用一簿;
:八、以欺眾之術取須得眾信之職;
:九、以他簿譽己,偽為中立之評者;
:十、一議而投二票以上;
:十一、以一簿立頁,而以他簿巡之;
:十二、以他簿入議,偷換其旨以亂之;
:十三、以新簿續舊簿之爭,或屢易其簿以避察。
<small>諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿,同入一頁者,不在第四項之限。</small>
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典或入議;違者,其正簿之禁,得重計或延長之。
{{疏議|如退不過三,所限者一人之復舊,非一簿之復舊也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文,宜於議頁陳其所欲改,而請他人審之;
:四、不宜徑立相關之文,宜立草稿以待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
<small>無爭議之修,不在第三項之限。</small>
諸以利益之衝突而所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;其披露,須置申報之模板於其齋及相關文之議頁,入議時亦須自陳之;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待他人審之;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
<small>僱主與客戶為一者,不必另具客戶。於他站設簿以受人託修典而取酬者,須於其齋具其簿之連結。</small>
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏議|此披露之責,本於基金會之使用條款,非大典所創,亦非一典公議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之;然有秩禁之,不以先警為限。
諸所為非毀典者,亦得依他律禁之。
{{疏議|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故為言之也。其禁之輕重久暫,依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸出於善意、欲益大典之修,雖誤,雖為人所誤導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、無益而意善之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱他人不當之修。
{{疏議|二人爭一文之辭而互復之,其行或有失,然皆非毀典。以善意之修為毀典,人將以為不公,或因而去,此大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。<small>爭修,謂數人互復其修,而不就議以定之者;雖具摘要,亦同。</small>
{{疏議|爭修無益於成書,使纂者相仇,礙公議之成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三次。<small>一人連續復舊,而無他人之修間之者,以一次論。以數簿復之者,合計之。</small>
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。<small>禁所以止亂,非以罰人。</small>
{{疏議|〈五柱〉曰「如無亂紀,退不過三」,大典固有此制。一日一夜,唐律所謂「以百刻」也<ref name="tl6a" />。退不過三者,所以為界,非許人三復也;未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,而其齋合於規者;
:三、復受禁之人違禁之修,及其傀儡之修;
:四、復顯然毀典之修,謂凡推人善意者皆以為毀典者也;
:五、復顯侵版權之文;
:六、復顯違基金會伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經其人自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。不能確知其合於前項,或於此有爭者,不宜復,宜就議。
<small>維基百科另有仲裁委員復仲裁頁擾亂之免,本律未之取。</small>
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告他人以方議之事;然其意須在益議之質、廣與議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告於與其事無涉之人;
:二、以偏頗之辭告之;
:三、擇持某見之人而獨告之;
:四、以大典以外之途私告之,而無正當之由者。
有其一,即為拉票。
{{疏議|告眾之當者,其數有節,其辭中立,其人不分黨,其事公開;四者兼備,然後為當,有一不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以律護顯違律意之說,曲律以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文字以背律之本意;
:二、以細瑕駁人,或固守眾已明拒之說,以延公議;
:三、曲解程序,或羅列諸律以吹毛求疵而擾人;
:四、為得自證之簿,而濫為無益或有害之修。
{{疏議|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中臣,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中臣,執法所在,繩違按罪,不得舞文弄法。}}</ref>是也。
律者所以記公議,舞文者各取所需,於字裡行間為擾亂求據,背律之本意甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得於無現行之過時加之。
諸有秩不宜以已止而無復亂之虞之事追禁之。有秩宜先明其情而後禁;禁須明其由,具其證。<small>禁之輕重久暫,依〈察禁律〉。</small>
{{疏議|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣:非以罰人之過,乃以止人之亂。故無現行之亂,則無所用禁;亂既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由、其人之前行及禁前禁後之議而決之。
諸其人前功,不得為免禁之由。有秩不得自駁己所禁者之申訴。除禁有顯誤者外,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。唯有秩得理解禁之請。
{{疏議|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」本律未之改;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩,於己所與之爭,須避嫌,不得以其權處之。
諸數人同爭者,有秩須兼察諸方之行;同爭而禁之輕重異者,須明其由。
{{疏議|處之不平,則爭端益多。}}
== 註 ==
<references />
[[分類:維基制度]]
4xnzhgh89ibep472qkivrfk5jlsbc4l
448796
448795
2026-11-05T16:16:27Z
一室幽蘭
105415
/* 第三十四條 受酬修典 */ 從本典譯名
448796
wikitext
text/x-wiki
「疏議」之名,本於唐永徽中所撰《律疏》。其序曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律文簡約,必有疏以申其義,然後用之者不致歧誤。茲篇撮大典修纂之要規以為律,而以疏議發明之,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾人共事,不可無規;規而不明,則爭訟之端起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」,至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>;史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:書文言|書文言]]〉、〈[[維基大典:章法|章法]]〉諸篇,又多因維基百科之方針指引而損益之,學者每苦其散而難稽。今撮其要者,依唐律之篇目,分為六卷;仿宋人分門之體,卷下分門。每條先出律文;律文所未盡者,以小字為注;次以疏議申其義;義有可疑者,設問答以明之。
凡稱律者,所以錄公議,非所以刑人;其用在止亂息爭,其本在成書。纂者觀之,可以知所當為,亦可以知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,所以錄眾議之所同,明修典之常道,以成可信之書者也。律文不能盡眾議;律與眾議相違者,從眾議。<small>纂者不必先讀律而後修典。</small>
諸援律行事者,須依常理,度其本意,不得執文以害義。
{{疏議|律非自上而下之令,乃眾人公議之所成,書之於文,以便稽考耳。故律文所載,不能盡公議之全;公議既改,律亦從而改之,不以舊文奪新議。新進之士未讀律而有所失者,宜導之以善,不宜責之以文,〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。本律諸條,皆所以申五柱之義;律有未及者,依五柱之義處之。
{{疏議|〈五柱〉其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道門、公議門所由立也。其三曰:「版權公有,翻印不究。」版權門所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>,其義兼乎勇於修典與有所不為,變通門、所不為門所由立也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,而先於公議。基金會之行動,不受本律所拘。
{{疏議|大典託於基金會之伺服器,受其使用條款所約。基金會之制,非一典公議所能易,故列於公議之上。受酬修典者須自申報之類是也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,謂大典之條目。稱「頁」者,兼謂文、議、齋、書房及大典諸制度之頁。<small>齋,即用戶頁;議,即討論頁;書房,即用戶討論頁,並見〈[[維基大典:簿之權限|簿之權限]]〉。</small>稱「纂者」者,謂凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,謂大典之管理員。稱「公議」者,謂眾纂者經修纂或議論所成之共識。稱「可靠之書」者,謂已刊行、可覆按,而以考據嚴謹見稱者。
{{疏議|唐律名例有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>,先定稱謂,而後諸條可得而讀。本門之設,其義亦同。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,除本條及他條明定之例外,更無例外;第八條另有規定者,從其規定。
{{疏議|律文之輕重,悉繫於此六字。須、不得者,強制之條也;宜、不宜者,勸導之條也;得、不必者,聽許之條也。三者不明,則讀律者或以勸為令,或以令為勸,而爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者,常道也,非必行之令。纂者有正當之由而不從,聽之;然受質詰之時,宜陳其由。若無由而屢違,眾議不許,則入雜律擾亂之科。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文義,參其本意。文義兼容二解以上者,從其最能成本意者。
諸纂者不得執律之文字以避律之本意;亦不得以律無明禁,而為顯違律意之事。<small>違者,依第四十一條。</small>
諸解律,得參考注、疏、例示及歷次公議。
{{疏議|唐律有「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」之文<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,蓋律文有限而事變無窮,不得不以理推之也。大典之律亦然。若執文字以爭,曰「律無明禁,吾得為之」,是以律為逋逃之藪,非立律之本意也。}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律妨纂者善修、善護大典者,纂者得不從其律。<small>不從者,受質詰或有須之時,宜陳其由;必要時,得就會館議之。</small>
{{疏議|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義。其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」者,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>,言因時制宜,不拘條文也。
* 問曰:律既可不從,何以立律?
* 答曰:律所以記眾人之常道,非所以縛人手足。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通者,所以成書,非所以便己;以私意不從,而託之變通者,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸律條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須能明其不從何以益大典。
{{疏議|不得變通之條,限於違之則傷人、傷典,重大而難復者。今本律所定凡三:無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條形同虛設,故不輕增。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者之所改,無人質詰者,推定眾已許之。<small>後有質詰者,不在此推定之限。</small>
諸纂者改文,宜以摘要或議頁陳其由。纂者不同他人善意之所修者,宜因其所修而損益之,不宜徑復其舊;必須復舊者,須陳其由。
{{疏議|默而不言,推定為許,此修典之常也。然推定者可以反證破之:後有質詰,則不復推定。數人互復其修,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必眾口一辭;不能一辭者,宜從多數,而於少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,及其合於成規與否。無理之辭,若曰「吾不喜之」者,例不與焉。少數之論已駁多數,而多數不能答者,不為公議。
{{疏議|〈五柱〉曰「集思廣益」,此之謂也。公議所重在理,不在聲勢;票數雖眾,理有不足,不足為議。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新近之議,或事勢未變而屢以已答之少數論挑成議者,以擾亂論。
諸纂者宜守成議,尤以眾所訂立之律為然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,亦不得斷某說為是,其說雖最通行或最居中者亦同;不得獨為貶之而述一說。<small>文宜明其爭端所在:某人持某說,其所以持之之由,及何說較為人所受。</small>
諸文有不持平者,纂者宜改其辭,使歸持平;不宜但以「不持平」為由而去之。
{{疏議|持平者,非無說也,亦非折中;如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。凡纂者皆有所好,持平與否,在其所以組織眾書者。補其未備之說,正其輕重之失,修其措辭之偏,率勝於去之。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。不宜以少數之說與通說等量;極少數之說,除專述其說之文外,不宜收錄。不得使讀者以少數之說為重於多數,亦不得使讀者以二者為相當。
諸說之輕重,以可靠之書為準,不以纂者之中持其說者之多寡為準。<small>輕重之義,兼及正文、圖像、內外連結、分類諸端;述事之輕重亦同。</small>
{{疏議|假如述大地之形者,不必及今世猶持地平之說者。少數之說未為眾書所論,而欲入文者,須先刊行於他處,經人論辨,然後可錄。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留、主復者任其舉證。
諸增入或復入文字者,須能明其文合於撰述諸條,非止於有據而已。
{{疏議|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>文之是否見於書,增者證之;文之是否當錄,亦主變其舊者說之。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;纂者須為所增入者具其出處。
諸直引之文、已受質詰或可受質詰之文,及涉生人、新故者之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足以損生人或現存團體之名者,不得存於文,亦不得移於議頁,須即去之,不必待議。<small>不得變通。</small>
{{疏議|大典〈明引據〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證者,讀者覽其書,不待纂者之推論,即得文中所述也。合二書而後得之者,非直證,乃自作,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否、出人意表與否,及其涉數目、年月、因果、褒貶與否。如曰地繞日而行,人不致詰;如曰某廟建於某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者及刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏議|維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名或非專家所撰者,其可信稍遜。引古籍者,具其篇卷,則讀者易於覆按。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,以成或示諸書所未明言之論;合一書數處之說者亦同。纂者不得以親歷見聞而無書可據者入文,未刊行之目擊之辭亦同。
諸纂者須具直涉其主題、直證其文之可靠之書,以明其非自作。
{{疏議|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟,纂者遂書曰「由是推之,廟之建當在某年之後」,而甲書、乙碑皆無此言:是為自作,其推雖合於理,猶不得入文。若丙氏之論已合書、碑而言之,則書曰「丙氏據碑及史,以廟建於某年之後」,而引丙氏為據:是為述也。凡文中有「由是推之」、「可見」、「宜存疑」之辭,而其斷之者實為纂者者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也,非作也。若因譯而增損其義,則與自作同。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
大典生不立傳,然撰文之際,難免雜揉生人之言行於其中。諸纂者凡於頁中增入涉生人言行之文,須加審慎。其文須確,須以優質可靠之書為據;須嚴守法令及撰述諸條;須顧其私隱。大典不得為傳播流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏議|私隱與文之完整不能兩全者,以私隱為先。所謂法令,謂大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;其文或毀或譽或但可疑,皆同:<small>不得變通。</small>
:一、無據或據劣者;
:二、臆度所據之書之意者;
:三、據自刊之書,而非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得為之護頁、禁簿;有秩嘗修其文者亦同。
諸纂者去之,宜於摘要明援本條,並宜於議頁陳其由。纂者實疑其文是否有爭、所據是否為劣者,宜就會館議之。
{{疏議|所謂爭議之文,不論於其人為毀為譽,但可受質詰者皆是。去之者明援本條,所以別於爭修也。復入其文者,任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵他人版權之物;度其入典或侵版權者,不得入之。纂者須保其所入合於版權及法令。<small>文字、圖像、音像及所引之文皆同。</small>
諸疑其物違法者,宜自撰其文,或求助於眾,或求可自由用之物,或以己辭述其義;亦得請版權人以相容之授權釋出其作。
{{疏議|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一有侵權之物雜於其間,則翻印者或罹於法,而大典之本壞矣。自撰之文,即新作也,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵版權者,須去其侵權之文,宜於議頁陳之;知其原出者,宜並具之。後得版權人之許者,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,或其事真確、有用,猶不足以入典。文不必盡載其主題之細節;宜總括經評審而為人所公認之知。<small>大典非印本之書,非字書,非發表新說之所,非宣傳之具,非鏡站及連結、圖像之集,非網誌及追思之所,非名錄,非手冊、教本,非預言,非新聞之報,非不擇之叢鈔。凡此所舉,皆例示而非盡列。</small>
{{疏議|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證外,宜推定他人之所修所言出於善意;疑之者,亦宜於所能之內推之。明出惡意者,若故毀大典,不在此限。
{{疏議|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論其心,不論其事。善意之人亦有失,正其失可也,不宜謂其故為。然屢以「請推誠」責人者,其辭本身或已疑人矣,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者,於大典之內,不得攻人身。宜就事論事,不宜及人。
諸攻人身者,謂:
:一、詈辱人,或以惡言否定其人;
:二、辱人之政見、黨屬、信仰、出身、僱主或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教而歧視人,或以貶稱稱之;
:四、以法令恐人;
:五、恫嚇人,尤以死相脅者;
:六、以貶稱攻人之政治身份;
:七、脅人使受官府、僱主或他人之迫害,或故使其受之者。
{{疏議|大典〈察禁律〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁、簡之字相譏,或以敵黨之蔑稱相呼,不問出自何方、施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;其所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏議|末項即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。<small>躡人所修而隨之以擾、恫嚇、揭人私隱、擾於其齋及書房,及於大典之外擾之者,皆其類也。</small>
{{疏議|擾人者,使人不樂修典,甚或棄典而去。各類之擾,不止則眾手相協之本潰矣。屢以提及之功能呼人,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結者外,不得揭他人之私隱,亦不得具載其私隱之內外連結;其事真偽皆同。<small>不得變通。私隱,謂真名、生日、證件號碼、居所、職所、電話、電郵,及凡可識其人者。</small>
諸所修有揭私隱者,須即復其舊,並須請有其權者永去之。揭私隱者,除出於無心而無惡意者外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者,須稱其事為「欲揭他人私隱」,並須註其真偽未定;禁誌及告示,不得論其真偽。
{{疏議|一言其真偽,揭者、觀者皆得以推之,故雖受害者亦不宜言。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。<small>以法令脅人,謂揚言將訴之於官,或將告發於有司,以加於大典或纂者;大典之內解紛諸程序不與焉。</small>
諸纂者不得為人可合理視為以法令脅人之言。屢斥他人之言為誹謗者,雖無脅人之意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令脅人者,宜告有秩。纂者決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口而不敢修,所謂寒蟬者也,文由是而偏。纂者固得訴於官,然大典非訟所也。欲人正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文及其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡;不得招人為己之傀儡,不得呼朋引伴入議以亂之,亦不得為人之傀儡。<small>傀儡,謂一人而用數簿,以欺人、亂議、避律者,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。</small>
諸纂者不得輕指人為傀儡。
{{疏議|邀親友入典,大典所樂;邀之以助己見,則不可。新簿之行與他簿全同,或唯為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡者,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典或亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉諸議而使人淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分其功績於數簿以避察;
:六、以正簿修典,而以傀儡毀亂;
:七、共用一簿;
:八、以欺眾之術取須得眾信之職;
:九、以他簿譽己,偽為中立之評者;
:十、一議而投二票以上;
:十一、以一簿立頁,而以他簿巡之;
:十二、以他簿入議,偷換其旨以亂之;
:十三、以新簿續舊簿之爭,或屢易其簿以避察。
<small>諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿,同入一頁者,不在第四項之限。</small>
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典或入議;違者,其正簿之禁,得重計或延長之。
{{疏議|如退不過三,所限者一人之復舊,非一簿之復舊也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文,宜於議頁陳其所欲改,而請他人審之;
:四、不宜徑立相關之文,宜立草稿以待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
<small>無爭議之修,不在第三項之限。</small>
諸以利益之衝突而所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;其披露,須置申報之模板於其齋及相關文之議頁,入議時亦須自陳之;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待他人審之;
:四、不得以校官之職審校相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
<small>僱主與客戶為一者,不必另具客戶。於他站設簿以受人託修典而取酬者,須於其齋具其簿之連結。</small>
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏議|此披露之責,本於基金會之使用條款,非大典所創,亦非一典公議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之;然有秩禁之,不以先警為限。
諸所為非毀典者,亦得依他律禁之。
{{疏議|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故為言之也。其禁之輕重久暫,依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸出於善意、欲益大典之修,雖誤,雖為人所誤導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、無益而意善之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱他人不當之修。
{{疏議|二人爭一文之辭而互復之,其行或有失,然皆非毀典。以善意之修為毀典,人將以為不公,或因而去,此大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。<small>爭修,謂數人互復其修,而不就議以定之者;雖具摘要,亦同。</small>
{{疏議|爭修無益於成書,使纂者相仇,礙公議之成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三次。<small>一人連續復舊,而無他人之修間之者,以一次論。以數簿復之者,合計之。</small>
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。<small>禁所以止亂,非以罰人。</small>
{{疏議|〈五柱〉曰「如無亂紀,退不過三」,大典固有此制。一日一夜,唐律所謂「以百刻」也<ref name="tl6a" />。退不過三者,所以為界,非許人三復也;未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,而其齋合於規者;
:三、復受禁之人違禁之修,及其傀儡之修;
:四、復顯然毀典之修,謂凡推人善意者皆以為毀典者也;
:五、復顯侵版權之文;
:六、復顯違基金會伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經其人自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。不能確知其合於前項,或於此有爭者,不宜復,宜就議。
<small>維基百科另有仲裁委員復仲裁頁擾亂之免,本律未之取。</small>
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告他人以方議之事;然其意須在益議之質、廣與議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告於與其事無涉之人;
:二、以偏頗之辭告之;
:三、擇持某見之人而獨告之;
:四、以大典以外之途私告之,而無正當之由者。
有其一,即為拉票。
{{疏議|告眾之當者,其數有節,其辭中立,其人不分黨,其事公開;四者兼備,然後為當,有一不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以律護顯違律意之說,曲律以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文字以背律之本意;
:二、以細瑕駁人,或固守眾已明拒之說,以延公議;
:三、曲解程序,或羅列諸律以吹毛求疵而擾人;
:四、為得自證之簿,而濫為無益或有害之修。
{{疏議|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中臣,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中臣,執法所在,繩違按罪,不得舞文弄法。}}</ref>是也。
律者所以記公議,舞文者各取所需,於字裡行間為擾亂求據,背律之本意甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得於無現行之過時加之。
諸有秩不宜以已止而無復亂之虞之事追禁之。有秩宜先明其情而後禁;禁須明其由,具其證。<small>禁之輕重久暫,依〈察禁律〉。</small>
{{疏議|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣:非以罰人之過,乃以止人之亂。故無現行之亂,則無所用禁;亂既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由、其人之前行及禁前禁後之議而決之。
諸其人前功,不得為免禁之由。有秩不得自駁己所禁者之申訴。除禁有顯誤者外,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。唯有秩得理解禁之請。
{{疏議|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」本律未之改;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩,於己所與之爭,須避嫌,不得以其權處之。
諸數人同爭者,有秩須兼察諸方之行;同爭而禁之輕重異者,須明其由。
{{疏議|處之不平,則爭端益多。}}
== 註 ==
<references />
[[分類:維基制度]]
kouhlok0uq6kw7hmmtqf5za5jyj5wzw
448797
448796
2026-11-05T16:21:00Z
Itsmine
5
448797
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律以簡立,疏以詳明;簡則綱舉,詳則目張。綱舉而守者有歸,目張而用者不惑。茲篇撮大典修纂之要規以為律,復以疏議發明之,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋之所以為法,大典之所以取則也。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多因維基百科之方針指引而損益之,條目既繁,學者每苦其散而難稽。今撮其要者,釐為六卷:取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。每條先出律文,律所未盡,以小字為注;次以疏議申其義,義有可疑,設問答以明之。
凡稱律者,所以錄公議,非所以刑人。其用在止亂息爭,其本在成書傳信;止亂則眾手可安,成書則百世可考。纂者觀之,進可以知所當為,退可以知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,所以錄眾議之所同,明修典之常道,以成可信之書者也。律有盡而議無窮,文有定而事有變;律文不能盡眾議,律與眾議相違者,從眾議。<small>纂者不必先讀律而後修典。</small>
諸援律行事者,須依常理,度其本意;不得執文以害義,泥字以失真。
{{疏議|律非自上而下之令,乃眾人公議之所成;書之於文,以便稽考耳。公議之全,律文不能盡載;公議既改,律亦從而改之。故不以舊文奪新議,不以成法拘來者。新進之士,未讀律而有所失者,宜導之以善,不宜責之以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱者典之所以立,律者柱之所以申;本律諸條,皆所以申五柱之義。律有未及者,依五柱之義處之。
{{疏議|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」五柱各有所主,諸門各有所承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門所由立也。其三曰:「版權公有,翻印不究。」版權門所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於修典,狷者有所不為,變通、所不為二門所由立也。柱以為綱,律以為目;綱目相維,典制乃行。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序先於公議。基金會之行動,不受本律所拘。
{{疏議|大典託身於基金會之伺服器,受約於其使用條款。其制出於上,非一典公議所能易;其約及於眾,非一人私意所能違。故列之於公議之上。受酬修典者須自申報之類是也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,謂大典之條目。稱「頁」者,兼謂文、議頁、齋、書房及大典諸制度之頁。<small>齋,即用戶頁;書房,即用戶討論頁,並見〈[[維基大典:簿之權限|簿之權限]]〉。</small>稱「纂者」者,謂凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,謂大典之管理員。稱「公議」者,謂眾纂者經修纂或議論所成之共識。稱「可靠之書」者,謂已刊行、可覆按,而以考據嚴謹見稱者。
{{疏議|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>,先定其稱,後讀其條。稱謂不一,則律意難明;名義既定,則諸條可讀。本門之設,其義亦同。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,除本條及他條明定之例外,更無例外;第八條另有規定者,從其規定。
{{疏議|律文之輕重,悉繫於此六字。須與不得,強制之條也;宜與不宜,勸導之條也;得與不必,聽許之條也。三者不明,則讀律者或以勸為令,或以令為勸,而爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者,常道也,非必行之令。有正當之由而不從者,聽之;然受質詰之時,宜陳其由。若無由而屢違,眾議不許,則入雜律擾亂之科。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文義,參其本意;文義兼容二解以上者,從其最能成本意者。
諸纂者不得執律之文字,以避律之本意;亦不得以律無明禁,而為顯違律意之事。<small>違者,依第四十一條。</small>
諸解律,得參考注、疏、例示及歷次公議。
{{疏議|律文有限,事變無窮;以有限之文,應無窮之變,不得不以理推之。故唐律有「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」之文<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>。大典之律,其道亦然。若執字以爭,曰「律無明禁,吾得為之」,是以律為逋逃之藪,非立律之本意也。}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律妨纂者善修、善護大典者,纂者得不從其律。<small>不從者,受質詰或有須之時,宜陳其由;必要時,得就[[維基大典:會館|會館]]議之。</small>
{{疏議|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義。其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」者,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>;因時以制宜,不拘於條文也。
* 問曰:律既可不從,何以立律?
* 答曰:律所以記眾人之常道,非所以縛人之手足。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通者,所以成書,非所以便己;託變通之名,行私意之實者,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸律條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須能明其不從何以益大典。
{{疏議|不得變通之條,限於違之則傷人傷典、重大而難復者。今本律所定凡三:無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條形同虛設;故寧嚴其選,不輕增之。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者之所改,無人質詰者,推定眾已許之。<small>後有質詰者,不在此推定之限。</small>
諸纂者改文,宜以摘要或議頁陳其由。纂者不同他人善意之所修者,宜因其所修而損益之,不宜徑復其舊;必須復舊者,須陳其由。
{{疏議|默而不言,推定為許,此修典之常也。無言則推其為許,有詰則破其所推;後有質詰,則不復推定。數人互復其修,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必眾口一辭;不能一辭者,宜從多數,而於少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,及其合於成規與否。無理之辭,若曰「吾不喜之」者,例不與焉。少數之論已駁多數,而多數不能答者,不為公議。
{{疏議|〈五柱〉曰「集思廣益」,此之謂也。公議所重,在理不在勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新近之議,或事勢未變而屢以已答之少數論挑成議者,以擾亂論。
諸纂者宜守成議,尤以眾所訂立之律為然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,亦不得斷某說為是,其說雖最通行或最居中者亦同;不得獨為貶之而述一說。<small>文宜明其爭端所在:某人持某說,其所以持之之由,及何說較為人所受。</small>
諸文有不持平者,纂者宜改其辭,使歸持平;不宜但以「不持平」為由而去之。
{{疏議|持平者,非無說也,亦非折中也;如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。凡纂者皆有所好,持平與否,在其所以組織眾書者。補其未備之說,正其輕重之失,修其措辭之偏;三者率勝於去之。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。不宜以少數之說與通說等量;極少數之說,除專述其說之文外,不宜收錄。不得使讀者以少數之說為重於多數,亦不得使讀者以二者為相當。
諸說之輕重,以可靠之書為準,不以纂者之中持其說者之多寡為準。<small>輕重之義,兼及正文、圖像、內外連結、分類諸端;述事之輕重亦同。</small>
{{疏議|輕重之權,在書不在人。假如述大地之形者,不必及今世猶持地平之說者。少數之說,未為眾書所論,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留、主復者任其舉證。
諸增入或復入文字者,須能明其文合於撰述諸條,非止於有據而已。
{{疏議|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>文之見於書否,增者證之;文之當錄與否,變舊者說之。證其有據,說其當錄,二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;纂者須為所增入者具其出處。
諸直引之文、已受質詰或可受質詰之文,及涉生人、新故者之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足以損生人或現存團體之名者,不得存於文,亦不得移於議頁,須即去之,不必待議。<small>不得變通。</small>
{{疏議|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證者,讀者覽其書,不待纂者之推論,即得文中所述也。合二書而後得之者,非直證,乃自作,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否、出人意表與否,及其涉數目、年月、因果、褒貶與否。言地繞日而行,人不致詰;言某廟建於某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者及刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏議|可靠之書,貴在刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其可信稍遜。引古籍者具其篇卷,舉今書者標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,以成或示諸書所未明言之論;合一書數處之說者亦同。纂者不得以親歷見聞而無書可據者入文,未刊行之目擊之辭亦同。
諸纂者須具直涉其主題、直證其文之可靠之書,以明其非自作。
{{疏議|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟,纂者遂書曰「由是推之,廟之建當在某年之後」,而甲書、乙碑皆無此言,是為自作;其推雖合於理,猶不得入文。若丙氏之論已合書、碑而言之,則書曰「丙氏據碑及史,以廟建於某年之後」,而引丙氏為據,是為述也。凡文中有「由是推之」、「可見」、「宜存疑」之辭,而其斷之者實為纂者者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也,非作也;因譯而增損其義,則與自作同。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
大典生不立傳,然撰文之際,難免雜揉生人之言行於其中。諸纂者凡於頁中增入涉生人言行之文,須加審慎。其文須確,須以優質可靠之書為據;須嚴守法令及撰述諸條,須顧其私隱。大典不得為傳播流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏議|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」是生人雖不立傳,其言行猶散見於他文;本條之設,所以防其傷也。私隱與文之完整不能兩全者,以私隱為先。所謂法令,謂大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;其文或毀或譽或但可疑,皆同:<small>不得變通。</small>
:一、無據或據劣者;
:二、臆度所據之書之意者;
:三、據自刊之書,而非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得為之護頁、禁簿;有秩嘗修其文者亦同。
諸纂者去之,宜於摘要明援本條,並宜於議頁陳其由。纂者實疑其文是否有爭、所據是否為劣者,宜就會館議之。
{{疏議|所謂爭議之文,不論於其人為毀為譽,但可受質詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去之者明援本條,所以別於爭修也;復入其文者,任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵他人版權之物;度其入典或侵版權者,不得入之。纂者須保其所入合於版權及法令。<small>文字、圖像、音像及所引之文皆同。</small>
諸疑其物違法者,宜自撰其文,或求助於眾,或求可自由用之物,或以己辭述其義;亦得請版權人以相容之授權釋出其作。
{{疏議|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,則翻印者或罹於法;一隙不補,則大典之本壞矣。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵版權者,須去其侵權之文,宜於議頁陳之;知其原出者,宜並具之。後得版權人之許者,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,或其事真確、有用,猶不足以入典。文不必盡載其主題之細節;宜總括經評審而為人所公認之知。<small>大典非印本之書,非字書,非發表新說之所,非宣傳之具,非鏡站及連結、圖像之集,非網誌及追思之所,非名錄,非手冊、教本,非預言,非新聞之報,非不擇之叢鈔。凡此所舉,皆例示而非盡列。</small>
{{疏議|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。此本門之所以設也。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證外,宜推定他人之所修所言出於善意;疑之者,亦宜於所能之內推之。明出惡意者,若故毀大典,不在此限。
{{疏議|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論其心而不論其事,正其失而不責其故。然屢以「請推誠」責人者,其辭本身或已疑人矣,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者,於大典之內,不得攻人身。宜就事論事,不宜及人。
諸攻人身者,謂:
:一、詈辱人,或以惡言否定其人;
:二、辱人之政見、黨屬、信仰、出身、僱主或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教而歧視人,或以貶稱稱之;
:四、以法令恐人;
:五、恫嚇人,尤以死相脅者;
:六、以貶稱攻人之政治身份;
:七、脅人使受官府、僱主或他人之迫害,或故使其受之者。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之蔑稱相呼;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;其所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏議|人有前過,猶不可攻;人已禁修,尤不可辱。末項即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。<small>躡人所修而隨之以擾、恫嚇、揭人私隱、擾於其齋及書房,及於大典之外擾之者,皆其類也。</small>
{{疏議|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結者外,不得揭他人之私隱,亦不得具載其私隱之內外連結;其事真偽皆同。<small>不得變通。私隱,謂真名、生日、證件號碼、居所、職所、電話、電郵,及凡可識其人者。</small>
諸所修有揭私隱者,須即復其舊,並須請有其權者永去之。揭私隱者,除出於無心而無惡意者外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者,須稱其事為「欲揭他人私隱」,並須註其真偽未定;禁誌及告示,不得論其真偽。
{{疏議|一言其真偽,揭者、觀者皆得以推之;言之愈明,推之愈易。故雖受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。<small>以法令脅人,謂揚言將訴之於官,或將告發於有司,以加於大典或纂者;大典之內解紛諸程序不與焉。</small>
諸纂者不得為人可合理視為以法令脅人之言。屢斥他人之言為誹謗者,雖無脅人之意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令脅人者,宜告有秩。纂者決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口而不敢修,所謂寒蟬者也;寒蟬既眾,文由是而偏。纂者固得訴於官,然大典非訟所也。欲人正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文及其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡;不得招人為己之傀儡,不得呼朋引伴入議以亂之,亦不得為人之傀儡。<small>傀儡,謂一人而用數簿,以欺人、亂議、避律者,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。</small>
諸纂者不得輕指人為傀儡。
{{疏議|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或唯為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡者,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典或亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉諸議而使人淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分其功績於數簿以避察;
:六、以正簿修典,而以傀儡毀亂;
:七、共用一簿;
:八、以欺眾之術取須得眾信之職;
:九、以他簿譽己,偽為中立之評者;
:十、一議而投二票以上;
:十一、以一簿立頁,而以他簿巡之;
:十二、以他簿入議,偷換其旨以亂之;
:十三、以新簿續舊簿之爭,或屢易其簿以避察。
<small>諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿,同入一頁者,不在第四項之限。</small>
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典或入議;違者,其正簿之禁,得重計或延長之。
{{疏議|律之所計,在人不在簿。如退不過三,所限者一人之復舊,非一簿之復舊也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文,宜於議頁陳其所欲改,而請他人審之;
:四、不宜徑立相關之文,宜立草稿以待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
<small>無爭議之修,不在第三項之限。</small>
諸以利益之衝突而所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;其披露,須置申報之模板於其齋及相關文之議頁,入議時亦須自陳之;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待他人審之;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
<small>僱主與客戶為一者,不必另具客戶。於他站設簿以受人託修典而取酬者,須於其齋具其簿之連結。</small>
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏議|此披露之責,本於基金會之使用條款;非大典所創,亦非一典公議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯,須先置警告之模;再三為之,有秩酌情禁之。隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏議|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故為言之也。顯名者可警而後禁,隱名者難察而徑禁;其禁之輕重久暫,依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸出於善意、欲益大典之修,雖誤,雖為人所誤導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、無益而意善之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱他人不當之修。
{{疏議|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一文之辭而互復之,其行或有失,然皆非毀典。以善意之修為毀典,人將以為不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。<small>爭修,謂數人互復其修,而不就議以定之者;雖具摘要,亦同。</small>
{{疏議|爭修之為害,於書無益,於人有傷;纂者由是相仇,公議由是難成。頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三次。<small>一人連續復舊,而無他人之修間之者,以一次論。以數簿復之者,合計之。</small>
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。<small>禁所以止亂,非以罰人。</small>
{{疏議|〈五柱〉曰「如無亂紀,退不過三」,大典固有此制;然五柱未著其時,本律限以一日一夜。一日一夜,唐律所謂「以百刻」也<ref name="tl6a" />。退不過三者,所以為界,非許人三復也;未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,而其齋合於規者;
:三、復受禁之人違禁之修,及其傀儡之修;
:四、復顯然毀典之修,謂凡推人善意者皆以為毀典者也;
:五、復顯侵版權之文;
:六、復顯違基金會伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經其人自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。不能確知其合於前項,或於此有爭者,不宜復,宜就議。
<small>維基百科另有仲裁委員復仲裁頁擾亂之免,本律未之取。</small>
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告他人以方議之事;然其意須在益議之質、廣與議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告於與其事無涉之人;
:二、以偏頗之辭告之;
:三、擇持某見之人而獨告之;
:四、以大典以外之途私告之,而無正當之由者。
有其一,即為拉票。
{{疏議|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,有一不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以律護顯違律意之說,曲律以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文字以背律之本意;
:二、以細瑕駁人,或固守眾已明拒之說,以延公議;
:三、曲解程序,或羅列諸律以吹毛求疵而擾人;
:四、為得自證之簿,而濫為無益或有害之修。
{{疏議|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者,所以記公議;舞文者,各取所需。於字裡行間,求擾亂之據;其背律之本意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得於無現行之過時加之。
諸有秩不宜以已止而無復亂之虞之事追禁之。有秩宜先明其情而後禁;禁須明其由,具其證。<small>禁之輕重久暫,依〈察禁律〉。</small>
{{疏議|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。故亂之未作,則無所用禁;亂之既止,則禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由、其人之前行及禁前禁後之議而決之。
諸其人前功,不得為免禁之由。有秩不得自駁己所禁者之申訴。除禁有顯誤者外,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。唯有秩得理解禁之請。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏議|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律未之改;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩,於己所與之爭,須避嫌,不得以其權處之。第十九條另有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方之行;同爭而禁之輕重異者,須明其由。
{{疏議|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。執法者自與其爭,則處之難平;處之不平,則爭端益多。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
bp3d1lwmpaz67gc92gb7edjlm8rut0k
448798
448797
2026-11-05T16:33:12Z
Itsmine
5
448798
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。<small>纂者不必先讀律而後修典。</small>
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏議|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏議|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏議|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議頁、齋、書房及諸制度之頁也。<small>齋,用戶頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。</small>稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏議|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏議|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。<small>違者,依第四十一條。</small>
諸解律,得參注疏、例示及歷次公議。
{{疏議|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。<small>不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。</small>
{{疏議|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏議|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。<small>後有質詰,不在推定之限。</small>
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏議|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏議|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。<small>文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。</small>
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏議|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。<small>輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。</small>
{{疏議|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏議|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。<small>不得變通。</small>
{{疏議|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏議|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏議|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
大典生不立傳;然撰文之際,生人之言行,難免雜揉其中。諸纂者凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏議|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:<small>不得變通。</small>
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏議|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。<small>文字、圖像、音像、所引之文皆同。</small>
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏議|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。<small>大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。</small>
{{疏議|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏議|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏議|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。<small>躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。</small>
{{疏議|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。<small>不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。</small>
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏議|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。<small>揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。</small>
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏議|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。<small>傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。</small>
諸纂者不得輕指人為傀儡。
{{疏議|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
<small>諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。</small>
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏議|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
<small>無爭議之修,不在第三項之限。</small>
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
<small>僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。</small>
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏議|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏議|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏議|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。<small>數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。</small>
{{疏議|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。<small>連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。</small>
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。<small>禁以止亂,非以罰人。</small>
{{疏議|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
<small>維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。</small>
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏議|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏議|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。<small>輕重久暫,依〈察禁律〉。</small>
{{疏議|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏議|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏議|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
kpx9jl29h6xdao835k6co1c52nhr7r3
448807
448798
2026-11-05T21:19:34Z
Dasze
55299
448807
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。{{按|纂者不必先讀律而後修典。}}
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議頁、齋、書房及諸制度之頁也。{{按|齋,用戶頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。}}稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。{{按|違者,依第四十一條。}}
諸解律,得參注疏、例示及歷次公議。
{{疏|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。{{按|不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。}}
{{疏|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。{{按|後有質詰,不在推定之限。}}
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。{{按|文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。}}
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。{{按|輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。}}
{{疏|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。{{按|不得變通。}}
{{疏|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
大典生不立傳;然撰文之際,生人之言行,難免雜揉其中。諸纂者凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:{{按|不得變通。}}
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。{{按|文字、圖像、音像、所引之文皆同。}}
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。{{按|大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。}}
{{疏|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。{{按|躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。}}
{{疏|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。{{按|不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。}}
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。{{按|揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。}}
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。{{按|傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。}}
諸纂者不得輕指人為傀儡。
{{疏|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
{{按|諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。}}
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
{{按|無爭議之修,不在第三項之限。}}
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
{{按|僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。}}
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。{{按|數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。}}
{{疏|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。{{按|連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。}}
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。{{按|禁以止亂,非以罰人。}}
{{疏|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
{{按|維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。}}
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。{{按|輕重久暫,依〈察禁律〉。}}
{{疏|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
4nqmlvgsgyl9dq9fmbyehzq2kj5pvgv
448808
448807
2026-11-05T21:41:26Z
Dasze
55299
/* {{anchor|18|傳生人}}第十八條 傳生人 */ 復「諸」首
448808
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。{{按|纂者不必先讀律而後修典。}}
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議頁、齋、書房及諸制度之頁也。{{按|齋,用戶頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。}}稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。{{按|違者,依第四十一條。}}
諸解律,得參注疏、例示及歷次公議。
{{疏|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。{{按|不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。}}
{{疏|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。{{按|後有質詰,不在推定之限。}}
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。{{按|文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。}}
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。{{按|輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。}}
{{疏|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。{{按|不得變通。}}
{{疏|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
諸纂者不傳生人;然凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:{{按|不得變通。}}
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。{{按|文字、圖像、音像、所引之文皆同。}}
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。{{按|大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。}}
{{疏|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。{{按|躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。}}
{{疏|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。{{按|不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。}}
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。{{按|揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。}}
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。{{按|傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。}}
諸纂者不得輕指人為傀儡。
{{疏|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
{{按|諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。}}
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
{{按|無爭議之修,不在第三項之限。}}
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
{{按|僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。}}
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。{{按|數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。}}
{{疏|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。{{按|連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。}}
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。{{按|禁以止亂,非以罰人。}}
{{疏|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
{{按|維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。}}
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。{{按|輕重久暫,依〈察禁律〉。}}
{{疏|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
32rvzv0m5mskppfdr4pjwkai62gsow5
448812
448808
2026-11-06T05:42:16Z
一室幽蘭
105415
/* 第四條 稱文稱頁 */
448812
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。{{按|纂者不必先讀律而後修典。}}
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議、齋、書房及諸制度之頁也。{{按|齋,用戶頁也;議,討論頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。}}稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。{{按|違者,依第四十一條。}}
諸解律,得參注疏、例示及歷次公議。
{{疏|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。{{按|不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。}}
{{疏|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。{{按|後有質詰,不在推定之限。}}
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。{{按|文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。}}
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。{{按|輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。}}
{{疏|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。{{按|不得變通。}}
{{疏|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
諸纂者不傳生人;然凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:{{按|不得變通。}}
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。{{按|文字、圖像、音像、所引之文皆同。}}
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。{{按|大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。}}
{{疏|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。{{按|躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。}}
{{疏|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。{{按|不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。}}
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。{{按|揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。}}
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。{{按|傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。}}
諸纂者不得輕指人為傀儡。
{{疏|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
{{按|諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。}}
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
{{按|無爭議之修,不在第三項之限。}}
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以巡查之職巡相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
{{按|僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。}}
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。{{按|數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。}}
{{疏|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。{{按|連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。}}
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。{{按|禁以止亂,非以罰人。}}
{{疏|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
{{按|維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。}}
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。{{按|輕重久暫,依〈察禁律〉。}}
{{疏|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
dd7nqribzl44rxp8ypyy9k5emidv20f
448813
448812
2026-11-06T05:43:15Z
一室幽蘭
105415
448813
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;{{按|今正:舊作「依唐律之篇目,分為六卷」。唐律凡十二篇,無撰述之目,故改。}}仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。{{按|纂者不必先讀律而後修典。}}
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議、齋、書房及諸制度之頁也。{{按|齋,用戶頁也;議,討論頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。}}稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。{{按|違者,依第四十一條。}}
諸解律,得參注疏、例示及歷次公議。
{{疏|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。{{按|不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。}}
{{疏|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。{{按|後有質詰,不在推定之限。}}
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。{{按|文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。}}
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。{{按|輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。}}
{{疏|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。{{按|不得變通。}}
{{疏|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
諸纂者不傳生人;然凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:{{按|不得變通。}}
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。{{按|文字、圖像、音像、所引之文皆同。}}
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。{{按|大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。}}
{{疏|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。{{按|躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。}}
{{疏|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。{{按|不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。}}
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。{{按|揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。}}
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。{{按|傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。}}
諸纂者不得輕指人為傀儡。
{{疏|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
{{按|諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。}}
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
{{按|無爭議之修,不在第三項之限。}}
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以校官之職審校相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
{{按|僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。}}
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。{{按|數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。}}
{{疏|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。{{按|連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。}}
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。{{按|禁以止亂,非以罰人。}}
{{疏|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
{{按|維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。}}
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。{{按|輕重久暫,依〈察禁律〉。}}
{{疏|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
dhl9jidfc3iaafxozfn68h09ah2t83w
448824
448813
2026-11-06T11:10:22Z
Dasze
55299
舊作「依唐律之篇目,(本律)分為六卷」,非謂之唐律。
448824
wikitext
text/x-wiki
{{提案}}
「疏議」之體,取法於唐。永徽四年,[[長孫無忌]]等撰《律疏》三十卷,奉表以進<ref name="jlsb">{{Cite book|author=長孫無忌 等|title=進律疏表|quote=撰《律疏》三十卷,筆削已了。……永徽四年十一月十九日進。}}</ref>,後世所傳《[[唐律疏議]]》是也。其卷首之疏曰:「近代以來,兼經注而明之,則謂之為義疏。」<ref name="tl1">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=近代以來,兼經注而明之,則謂之為義疏。疏之為字,本以疏闊、疏遠立名。又,《廣雅》云:「疏者,識也。」}}</ref>又曰:「不有解釋,觸塗睽誤。」<ref name="tl1b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=而刑憲之司執行殊異:大理當其死坐,刑部處以流刑;一州斷以徒年,一縣將為杖罰。不有解釋,觸塗睽誤。}}</ref>蓋律尚簡約,疏主發明;簡以立綱,詳以張目。綱舉而守有歸,目張而用不惑。今撮修典之要規,著之為律;援前代之成式,申之以疏,故名《要律疏議》。
== 序 ==
大典者,眾手所成之書也。眾手共事,不可無規;規而不明,爭端斯起。唐人定律,其疏曰:「德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。」<ref name="tl1c">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=德禮為政教之本,刑罰為政教之用,猶昏曉陽秋相須而成者也。}}</ref>宋興,「法制因唐律、令、格、式,而隨時損益」;至咸平中,刪定編敕,「準律分十二門」<ref name="ss">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=宋法制因唐律、令、格、式,而隨時損益,則有編敕,一司、一路、一州、一縣又別有敕。……咸平中增至萬八千五百五十有五條,詔給事中柴成務等芟其繁亂,定可為敕者二百八十有六條,準律分十二門,總十一卷。}}</ref>。史稱宋之為治,「立法之制嚴,而用法之情恕」<ref name="ss2">{{Cite book|author=脫脫 等|title=宋史|chapter=卷一百九十九.刑法志一|quote=其君一以寬仁為治,故立法之制嚴,而用法之情恕。獄有小疑,覆奏輒得減宥。}}</ref>。嚴以正其綱紀,恕以通其人情;唐宋所以為法,大典所以取則。立律之旨,蓋在於斯。
大典之規,散見於〈[[維基大典:五柱|五柱]]〉、〈[[維基大典:察禁律|察禁律]]〉、〈[[維基大典:明引據|明引據]]〉、〈[[維基大典:章法|章法]]〉諸篇;又有〈[[維基大典:書文言|書文言]]〉之議,以資習文。{{按|今正:〈書文言〉隸分類維基士議,乃士議而非成規,舊與諸規並列,今別書之。}}其文多本維基百科之方針,因時損益;條目既繁,篇章各散,學者每苦其難稽。今撮其要,釐為六卷。取唐律十二篇之名例、鬭訟、詐偽、雜律、斷獄五目,益以撰述一卷<ref name="tl1d">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第一.名例|quote=《名例》冠十二篇之首,故云《名例第一》。}}</ref>;仿宋人分門之體,卷下分門。律文居前,注以小字;疏議繼後,設問析疑。庶幾綱目分明,覽者易曉焉。
凡稱律者,所以錄公議,非所以刑人。止亂息爭,其用也;成書傳信,其本也。亂止而眾手安,書成而百世考。纂者觀之,進則知所當為,退則知所不為矣。
== 卷第一 名例律 ==
=== 立制門 ===
==== {{anchor|1|律之本}}第一條 律之本 ====
諸大典之律,錄眾議之所同,明修典之常道,期成可信之書。律文有盡,眾議無窮;律議相違者,從眾議。{{按|纂者不必先讀律而後修典。}}
諸援律行事者,須依常理,須度本意;不得執文害義,不得泥字失真。
{{疏|律非自上而下之令,乃眾人公議之所成。書之於冊,以便稽考;載之於文,以備遵循。議有所改,律亦隨更;舊文不奪新議,成法不拘來者。新進之士,未嫻律而有失,導之以善,不繩以文;〈[[維基大典:誘掖新進策|誘掖新進策]]〉言之詳矣。}}
==== {{anchor|2|五柱}}第二條 五柱 ====
諸修典者,以五柱為本。柱以立典,律以申柱;本律諸條,皆申柱義。律之所未及,以柱義斷之。
{{疏|〈五柱〉之設,取喻於屋宇,其辭曰:「一室之固,必以柱,大典之立,蓋亦如是。」柱各有主,門各有承。其一曰:「立典以據,錄文有則。所書所言,必有所本,述而不作。」撰述律之所由立也。其二曰:「中道行事,切問近思,集思廣益。」中道、公議二門之所由立也。其三曰:「版權公有,翻印不究。」版權門之所由立也。其四曰:「器量宏深,姿度廣大,察納雅言。己所不欲,毋施於人。如無亂紀,退不過三。」鬭訟、雜律之所由立也。其五曰:「不得中行而與之,必也狂狷乎。狂者進取,狷者有所不為也。」其語本於《論語.子路》<ref name="lyzl">{{Cite book|title=論語|chapter=子路第十三|quote=子曰:「不得中行而與之,必也狂狷乎:狂者進取,狷者有所不為也。」}}</ref>;狂者勇於進修,狷者守於不為,變通、所不為二門之所由立也。柱以為綱,律以為目;綱目相維,典制斯行。五柱之冠諸律,職是故也。}}
==== {{anchor|3|基金會之制}}第三條 基金會之制 ====
諸維基媒體基金會理事會及開發者之公告,涉版權、法律及伺服器負載者,其效與律同,其序居議先。基金會之所行,不受本律所拘。
{{疏|大典託身於基金會之伺服器,受約於其使用條款。制出於上,非一典之議所能易;約及於眾,非一人之意所能違。故列之於公議之上焉。受酬修典者須自申報,即其例也,見第三十四條。}}
=== 釋名門 ===
==== {{anchor|4|稱文稱頁}}第四條 稱文稱頁 ====
諸稱「文」者,大典之條目也。稱「頁」者,兼文、議、齋、書房及諸制度之頁也。{{按|齋,用戶頁也;議,討論頁也;書房,用戶討論頁也,並見〈[[維基大典:簿之權限|簿之權限]]〉。}}稱「纂者」者,凡修典之人,有簿、無簿、暫簿皆同。稱「有秩」者,大典之管理員也。稱「公議」者,眾纂者修纂議論所成之共識也。稱「可靠之書」者,已刊行、可覆按、以考據嚴謹見稱者也。
{{疏|唐律名例,有「諸稱『日』者,以百刻」之類<ref name="tl6a">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸稱「日」者,以百刻。計功庸者,從朝至暮。}}</ref>。先定其稱,後讀其條;稱謂不一,律意難明。名義既正,條貫斯通。本門之設,蓋亦此意。}}
==== {{anchor|5|稱須稱宜}}第五條 稱須稱宜 ====
諸律稱「須」者,必為之;不從者,其所為得復其舊。稱「不得」者,禁為之;違者亦如之。稱「宜」者,常行之;有正當之由,聽其不從。稱「不宜」者,常避之;有正當之由,聽其為之。稱「得」者,為與不為,聽其自便。稱「不必」者,不責其為,為之亦聽。
諸稱「唯得」者,限其所許;逾其限者,與「不得」同。
諸稱「須」、「不得」之條,本條他條明定之外,更無例外;第八條別有規定者,從其規定。
{{疏|律文輕重,繫於六字。須與不得,強制之條;宜與不宜,勸導之條;得與不必,聽許之條。三者不明,則以勸為令,以令為勸,爭端起矣。
* 問曰:律稱「宜」,而纂者不從,可責之乎?
* 答曰:宜者常道,非必行之令。有由而不從,聽之;受詰而陳由,宜也。無由而屢違,眾所不許;則入雜律,以擾亂論。}}
=== 解律門 ===
==== {{anchor|6|解律之法}}第六條 解律之法 ====
諸解律者,須依其文,須參其意;文兼二解以上者,從其最成本意者。
諸纂者不得執律之文,以避律之意;亦不得以律無明禁,而行顯違律意之事。{{按|違者,依第四十一條。}}
諸解律,得參注疏、例示及歷次公議。
{{疏|律文有限,事變無窮;以有限之文,應無窮之變,不得不推之以理。唐律所謂「諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重」<ref name="tl6b">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第六.名例|quote=諸斷罪而無正條,其應出罪者,則舉重以明輕;其應入罪者,則舉輕以明重。}}</ref>,即此義也。大典之律,其道亦然。執字以爭,曰「律無明禁,吾得為之」者,是以律為逋逃之藪,豈立律之本意哉?}}
=== 變通門 ===
==== {{anchor|7|變通}}第七條 變通 ====
諸律有妨善修、善護大典者,纂者得不從其律。{{按|不從者,受詰或有須之時,宜陳其由;事有可議,得就[[維基大典:會館|會館]]議之。}}
{{疏|此即大典〈[[維基大典:忽略規則|忽略規則]]〉之義,其文曰:「如有規則,沮君撰頁,毋庸墨守成規,忽略之可矣。」名曰「變通」,取《易.繫辭下》「變通者,趣時者也」之義<ref name="yz">{{Cite book|title=周易|chapter=繫辭下|quote=剛柔者,立本者也;變通者,趣時者也。}}</ref>。因時以制宜,不泥於條文;隨事以權衡,不拘於成法。變通之名,由此而立。
* 問曰:律既可不從,何以立律?
* 答曰:律以記常,非以縛人。宋史稱宋之法「立法之制嚴,而用法之情恕」<ref name="ss2" />,其義相通。然變通所以成書,非以便己;託變通之名,行私意之實,眾必不許。}}
==== {{anchor|8|不得變通}}第八條 不得變通 ====
諸條下注「不得變通」者,雖援前條,不在不從之限。
諸援前條而不從須、不得之條者,須明其何以益典。
{{疏|不得變通之條,限於違則傷人傷典、事重而難復者。今定凡三。無據而損生人、現存團體之名者,須即去之,見第十五條;涉生人之爭議文字,見第十九條;揭人私隱,見第二十七條。指定過寬,則前條徒具其文;故寧嚴其選,不輕增焉。}}
=== 公議門 ===
==== {{anchor|9|修而成議}}第九條 修而成議 ====
諸纂者所改,無人質詰者,推定眾許。{{按|後有質詰,不在推定之限。}}
諸纂者改文,宜以摘要或議頁陳其由。他人善意之修,己所不同者,宜因而損益,不宜徑復其舊;必須復舊,須陳其由。
{{疏|默而不言,推為眾許,此修典之常也。無言則推其許,有詰則破其推;推既破矣,議乃興焉。數人互復,雖各具摘要,猶為爭修,依雜律處之。}}
==== {{anchor|10|議以定之}}第十條 議以定之 ====
諸定公議,須權眾纂者正當之論。公議不必一辭;不能一辭,宜從多數。少數合理之論,適為之答,適與之讓。
諸公議不以計票而決;所重者,理之曲直,規之合否。無理之辭,若「吾不喜之」者,例不與焉。少數已駁多數,多數不能答者,不為公議。
{{疏|〈五柱〉曰「集思廣益」,此之謂也。所重在理,不在其勢;票數雖眾,理有不足,不足為議。大典擬案之模,亦云「納案與否,非純以票選,乃本之以理」,其旨一也。}}
==== {{anchor|11|議可更易}}第十一條 議可更易 ====
諸纂者得以新理、新事重議,以新議易舊議。無新理而屢翻新議,或事勢未變,而屢以已答之論挑成議者,以擾亂論。
諸纂者宜守成議,於眾所訂立之律尤然。
== 卷第二 撰述律 ==
=== 中道門 ===
==== {{anchor|12|持平}}第十二條 持平 ====
諸事有數說相持者,文須按其輕重,平陳眾說。不得以一說為真理,不得斷某說為是;說雖最通行、最居中者亦同。不得獨貶一說而述之。{{按|文宜明其爭端所在,誰持何說,持之何由,何說為眾所受。}}
諸文有不持平者,宜改其辭,使歸於平;不宜但以「不持平」為由而去之。
{{疏|持平者,非無說也,亦非折中也,如實陳眾說所處之位而已。《中庸》曰:「萬物並育而不相害,道並行而不相悖。」<ref name="zy1">{{Cite book|title=禮記|chapter=中庸|quote=萬物並育而不相害,道並行而不相悖。小德川流,大德敦化,此天地之所以為大也。}}</ref>眾說並陳,各得其所,斯為持平。纂者皆有所好,平與不平,在其組織眾書。補其未備之說,正其輕重之失,修其措辭之偏;三者之功,率勝於去。}}
==== {{anchor|13|輕重}}第十三條 輕重 ====
諸文述眾說,須與其見於可靠之書之輕重相稱。少數之說,不宜與通說等量;極少之說,除專文外,不宜收錄。不得使讀者以少為重於多,亦不得使讀者以二者為相當。
諸說輕重,以可靠之書為準,不以纂者持說之多寡為準。{{按|輕重之義,兼及正文、圖像、內外連結、分類;述事之輕重亦同。}}
{{疏|輕重之權,在書不在人。述大地之形者,不必及地平之說。少數之說,未經眾書論列,而欲入文者,必先刊於他所,待人論辨;然後錄之於典,以備一說。此輕重之大較也。}}
=== 徵信門 ===
==== {{anchor|14|舉證}}第十四條 舉證 ====
諸增入或復入文字者,任其舉證。涉生人之爭議文字,依第十九條去之者,主留主復者任其舉證。
諸增入、復入者,須明其文合於撰述諸條,不止有據而已。
{{疏|《中庸》曰:「上焉者雖善無徵,無徵不信,不信民弗從。」<ref name="zy2">{{Cite book|title=禮記|chapter=中庸|quote=上焉者雖善無徵,無徵不信,不信民弗從;下焉者雖善不尊,不尊不信,不信民弗從。}}</ref>書之有無,增者證之;錄之當否,改者明之。證其有據,明其當錄;二者兼備,然後可入。}}
==== {{anchor|15|明引據}}第十五條 明引據 ====
諸文所載,須可由讀者覆按於可靠之書;所增入者,纂者須具其出處。
諸直引之文、已受或可受質詰之文、涉生人新故之爭議文字,須於文中具其出處。所引之書,須直證其文。
諸文無出處者,得去之。去之之前,宜先自求其據,或置模板以待,宜予增入者以時。
諸無據或據劣之文,足損生人或現存團體之名者,不得存於文,不得移於議頁,須即去之,不必待議。{{按|不得變通。}}
{{疏|大典〈[[維基大典:明引據|明引據]]〉曰:「凡我大典文句,必足考據,以便觀者兼查,自斷信偽。」所謂直證,覽書即得其事,不待纂者推論。合二書而後得之,非直證也,乃自作也,見第十七條。
* 問曰:何謂可受質詰之文?
* 答曰:視其事之有爭與否,出人意表與否,及涉數目、年月、因果、褒貶與否。言地繞日,人不致詰;言廟建某年,則可詰矣。}}
==== {{anchor|16|可靠之書}}第十六條 可靠之書 ====
諸文宜以已刊行、獨立於其主題之第三方可靠之書為據;所據之書,須標其撰者、刊者。
諸主題無可靠第三方之書者,不宜立為專文。纂者不得以維基百科或大典之文為據。
{{疏|可靠之書,刊行有主,考據有徵。維基百科及大典,人人得而修之,非可靠之書也。他種類書,得為所據;然不署名者、非專家所撰者,其信稍遜。古籍具其篇卷,今書標其撰刊;如是則讀者覆按,有所依歸矣。}}
=== 述而不作門 ===
==== {{anchor|17|述而不作}}第十七條 述而不作 ====
諸文不得載纂者自創之論。
諸纂者不得合二書以上之說,成諸書所未明言之論;合一書數處之說者亦同。親歷見聞而無書可據者,不得入文;未刊之目擊之辭亦同。
諸纂者須具直涉其題、直證其文之可靠之書,以明其非自作。
{{疏|〈五柱〉曰「述而不作」,語出《論語.述而》:「述而不作,信而好古,竊比於我老彭。」<ref name="ly-srdq">{{Cite book|title=論語|chapter=述而第七|quote=子曰:「述而不作,信而好古,竊比於我老彭。」}}</ref>述者傳其所聞,作者創其所見;大典許其述,不許其作。假如甲書載某人某年平某亂,乙碑載某人以平亂建某廟;纂者遂書曰「由是推之,廟之建當在某年之後」,而書碑皆無此言,是為自作,其推雖合於理,猶不得入文。若丙氏已合書碑而論之,則書曰「丙氏據碑及史,以廟建於某年之後」,引丙氏為據,是為述也。文中有「由是推之」、「可見」、「宜存疑」之辭,而斷之者實為纂者,多為自作之徵。
* 問曰:大典以文言為之,譯外文之書以入典,為自作乎?
* 答曰:易其辭而存其義,述也;因譯而增損其義,作也。}}
=== 傳記門 ===
==== {{anchor|18|傳生人}}第十八條 傳生人 ====
諸纂者不傳生人;然凡增入涉生人言行之文,須加審慎。其文須確,其據須優;法令撰述,須嚴守之;生人私隱,須顧及之。大典不得為流言之所。纂者斷事,須慮其所修有無傷於生人。
{{疏|生不立傳,大典之舊習也。〈[[維基大典:章法#生不立傳|章法]]〉曰:「大典因古習,生不立傳。生者不傳,誠古之道。然傳記而外,猶有行狀、記事之可為。」生人雖不立傳,言行猶散見他文;本條之設,所以防其傷也。私隱與文全不能兩得者,私隱為先。所謂法令,大典所須守者,基金會所受轄之法令亦在其中。}}
==== {{anchor|19|去爭議之文}}第十九條 去爭議之文 ====
諸涉生人之爭議文字,有下列一事者,須即去之,不必待議;或毀或譽,或但可疑,皆同:{{按|不得變通。}}
:一、無據,或據劣者;
:二、臆度所據之意者;
:三、據自刊之書,非例所許者;
:四、所據不合第十五條、第十六條者。
諸依前項去之者,不在退不過三之限。有秩得強去之,並得護頁、禁簿;雖嘗修其文,亦同。
諸纂者去之,宜於摘要明援本條,宜於議頁陳其所由。實疑其文有爭與否、所據劣否者,宜就會館議之。
{{疏|所謂爭議之文,於其人毀譽不論,但可受詰者皆是。〈[[維基大典:章法#無據不載|章法]]〉亦曰:「若無判刑,不言其罪。若無官符,不名其職。」毀之譽之,其可詰一也;去之復之,其責分焉。去者明援本條,所以別於爭修;復者任其舉證,見第十四條。}}
=== 版權門 ===
==== {{anchor|20|毋侵版權}}第二十條 毋侵版權 ====
諸纂者不得用侵人版權之物;度其或侵者,不得入典。所入之物,纂者須保其合於版權法令。{{按|文字、圖像、音像、所引之文皆同。}}
諸疑其物違法者,宜自撰其文,或乞助於眾,或覓可用之物,或以己辭述之;亦得請版權人以相容之授權釋出其作。
{{疏|〈五柱〉曰:「版權公有,翻印不究。不設版稅,自用販售,悉聽尊便。」大典所以聽人翻印者,以其文皆以自由之授權釋出也。一物侵權,翻印者或罹於法;一隙不補,大典之本或壞。自撰之文,即為新作,可安然入典。}}
==== {{anchor|21|去侵權之文}}第二十一條 去侵權之文 ====
諸頁中一部侵權者,須去其文,宜於議頁陳之;知其原出,宜並具之。後得版權人之許,宜復其文。
諸纂者見侵權之文,宜設法去之。
=== 所不為門 ===
==== {{anchor|22|有所不為}}第二十二條 有所不為 ====
諸文須守撰述諸條。主題未違本門,事雖真確有用,猶不足以入典。細節不必盡載;宜總括經審而為人所公認之知。{{按|大典非印本之書,非字書;非新說之所,非宣傳之具;非鏡站、連結、圖像之集,非網誌、追思之所;非名錄,非手冊、教本;非預言,非新聞;非不擇之叢鈔。凡此所舉,例示而已,非盡列也。}}
{{疏|「有所不為」,語出前引《論語.子路》<ref name="lyzl" />。有所不為,而後可以有為;知所不錄,而後可以善錄。本門之設,其意在此。}}
== 卷第三 鬭訟律 ==
=== 禮讓門 ===
==== {{anchor|23|不逆詐}}第二十三條 不逆詐 ====
諸纂者,除有明證,宜推他人所修所言出於善意;縱有所疑,亦宜盡力推之。明出惡意,若故毀大典者,不在此限。
{{疏|《論語·憲問》曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」<ref name="ly-xw">{{Cite book|title=論語|chapter=憲問|quote=子曰:「不逆詐,不億不信,抑亦先覺者,是賢乎!」}}</ref>是也。
大典〈簿之權限〉論自證之簿,有「推赤心置人腹中」之語,推誠之義,亦猶是也。人人得修之書,修之者多欲益之;不然,大典無由成矣。善意者,論心而不論事;有失者,正失而不責故。然屢以「請推誠」責人者,其辭或已疑人,亦宜慎之。}}
==== {{anchor|24|毋攻人身}}第二十四條 毋攻人身 ====
諸纂者於大典之內,不得攻人身。宜就事論事,不宜因事及人。
諸攻人身者,謂:
:一、詈辱其人,或以惡言否定之;
:二、辱其政見、黨屬、信仰、出身、僱主,或所用之字形;
:三、以性別、種族、族群、殘疾、疾病、宗教歧視之,或以貶稱呼之;
:四、以法令恐之;
:五、恫嚇之,以死相脅者尤甚;
:六、以貶稱攻其政治身份;
:七、脅之使受官府、僱主或他人之迫害,或故使受之。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉以「辱斯文」、「辱人名」為隳典之屬,其疏釋「辱人名」曰:「即二人相詈也。」本條所禁,與之同科而稍廣。或以繁簡之字相譏,或以敵黨之稱相蔑;不問出自何方,不問施於何人,皆屬第二、第六項。}}
==== {{anchor|25|攻人身之禁}}第二十五條 攻人身之禁 ====
諸屢攻人身者,得禁之;所修有詈辱之語者尤然。以前條第二項見禁者,禁時須具其由。犯前條第七項者,有秩得即禁之,其期從長。
諸人雖有前過,或已禁修,纂者亦不得攻之。
{{疏|人有前過,猶不可攻;人已禁修,尤不可辱。末項之義,即俗所謂不得落井下石也。}}
=== 騷擾門 ===
==== {{anchor|26|毋擾人}}第二十六條 毋擾人 ====
諸纂者不得騷擾他人。{{按|躡人所修而擾之,恫嚇之,揭其私隱,擾其齋與書房,及擾之於大典之外者,皆其類也。}}
{{疏|擾人之害,輕則使人不樂修典,重則使人棄典而去;擾而不止,則眾手相協之本潰矣。屢以提及之功能呼人者,亦擾之類也。}}
==== {{anchor|27|毋揭私隱}}第二十七條 毋揭私隱 ====
諸纂者,除其人自願公開或自為連結外,不得揭人私隱,不得載其私隱之內外連結;事之真偽皆同。{{按|不得變通。私隱者,真名、生日、證件號碼、居所、職所、電話、電郵,凡可識其人者皆是。}}
諸所修有揭私隱者,須即復其舊,須請有權者永去之。揭私隱者,除無心而無惡意外,即足以禁之。
諸見揭私隱者,及受揭之人,皆不宜言其真偽。處之者須稱其事為「欲揭他人私隱」,須註其真偽未定;禁誌告示,不得論其真偽。
{{疏|一言其真偽,揭者、觀者皆得而推之;言之愈明,推之愈易。故受害之人,亦不宜言焉。}}
=== 訟門 ===
==== {{anchor|28|毋以訟脅人}}第二十八條 毋以訟脅人 ====
諸纂者不得於大典之內以法令脅人。{{按|揚言將訴之於官,或將告之於有司,以加於大典或纂者,皆是;大典之內解紛諸程序不與焉。}}
諸纂者不得為可合理視為以法令脅人之言。屢斥人言為誹謗者,雖無脅意,亦得以脅人論。
諸纂者遇爭,宜依解紛之程序;事涉大典之本者,宜致書基金會。見人以法令相脅者,宜告有秩。決意興訟者,宜於訟畢之前,不與其事之修纂議論。
{{疏|大典〈[[維基大典:察禁律|察禁律]]〉之疏曰:「凡欲屈人以言,不以律者,皆為恫嚇」,以法令脅人,恫嚇之尤者也。其害在使人噤口,不敢復修;噤者既眾,文由是偏。纂者固得訴於官,然大典非訟所也。欲正其文者,宜曰「此文述我不實,請正之」,而避指控之辭。}}
==== {{anchor|29|毋誹謗}}第二十九條 毋誹謗 ====
諸纂者須保所刊之文無誹謗。已確為誹謗者,須去之。
諸自謂受大典誹謗之害者,得致書基金會,陳其文與其誤。
== 卷第四 詐偽律 ==
=== 傀儡門 ===
==== {{anchor|30|一人一簿}}第三十條 一人一簿 ====
諸有簿者,宜唯以一簿修典。纂者不得操傀儡,不得招人為傀儡,不得呼朋引伴入議以亂之,亦不得為人傀儡。{{按|傀儡者,一人而用數簿,以欺人、亂議、避律者也,俗謂之分身、馬甲。棄舊簿而以新簿重來者,亦用此律。}}
諸纂者不得輕指人為傀儡。
{{疏|邀親友以入典,大典所樂;招親友以助見,大典所禁。新簿之行與他簿全同,或專為一事而修者,得與傀儡同處。一人操數簿,或數人為人傀儡,得視為一人而處之。}}
==== {{anchor|31|濫用多簿}}第三十一條 濫用多簿 ====
諸用多簿以欺人、毀典、亂公議者,皆為濫用。
諸下列者,皆為濫用多簿:
:一、偽造眾意;
:二、以未公開之簿修制度之頁,或以多簿入議刪、選舉,淆其身份;
:三、以多簿避以人計之律;
:四、以多簿同修一頁、同入一議,以示多人;
:五、分功績於數簿以避察;
:六、正簿修典,傀儡毀亂;
:七、數人共用一簿;
:八、以欺眾之術,取須得眾信之職;
:九、以他簿自譽,偽為中立之評;
:十、一議而投二票以上;
:十一、此簿立頁,彼簿巡之;
:十二、以他簿入議,偷換其旨;
:十三、以新簿續舊爭,或屢易其簿以避察。
{{按|諸簿之相屬已公開,若正簿與公用電腦之簿、正簿與機器人之簿同入一頁者,不在第四項之限。}}
==== {{anchor|32|以人計}}第三十二條 以人計 ====
諸律以人計,不以簿計。
諸被禁者,不得以傀儡避禁、修典、入議;違者,其正簿之禁,得重計或延長之。
{{疏|律之所計,在人不在簿。退不過三,所限者一人之復,非一簿之復也。}}
=== 避嫌門 ===
==== {{anchor|33|避嫌}}第三十三條 避嫌 ====
諸纂者有利益之衝突者:
:一、須審守大典之律;
:二、須申報其衝突;
:三、不宜徑修相關之文;宜陳所欲改於議頁,請他人審之;
:四、不宜徑立相關之文;宜立草稿,待他人審之;
:五、不宜以巡查之職巡相關之文;
:六、須敬他人,其辭宜簡。
{{按|無爭議之修,不在第三項之限。}}
諸以利益之衝突,所修不合大典之旨或律者,有秩得禁之。
==== {{anchor|34|受酬修典}}第三十四條 受酬修典 ====
諸受酬而修典者:
:一、須披露其僱主、客戶及他相關之身份;置申報之模板於其齋及相關文之議頁,入議之時亦須自陳;
:二、不得徑修相關之文,唯得於議頁請改;
:三、不得徑立相關之文,唯得立草稿以待審;
:四、不得以校官之職審校相關之文;
:五、須以註冊之簿為之,不得以暫簿為之。
{{按|僱主、客戶為一者,不必另具。於他站設簿以受託取酬者,須於其齋具其簿之連結。}}
諸違前項者,其所修得復其舊,其人得禁之。不披露而受酬修典者,得禁之。
{{疏|披露之責,本於基金會之使用條款;非大典所創,非一典之議所能免,見第三條。}}
== 卷第五 雜律 ==
=== 毀典門 ===
==== {{anchor|35|毋毀典}}第三十五條 毋毀典 ====
諸纂者不得毀大典;毀典者,得禁之。纂者得先警之、導之。顯名毀典者,初犯須先置警告之模,再三為之,有秩酌情禁之;隱名毀典者,有秩得徑禁之,不以先警為限。{{按|今正:舊作「然有秩禁之,不以先警為限」,不分顯隱。〈察禁律〉云顯名隳典者「初觸,置警告模板。再三為之,適情鞫置」,唯隱名者「咸禁七日,勿論初、再」,故分而書之。}}
諸所為非毀典者,亦得依他律禁之。
{{疏|大典〈察禁律〉之疏曰:「凡言不實、壞文貌、置廣告、言輕狂、言恫嚇、辱斯文、辱人名者,皆為隳典。」又釋言輕狂曰:「隳典者知其所入者誕,而入之。」是隳典者,以故而言也。顯名者可警而後禁,隱名者難察而徑禁;輕重久暫,悉依〈察禁律〉。}}
==== {{anchor|36|善意非毀}}第三十六條 善意非毀 ====
諸修出於善意、欲益大典者,雖誤,雖為人所導,雖不合公議,雖涉擾亂,皆不為毀典。
諸纂者須辨有益之修、意善而無益之修,與真毀典之修。除其人顯欲損大典之全者外,不得以「毀典」稱人不當之修。
{{疏|大典〈[[維基大典:毀典|毀典]]〉曰:「倘有後生新晉,難解《凡例》《章法》,先行纂典,竟有謬誤,不宜謂毀典,而宜勸誘之。」二人爭一辭而互復,其行或有失,然皆非毀典。以善為毀,人將謂其不公,或因而去;去者日多,大典之損也。}}
=== 爭修門 ===
==== {{anchor|37|毋爭修}}第三十七條 毋爭修 ====
諸纂者不得爭修;爭修者,須即止之。{{按|數人互復其修,不就議以定之者,是為爭修;雖具摘要,亦同。}}
{{疏|爭修之為害,於書無益,於人有傷。纂者由是相仇,公議由是難成;頁之屢易,讀者亦惑焉。}}
==== {{anchor|38|退不過三}}第三十八條 退不過三 ====
諸纂者,一日一夜之內,於一頁復他人之修,不得過三。{{按|連續復舊,無他人之修間之者,以一次論;以數簿復之者,合計之。}}
諸復舊雖不過三,而相爭不已者,仍為爭修。
諸初犯前二項者,有秩得禁其修所爭之頁一日一夜;屢犯或挑釁者,得禁之從長。{{按|禁以止亂,非以罰人。}}
{{疏|〈五柱〉曰「如無亂紀,退不過三」,大典之舊制也。五柱但著其數,本律復限其時;數以三而為界,時以晝夜為期。晝夜之期,唐律所謂「以百刻」也<ref name="tl6a" />。以三為界,非以三許;故未及三次而爭修者,亦得禁之。}}
==== {{anchor|39|復舊之免}}第三十九條 復舊之免 ====
諸復舊有下列一事者,雖屢為之,不以爭修論:
:一、自復己修;
:二、復他人於己齋之修,齋合於規者;
:三、復受禁者違禁之修,傀儡之修亦同;
:四、復昭然毀典之修,推以善意而不可解者;
:五、復顯侵版權之文;
:六、復顯違伺服器所在地法令之文;
:七、復顯違傳記門之文,及未經自願公開之私隱。
諸援前項者,宜於摘要或議頁陳之。合否未確,或有爭者,不宜復,宜就議。
{{按|維基百科另有仲裁委員於仲裁之頁復擾亂之免,本律未取。}}
=== 拉票門 ===
==== {{anchor|40|告眾與拉票}}第四十條 告眾與拉票 ====
諸纂者得告人以方議之事;其意須在益議之質,廣議之人,以成更廣之公議。
諸纂者不得拉票。拉票者,謂:
:一、濫告無涉之人;
:二、以偏辭告之;
:三、擇同見者而獨告之;
:四、無正當之由,以典外之途私告之。
有其一,即為拉票。
{{疏|告眾之當者,數有節而辭中立,人不分黨而事公開;四者兼備,然後為當,一有不備,即為拉票。擇人而告,猶今俗所謂箍票也。}}
=== 舞文門 ===
==== {{anchor|41|毋舞文}}第四十一條 毋舞文 ====
諸纂者不得舞文。斷章取義以護違律之說,曲解律文以攻合律之說,亂大典程序之常者,皆以擾亂論。
諸下列者,皆為舞文:
:一、執律之文,背律之意;
:二、以細瑕駁人,固守已拒之說,以延公議;
:三、曲解程序,羅列諸律,吹毛求疵以擾人;
:四、為得自證之簿,濫為無益有害之修。
{{疏|《史記·貨殖列傳》曰:「吏士舞文弄法,刻章偽書。」<ref name="sj-hzlz">{{cite book|author=司馬遷|title=史記|chapter=卷一二九·貨殖列傳|quote=吏士舞文弄法,刻章偽書,不避刀鋸之誅者,沒於賂遺也。}}</ref>又《北齊書·卷六·孝昭帝紀》書:「又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。」<ref name="bqs">{{cite book|author=李百藥|title=北齊書|chapter=卷六·孝昭帝紀|quote=又以廷尉、中丞,執法所在,繩違按罪,不得舞文弄法。}}</ref>{{按|今正:舊作「中臣」,據維基文庫本《北齊書》卷六改。}}是也。
律者所以記公議,舞文者所以逞私圖。尋章摘句,求擾亂之據;斷文取義,背立律之心。其悖律意也甚矣。第四項所謂自證之簿,見〈簿之權限〉。}}
== 卷第六 斷獄律 ==
=== 察禁門 ===
==== {{anchor|42|禁以止亂}}第四十二條 禁以止亂 ====
諸禁,唯得以防大典之受毀受亂;不得以報復、貶人、罰人,亦不得加於無現行之過。
諸有秩不宜追禁已止而無復亂之虞者。有秩宜先明其情,而後禁之;禁須明其由,具其證。{{按|輕重久暫,依〈察禁律〉。}}
{{疏|唐律雜律有「諸不應得為而為之者,笞四十」之文,注曰:「謂律、令無條,理不可為者。」<ref name="tl27">{{Cite book|author=長孫無忌 等|title=唐律疏議|chapter=卷第二十七.雜律|quote=諸不應得為而為之者,笞四十;謂律、令無條,理不可為者。事理重者,杖八十。}}</ref>大典之禁,與此異趣。〈察禁律〉曰:「察禁,所以沮殘止賊者也。」非以罰人之過,乃以止人之亂。亂之未作,禁無所用;亂之既止,禁亦當解。宋人「獄有小疑,覆奏輒得減宥」<ref name="ss2" />,用法之恕,大典亦取焉。}}
==== {{anchor|43|申訴}}第四十三條 申訴 ====
諸被禁者,得申訴。有秩得察禁之由,察其前行,察禁前禁後之議,而後決之。
諸其人前功,不得為免禁之由。有秩不得自駁己禁者之申訴。除禁有顯誤,有秩解禁之前,須告原禁之有秩。屢濫申訴者,得禁其修書房。解禁之請,唯有秩得理之。
諸以毀典見禁而欲解禁者,須誓不再犯;解禁之後復舊者,永禁之。{{按|今補:〈察禁律〉訟律云「隳典被禁者,持顯名、隱名地址至有秩處,興議論,凡欲解禁,必誓不再犯,解禁之後復舊者,鞫永禁」,舊文未載,故補之。}}
{{疏|〈[[維基大典:察禁律|察禁律]]〉之訟律曰:「聖人不能無過,況乎人也。故著訟律,以效反正。」其疏又曰:「永禁例不赦。」過而能改,許其反正;惡而不悛,絕其自新。本律於此,未之改也;永禁者之申訴,從〈察禁律〉。}}
==== {{anchor|44|有秩避嫌}}第四十四條 有秩避嫌 ====
諸有秩於己所與之爭,須避嫌,不得以其權處之;第十九條別有規定者,從其規定。{{按|今補:第十九條許有秩於涉生人之爭議文字,雖嘗修其文,亦得強去之、護頁、禁簿,與本條相涉,故明其先後。}}
諸數人同爭者,有秩須兼察諸方;同爭而禁之輕重異者,須明其由。
{{疏|〈[[維基大典:簿之權限|簿之權限]]〉謂有秩「與眾同修,唯兼掌庶務,循理典章,故不可自矜」。身在爭中,則處之難平;處之不平,則爭端益熾。有秩之避嫌,蓋為此也。}}
== 註 ==
<references />
<!-- [[分類:維基制度]] -->{{按|今正:此篇方於二〇二六年十一月四日提案於會館,未成公議,暫不入分類維基制度;〈提案〉之模自歸之於分類維基士議,俟公議既定,乃復其類。}}
eq45ly78zd28pfi5546x1wx96oqipwh
模板:疏
10
140018
448799
448714
2026-11-05T16:33:41Z
Itsmine
5
448799
wikitext
text/x-wiki
<div style="border-left:3px solid rgb(0, 64, 128);padding-left:3em;margin:0.5em 0 1em;background-color:rgba(0, 64, 128, 0.2);">
'''疏議曰:'''(不具約束力)<br />
<div style="padding-left:1em;">{{{text|{{{quote|{{{1|<noinclude>{{lorem ipsum}}</noinclude><includeonly>{{error|誤:無內文。}}</includeonly>}}}}}}}}}</div>
</div><noinclude>
{{documentation}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
smc8z9amixc41q32znds17e72fw0hxc
448803
448799
2026-11-05T21:15:38Z
Dasze
55299
Dasze遷頁[[模板:疏議]]至[[模板:疏]]
448799
wikitext
text/x-wiki
<div style="border-left:3px solid rgb(0, 64, 128);padding-left:3em;margin:0.5em 0 1em;background-color:rgba(0, 64, 128, 0.2);">
'''疏議曰:'''(不具約束力)<br />
<div style="padding-left:1em;">{{{text|{{{quote|{{{1|<noinclude>{{lorem ipsum}}</noinclude><includeonly>{{error|誤:無內文。}}</includeonly>}}}}}}}}}</div>
</div><noinclude>
{{documentation}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
smc8z9amixc41q32znds17e72fw0hxc
448805
448803
2026-11-05T21:16:01Z
Dasze
55299
448805
wikitext
text/x-wiki
<div style="border-left:3px solid rgb(0, 64, 128);padding-left:3em;margin:0.5em 0 1em;background-color:rgba(0, 64, 128, 0.2);">
'''【疏】議曰:'''(不具約束力)<br />
<div style="padding-left:1em;">{{{text|{{{quote|{{{1|<noinclude>{{lorem ipsum}}</noinclude><includeonly>{{error|誤:無內文。}}</includeonly>}}}}}}}}}</div>
</div><noinclude>
{{documentation}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
80zdugoctoxo8nxhpblbf0bwblii752
448810
448805
2026-11-05T22:05:10Z
Dasze
55299
A little bit too far
448810
wikitext
text/x-wiki
<div style="border-left:3px solid rgb(0, 64, 128);padding-left:2.5em;margin:0.5em 0 1em;background-color:rgba(0, 64, 128, 0.2);">
'''【疏】議曰:'''(不具約束力)<br />
<div style="padding-left:1em;">{{{text|{{{quote|{{{1|<noinclude>{{lorem ipsum}}</noinclude><includeonly>{{error|誤:無內文。}}</includeonly>}}}}}}}}}</div>
</div><noinclude>
{{documentation}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
tss244f9c1p6uhjh4ffl5opqysqfiqo
模板:Commentary
10
140019
448806
448715
2026-11-05T21:19:00Z
Xqbot
4352
修正双重重定向[[模板:疏議]]至[[模板:疏]]
448806
wikitext
text/x-wiki
#重新導向 [[模板:疏]]
min4ajjednc3xb12owgfqc5rlsuorcq
孫殿英
0
140022
448789
448758
2026-11-05T13:54:55Z
Shunshen Lee
68656
448789
wikitext
text/x-wiki
[[File:Sun Dianying 孙殿英.jpg|180px|thumb|孫殿英像]]
'''孫殿英''',字'''魁元''',[[河南省|河南]]永城人也。
==平生==
[[File:Dingdongling Of Qing Dynasty in Hebei.jpg|180px|thumb|孝欽顯皇后陵]]
[[一八八九年|光緒十五年]]生,冒稱[[明]]大學士[[孫承宗|承宗]]裔。少為廟道會首,歷事丁香玲、憨玉琨、胡景翼諸鎮,為國民軍師長。奉系將[[張宗昌]]、褚玉璞聯兵下[[北京|南口]],殿英引軍來附,以殿英為直魯聯軍第廿五師長。[[一九二七年|民國十六年]],擢第十四軍長,加大名鎮守使銜。[[蔣中正]]北伐敗宗昌於[[山東]],殿英以其兵降中正,改國民革命軍第十二軍長,徙鎮[[河北|遵化]]。時[[清]]東陵在殿英境內,殿英駐蹕歲餘,兵饑疲,乃藉「軍事演習」名發掘[[清高宗|高宗]]、[[孝欽顯皇后]]陵寢,取其所藏珠寶。孝欽陵甚固,殿英由墓道下,歎其厚葬,又見地宮豪奢壯麗,廣藏前朝異珍,古玩字畫,琳瑯滿目。殿英悉發之,遂傳於世,輿論沸騰,[[遜清皇室小朝廷|清皇室]]尤心惡之,詈為元兇<ref>{{Cite web |url=http://www.bwsk.net/js/p/puyi/wdqb/028.htm |title=愛新覺羅·溥儀>我的前半生>四 東陵事件 |accessdate=2018-01-31 |archive-date=2018-02-01 |archive-url=https://web.archive.org/web/20180201020241/http://www.bwsk.net/js/p/puyi/wdqb/028.htm |dead-url=no }}</ref>。殿英懼,乃取所盜貲貨,因遣使遽納賂[[南京]],權貴{{按|中正妻宋美齡等}}為說之;中正宥殿英還鎮,待之如故,清室繇此益視[[中華民國|當局]]如讎矣。
已而復叛中正,依附[[山西]]帥[[閻錫山]],以殿英充第五路總指揮,兼[[安徽省]]政府主席<ref>{{Cite book|author = 劉寿林等編|title = 民國職官年表|year = 1995|publisher = 中華書局|isbn = 7-101-01320-1}}</ref>;是歲,錫山敗,殿英復叛降[[張學良]],學良改東北軍暫編陸軍第二師為第四十師,遂以殿英為師長,其後積功至第四十一軍長。[[一九三三年|廿二年]],[[大日本帝國|日本]]關東軍攻學良,進[[熱河]]。殿英以其兵援學良而趨赤峰,與日軍酣戰,卒敗,殿英兵引去,次察哈爾。而殿英恃己功猶著,求徙[[青海]],中正許之,遂授屯墾督辦。[[一九三四年|明年]],青海帥[[馬步芳]]與諸兄[[馬步青|步青]]、[[馬鴻賓|鴻賓]]、[[馬鴻逵|鴻逵]]夾擊殿英,克之,殿英所部多潰去。方奔山西境,錫山遣其將[[傅作義]]率數萬人收殿英兵柄,奪官,俱繳其械,勢日蹙焉。既而中正宥之,勒歸[[太原]],隱居。俄起復,中正委以兵,為察北保安司令,累遷冀察游擊司令、新編第五軍長。[[抗戰]]後,以殿英除新編第四路軍總指揮;[[一九四六年|卅五年]],轉第三縱隊司令,隸[[鄭州]]綏靖公署,移鎮湯陰<ref>{{Cite book|author = 徐友春主編|title = 民國人物大辭典 増訂版|year = 2007|publisher = 河北人民出版社|isbn = 978-7-202-03014-1}}</ref>。[[一九四七年|明年]],豫北之役起也,[[中共]][[劉伯承]]、[[鄧小平]]師下河南,圍殿英於湯陰。拒守月餘,城陷,共軍徙殿英武安縣,禁錮戰俘營,旋病痢。[[一九四七年|卅六年]],病劇;九月三十日,卒於錮所,年五十八。殿英子天義,仕[[中華人民共和國|新政府]],官至[[西安]]外國語學院長、中國翻譯協會理事,選[[陝西省]]政協副主席。
==考據==
{{reflist}}
[[分類:中華民國列傳]]
[[分類:河南省列傳]]
fn9n4e99cto9ddumcy2qxnmbt9g2vuf
用戶:だ*ぜ/EditCounterOptIn.js
2
140024
448762
2026-11-05T12:05:36Z
Max
101544
Max遷頁[[用戶:だ*ぜ/EditCounterOptIn.js]]至[[用戶:Dasze/EditCounterOptIn.js]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448762
javascript
text/javascript
/* #REDIRECT */mw.loader.load("//zh-classical.wikipedia.org/w/index.php?title=%E7%94%A8%E6%88%B6:Dasze/EditCounterOptIn.js&action=raw&ctype=text/javascript");
4xttyyyzeurf6ntutemzcp5sslccqim
用戶討論:だ*ぜ
3
140025
448765
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶討論:だ*ぜ]]至[[用戶討論:Dasze]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448765
wikitext
text/x-wiki
#重新導向 [[用戶討論:Dasze]]
q7m09cmpyyiipqc6hx9tn1097iq780w
用戶:だ*ぜ/樓蘭國
2
140026
448766
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/樓蘭國]]至[[用戶:Dasze/樓蘭國]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448766
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/樓蘭國]]
k61amwe2scsezq1bepeamrj598h8nhu
用戶:だ*ぜ/獻
2
140027
448768
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/獻]]至[[用戶:Dasze/獻]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448768
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/獻]]
5e3qc2xm4avcog54pdmj2ti5oc4a2pf
用戶:だ*ぜ/齋
2
140028
448770
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/齋]]至[[用戶:Dasze/齋]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448770
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/齋]]
njjoz0htn5i3ibmkfg4z1rnz6y5mwxr
用戶:だ*ぜ
2
140029
448772
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ]]至[[用戶:Dasze]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448772
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze]]
pcem3g5u59u2vhvlscla6al1za5ndck
用戶:だ*ぜ/撫華道
2
140030
448774
2026-11-05T12:05:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/撫華道]]至[[用戶:Dasze/撫華道]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448774
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/撫華道]]
iv85se3wifjfy57ga3lta0049b6x0e0
用戶:だ*ぜ/司法覆核
2
140031
448776
2026-11-05T12:05:38Z
Max
101544
Max遷頁[[用戶:だ*ぜ/司法覆核]]至[[用戶:Dasze/司法覆核]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448776
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/司法覆核]]
ds98nue2676pygpcv74uuhz605ihu69
用戶:だ*ぜ/印尼鷹航
2
140032
448778
2026-11-05T12:05:39Z
Max
101544
Max遷頁[[用戶:だ*ぜ/印尼鷹航]]至[[用戶:Dasze/印尼鷹航]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448778
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/印尼鷹航]]
l8mttxxra9vn077yl8n5imfpbafwfo6
用戶:だ*ぜ/苟箋
2
140033
448780
2026-11-05T12:05:39Z
Max
101544
Max遷頁[[用戶:だ*ぜ/苟箋]]至[[用戶:Dasze/苟箋]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448780
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/苟箋]]
fuz91jinf1inuo9u5ka72btktknzv08
用戶:だ*ぜ/common.css
2
140034
448782
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/common.css]]至[[用戶:Dasze/common.css]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448782
css
text/css
/* #REDIRECT */@import url(//zh-classical.wikipedia.org/w/index.php?title=%E7%94%A8%E6%88%B6:Dasze/common.css&action=raw&ctype=text/css);
f3kkgxqtdpble7in6l77zxh2r9ksou5
用戶:だ*ぜ/沙盒
2
140035
448784
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/沙盒]]至[[用戶:Dasze/沙盒]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448784
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/沙盒]]
dkjgpp4y3n3r41li9nlbl3qnpwfngof
用戶:だ*ぜ/羯族
2
140036
448786
2026-11-05T12:06:37Z
Max
101544
Max遷頁[[用戶:だ*ぜ/羯族]]至[[用戶:Dasze/羯族]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448786
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/羯族]]
6k8pt01eghkccvhpwkbfyi3y1vnmbsc
用戶:だ*ぜ/草稿
2
140037
448788
2026-11-05T12:06:39Z
Max
101544
Max遷頁[[用戶:だ*ぜ/草稿]]至[[用戶:Dasze/草稿]]:當重新命名使用者「[[Special:CentralAuth/だ*ぜ|だ*ぜ]]」至「[[Special:CentralAuth/Dasze|Dasze]]」時自動移動頁面
448788
wikitext
text/x-wiki
#重新導向 [[用戶:Dasze/草稿]]
dp6sr8k9n05ez1rqc6vo252i6m4zct2
用戶討論:Q1852178459
3
140038
448793
2026-11-05T14:43:09Z
Manchiu
7402
Manchiu遷頁[[用戶討論:Q1852178459]]至[[用戶討論:LDP924]]:當重新命名使用者「[[Special:CentralAuth/Q1852178459|Q1852178459]]」至「[[Special:CentralAuth/LDP924|LDP924]]」時自動移動頁面
448793
wikitext
text/x-wiki
#重新導向 [[用戶討論:LDP924]]
ou968c03dxxm64xg0nkjc75mnw0lboq
模板:疏議
10
140040
448804
2026-11-05T21:15:38Z
Dasze
55299
Dasze遷頁[[模板:疏議]]至[[模板:疏]]
448804
wikitext
text/x-wiki
#重新導向 [[模板:疏]]
min4ajjednc3xb12owgfqc5rlsuorcq
石友三
0
140042
448815
2026-11-06T06:38:57Z
Shunshen Lee
68656
民國軍閥小傳
448815
wikitext
text/x-wiki
[[File:Shi Yousan2 (cropped).jpg|200px|thumb|石友三像]]
'''石友三''',字'''漢章''',吉林長春人也。少桀黠,好勇鬥狠,目睛斜睨,顧視如[[狼]]。以善騎射為徒卒,數從[[馮玉祥]]戰伐。與玉祥麾下將[[孫良誠]]、[[韓復榘]]、[[佟麟閣]]等連名,時人號為「十三太保」。玉祥甚愛之,累遷至旅長,兼包頭鎮守使。
友三為政暴虐,開煙禁、設博戲,大肆搜刮,聚斂無算。[[一九二六年|民國十五年]],[[吳佩孚]]、[[張作霖]]討玉祥於南口,玉祥兵敗,遂出奔。晉將[[閻錫山]]乘隙發兵襲其後,友三見勢方急,遂背玉祥降於錫山,授師長。秋,玉祥自[[蘇聯|蘇俄]]歸,誓師五原,友三大懼,馳奔肉袒伏地,流涕請罪。玉祥念舊,復納之,拜方面軍副總指揮。
[[一九二八年|十七年]],友三移駐洛陽。因[[少林寺|少林]]僧護法與其部將構隙,友三怒,發兵圍寺,縱火焚之。自天王殿、大雄寶殿、藏經閣以至法堂,數百年古剎法寶,付之一炬,煙焰張天,數里不絕,善類憾滋甚,咸詈友三曰「閻羅」也。
[[一九二九年|十八年]],玉祥反[[南京]],友三受南京國府主席[[蔣中正]]重賂,通電叛玉祥於宣化,拜第五路軍總指揮。冬,[[唐生智]]起兵反南京,友三復響應,發砲攻蚌埠。生智敗,友三伏罪請降,徙鎮德州,其後除[[安徽省]]政府主席。
[[一九三〇年|明年]],中原兵起,閻錫山、馮玉祥聯兵反南京,眾推錫山為總司令。友三復叛南京降玉祥,拜第四方面軍總指揮,以兵圍[[濟南]]。八月,[[張學良]]應南京檄,發兵入關,玉祥勢愈蹙,友三乃陣前倒戈,歸降學良,輯所部為第十三師,移駐順德。
[[一九三一年|二十年]],友三自恃兵已盛,密圖學良,又與[[大日本帝國|日本]]關東軍通款,自號反赤救國軍總司令,揮師數萬人,犯[[北京|北平]]。學良尋回師擊之,友三大潰,遁走[[天津]]日租界。
及[[抗戰]]起,友三招徠舊部,拜冀察戰區副總司令,兼第三十九集團軍總司令。友三在冀南,不禦異類,屢襲[[中共]]八路軍後方,復與日軍相應和,欲訂約結盟。[[一九四〇年|廿九年]],友三赴[[開封]],遂附日軍,受官職,海內側目,朝野於是益疾其奸。友三麾下將高樹勛素與日軍不協,為友三輒擠之,是以與國府結,陰欲取友三首級,中正大悅,因使軍統[戴笠]]密諭樹勛誘殺友三。
是年冬十一月,友三勒樹勛會於濮陽,樹勛密與參謀長米文和謀,定策伏兵帳側,以收友三。十二月壬申,友三輕騎至樹勛營,方酒酣,樹勛起立,厲聲責以逆節,伏兵湧出,繩捆索綁。友三號呼乞免,樹勛弗聽,命軍士引至柳下集,並發掘深坑,樹勛飭令曰:「此獠殘忍,素好坑殺,吾今以汝法行刑矣!」眾軍士遂推友三入坑,揮鍁填土,坑之,友三即卒,年四十有九。
[[分類:中華民國列傳]]
[[分類:吉林省列傳]]
e8nmqot2pmch3dnwa8r9kr1a0d2ag4c
448816
448815
2026-11-06T07:16:40Z
Shunshen Lee
68656
448816
wikitext
text/x-wiki
[[File:Shi Yousan2 (cropped).jpg|200px|thumb|石友三像]]
'''石友三''',字'''漢章''',[[吉林省|吉林]]人也。[[清]][[一八九一年|光緒十七年]],生於[[長春]]。
==平生==
少桀黠,好勇鬥狠,目睛斜睨,顧視如[[狼]]。以善騎射為徒卒,數從[[馮玉祥]]戰伐。與玉祥麾下將[[孫良誠]]、[[韓復榘]]、[[佟麟閣]]等連名,時人號為「十三太保」。玉祥甚愛之,累遷至旅長,兼包頭鎮守使。
友三為政暴虐,開煙禁、設博戲,大肆搜刮,聚斂無算。[[一九二六年|民國十五年]],[[吳佩孚]]、[[張作霖]]討玉祥於南口,玉祥兵敗,遂出奔。晉將[[閻錫山]]乘隙發兵襲其後,友三見勢方急,遂背玉祥降於錫山,授師長。秋,玉祥自[[蘇聯|蘇俄]]歸,誓師五原,友三大懼,馳奔肉袒伏地,流涕請罪。玉祥念舊,復納之,拜方面軍副總指揮。
[[一九二八年|十七年]],友三移駐洛陽。因[[少林寺|少林]]僧護法與其部將構隙,友三怒,發兵圍寺,縱火焚之。自天王殿、大雄寶殿、藏經閣以至法堂,數百年古剎法寶,付之一炬,煙焰張天,數里不絕,善類憾滋甚,咸詈友三曰「閻羅」也。
[[一九二九年|十八年]],玉祥反[[南京]],友三受南京國府主席[[蔣中正]]重賂,通電叛玉祥於宣化,拜第五路軍總指揮。冬,[[唐生智]]起兵反南京,友三復響應,發砲攻蚌埠。生智敗,友三伏罪請降,徙鎮德州。是歲秋,除[[安徽省]]政府主席<ref>沈慶生「石友三」{{Cite book|author = 中國社會科學院近代史研究所|title = 民國人物傳 第1卷|year = 1978|publisher = 中華書局|isbn=}}</ref>。
[[一九三〇年|明年]],中原兵起,閻錫山、馮玉祥聯兵反南京,眾推錫山為總司令。友三復叛南京降玉祥,拜第四方面軍總指揮,以兵圍[[濟南]]。八月,[[張學良]]應南京檄,發兵入關,玉祥勢愈蹙,友三乃陣前倒戈,歸降學良,輯所部為第十三師,移駐順德。
[[一九三一年|二十年]],友三自恃兵已盛,密圖學良,又與[[大日本帝國|日本]]關東軍通款,自號反赤救國軍總司令,揮師數萬人,犯[[北京|北平]]。學良尋回師擊之,友三大潰,遁走[[天津]]日租界。
及[[抗戰]]起,友三招徠舊部,拜冀察戰區副總司令,兼第三十九集團軍總司令。友三在冀南,不禦異類,屢襲[[中共]]八路軍後方,復與日軍相應和,欲訂約結盟。[[一九三九年|廿八年]]初,日軍薦以友三為察哈爾省政府主席,七月,免。[[一九四〇年|明年]],友三赴[[開封]],遂附日軍,受官職,海內側目,朝野於是益疾其奸。友三麾下將高樹勛素與日軍不協,為友三輒擠之,是以與國府結,陰欲取友三首級,中正大悅,因使軍統[戴笠]]密諭樹勛誘殺友三。
是年冬十一月,友三勒樹勛會於濮陽,樹勛密與參謀長米文和謀,定策伏兵帳側,以收友三。十二月壬申,友三輕騎至樹勛營,方酒酣,樹勛起立,厲聲責以逆節,伏兵湧出,繩捆索綁。友三號呼乞免,樹勛弗聽,命軍士引至柳下集,並發掘深坑,樹勛飭令曰:「此獠殘忍,素好坑殺,吾今以汝法行刑矣!」眾軍士遂推友三入坑,揮鍁填土,坑之<ref>{{Cite web|title=一報還一報,火燒少林寺愛埋活人的軍閥石友三被部下活埋_馮玉祥|url=https://www.sohu.com/a/492310083_120130722|website=www.sohu.com|access-date=2024-10-10}}</ref>,友三即卒,年四十有九。
===軼聞===
友三狠戾,性漁色,見民間容姿絕異者,多欲幸之,女不許,乃遣人牽曳取之。其生平所剽納妾室,凡四人。
*二房妾:黃鳳芝,[[河南省|許昌]]人,[[優伶]]。
*三房妾:程氏,北平人,亦優伶。
*四房妾:東北軍轄下團長妻。
*五房妾:林慰君<ref>{{Cite web|url=https://www.sohu.com/a/810407342_121200584 |title=林慰君十四歲被稱烈女,二十八歲嫁漢奸,同年丈夫被活埋,她結局如何?}}</ref>,[[福州]]人;父白水,報館[[記者]]。
==考據==
{{reflist}}
[[分類:中華民國列傳]]
[[分類:吉林省列傳]]
ojours3b7hujyik7bkvjcig16x6v5wv
模板:Citation/sandbox
10
140043
448820
2026-11-06T07:50:11Z
Dasze
55299
test
448820
wikitext
text/x-wiki
<includeonly>{{#invoke:Citation/CS1|citation
|CitationClass=citation
}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
mcoe5nzpodofs7c9el95mfevaw3qeo2
448822
448820
2026-11-06T10:54:26Z
Dasze
55299
448822
wikitext
text/x-wiki
<includeonly>{{#invoke:Citation|citation}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
1r48gxuc4e4i1rv0dq90uqjk4h171xc