2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

模板:Pre

萌娘百科,萬物皆可萌的百科全書!轉載請標註來源頁面的網頁連結,並聲明引自萌娘百科。內容不可商用。
跳至導覽 跳至搜尋
{{{1}}}
Template-info.svg 模板文檔  [查看] [編輯] [歷史] [刷新]

本模板使用了pre標籤的相關特性,允許將其內部的文本顯示為一個代碼框,並藉助MediaWiki的內建樣式支持語法高亮。

用法

預覽框

{{pre|【要预览的文本】}}
  • 預覽框的嵌套

pre標籤相同,預覽文本中的大部分wiki代碼將會被原封不動地顯示出來,行內的空格和換行將會被保留,但文本內的pre標籤會被處理成嵌套其中的預覽框。

如下:

【要预览的文本】

上方所示的wiki代碼為:

{{pre|{{pre|【要预览的文本】}}}}
  • pre標籤混合使用

使用本模板等同於使用pre標籤,因此可以混合使用。

代碼框

{{pre|lang=【语言代号】|【要预览的代码】}}

{{pre|lang=【语言代号】|code=【要预览的代码】}}

例:

{{pre|lang=lua|code=
local i = 0
function module.main( frame )
  if i == 0 then
    return "yes"
  end
end
}}

效果如下:

local i = 0
function module.main( frame )
  if i == 0 then
    return "yes"
  end
end

技術細節

本模板等同於:

<pre class="prettyprint linenums lang-【语言代号】">【要预览的代码】</pre>

支持的語言代號

  • css
  • jsjavascript
  • lua
  • wiki:雖然可以顯示語法高亮,但完全不正確。
  • py
  • cpp
  • c

已知問題

  • 代碼首尾的空格、換行無法保留

可以參考#技術細節中的說明將本模板改寫成pre標籤。

  • 為什麼顯示的內容永遠都是{{{1}}}

請添加code=指定參數名稱即可解決。原因是代碼中含有=,與為模板參數賦值的=產生歧義。