幫助:使用VSCode協助編輯條目/預置代碼
預置代碼是將較長的代碼用助記符簡化以便於編寫的工具。在支持智能感知的代碼編輯器內,輸入預定義的助記符後按下Tab ↹或↵ Enter即可展開為長代碼,節省編輯的時間。
本幫助將會敘述Wikitext自帶的預置代碼,以及如何自己定義預置代碼。
Wikitext預置代碼
標題類
此處的預置代碼包含6個級別的標題
@pageTitle
= title =
@title
== title ==
@subT1
=== title ===
@subT2
==== title ====
@subT3
===== title =====
@subT4
====== title ======
表格類
此處的預置代碼可以生成表格。
@table
{| class="wikitable" |+Title ! ! ! ! |- | | | | |- | | | | |- | | | | |}
生成帶表頭和默認樣式的4x4空白表格,具體用法可參照幫助:表格。
管理類
@redirect
#REDIRECT [[Pagename]]
為本頁面創建重新導向,使用前請務必閱讀幫助:重新導向頁面。
注釋類
此處的預置代碼會生成定義好的注釋。
@comments
<!--comments-->
生成帶有comments的注釋串,用來標記評論。由於萌百有評論系統,一般不使用這個代碼。
@todo
<!--TODO:Task-->
生成帶有TODO的注釋串,用來描述此處的任務方便後續用戶編輯。
VSCode標記類
此處的預置代碼在萌百上沒有任何作用,但在VSCode中將會作為標記以實現特殊功能。
@region
<!--#region chapter--> <!--#endregion-->
被標記的代碼可以在VSCode中摺疊。
不兼容的功能
@codeBlock
<syntaxhighlight lang="c#" line="1" start="1"> </syntaxhighlight>
將會生成代碼塊,但格式與萌百不兼容。
如果需要在萌百使用代碼塊,可以使用<pre>標籤,如下:
<pre> print("hello world"); </pre>
顯示效果為:
print("hello world");
關於如何讓代碼塊高亮,參見幫助:代碼高亮工具。
@pageInfo
<%-- [PAGE_INFO] Comment=## PageTitle=## PageID=## RevisionID=## ContentModel=## ContentFormat=## [END_PAGE_INFO] --%>
萌百會自動生成頁面信息,無需手動添加,即使添加了也會當作純文本處理。
添加自定義預置代碼
概述
從菜單欄依次打開「文件」->「首選項」->「用戶片段」,此時會提示選擇語言,選擇「Wikitext」,即可彈出「Wikitext.json」
該json會自帶一個預置代碼示例,格式如下
{
"Print to console": { //預置代碼的名稱,可以包含中文
"prefix": "log", //助記符,不能包含中文
"body": [ //語句體
"console.log('$1');",
"$2"
],
"description": "Log output to console" //幫助信息,可以包含中文
}
}
助記符
當在編輯器輸入助記符時,會在智能感知中顯示此預置代碼,不區分大小寫,可以設置多個。 建議在助記符前面添加特殊符號(如@)以免影響到正常代碼的編寫。
語句體與參數
語句體是一個數組,每一個元素代表一行代碼。默認實例中共有兩行代碼。
在語句體中,$[數字]
代表參數,在補全後光標會自動停在參數處供填寫。當連續按下Tab ↹時會按數字依次遍歷,如果指定了$0
,遍歷將會在$0
處結束。參數常見用法如下:
$1
:空參數。${1:name}
:帶默認值的參數,遍歷時默認值會被選中以將其覆蓋為其他值,可以嵌套。${1|one,two,three|}
:帶枚舉的參數,遍歷時會彈出列表以供選擇。
參數可以重複,重複的參數會被同時填寫。
有關於預置代碼的更多用法,可參見Snippets in Visual Studio Code
自定義預置代碼列表
各位用戶可以參考「Image模板」示例編寫和分享預置代碼,使萌百的編寫更方便。
Image模板
助記符 | 說明 | 展開後代碼 | 備註 |
---|---|---|---|
@image
@img |
image模板 | {{image|图片=萌百娘.png|描述=萌百娘|文本高=25|宽=424|高=600|种类=无|link=萌百娘}} |
|
@imageClip
@imgCp |
帶裁切的Image模板 | {{image|图片=萌百娘.png|描述=萌百娘|文本高=25|宽=424|高=600|种类=无|link=萌百娘|左=0|上=0|右=0|下=0}} |
代碼 |
---|
{
{
"圖片": {
"prefix": ["@image", "@img"],
"body": [
"{{image|图片=${1:萌百娘.png}|描述=${2:萌百娘}|文本高=${3:25}|宽=${4:424}|高=${5:600}|种类=${6|无,tall,wide,outer,div|}|link=${7:萌百娘}}}",
"$0"
],
"description": "插入圖片"
},
"圖片裁切": {
"prefix": ["@imageClip", "@imgCp"],
"body": [
"{{image|图片=${1:萌百娘.png}|描述=${2:萌百娘}|文本高=${3:25}|宽=${4:424}|高=${5:600}|种类=${6|無,tall,wide,outer,div|}|link=${7:萌百娘}|左=${8:0}|上=${9:0}|右=${10:0}|下=${11:0}}}",
"$0"
],
"description": "插入裁切後的圖片"
},
}
|
常用編輯模板
這些常用模板是在網頁版編輯界面中是可以快速插入的,但如果用VSCode的話只能手敲,這裡編寫了一些預置代碼以供使用。
- 功能列表:
助記符 | 說明 | 展開後代碼 | 備註 |
---|---|---|---|
@template
@tmp |
空模板 | {{|}} |
用來生成只有一個參數的模板格式 |
@heimu
@hm |
黑幕 | {{黑幕|輸入被掩蓋的內容}} |
|
@huhua
@jk |
胡話 | {{胡話|輸入被劃掉的內容}} |
|
@lj | 日語漢字 | {{lj|輸入要轉換的內容}} |
|
@lang | 語言轉換 | {{lang|zh|輸入要轉換的內容}} |
內置了常見語言參數,如果沒有請手動指定 |
@ruby | 注音 | {{ruby|輸入文本|輸入讀音|zh|zh}} |
內置了常見語言參數,如果沒有請手動指定 |
@underLine
@u |
下劃線 | <u>輸入需要標註下劃線的內容</u> |
|
@deleteLine
@del |
刪除線 | <del>輸入需要標註刪除線的內容</del> |
|
@center | 居中 | <center> 輸入需要居中的內容 </center> |
|
@poem | 歌詞 | <poem> 輸入歌詞 </poem> |
|
@red
@colorRed |
紅字 | {{color|red|輸入需要標紅的內容}} |
|
@cquote | 名言 | {{Cquote|輸入引用的內容|輸入作者}} |
|
@hide | 摺疊 | {{Hide|輸入標題|輸入被隱藏的內容}} |
|
@ref | 腳註 | <ref>在此處輸入腳註內容</ref> |
代碼 |
---|
{
"空模板":{
"prefix": ["@template", "@tmp"],
"body": [
"{{$1|$2}}$0"
],
"description": "用來插入有一個參數的模板"
},
"黑幕": {
"prefix": ["@heimu", "@hm"],
"body": [
"{{黑幕|${1:輸入被掩蓋的內容}}}$0"
],
"description": "將文本用黑條覆蓋,使用鼠標移動可反白顯示"
},
"胡話": {
"prefix": ["@huhua","@jk"],
"body": [
"{{胡話|${1:輸入被劃掉的內容}}}$0"
],
"description": "添加刪除線並減淡字體"
},
"日語漢字": {
"prefix": ["@lj"],
"body": [
"{{lj|${1:輸入要轉換的內容}}}$0"
],
"description": "強制將漢字顯示為日語字形"
},
"語言轉換":{
"prefix": ["@lang"],
"body": [
"{{lang|${1|zh,yue,en,ja,ko,ru|}|${2:輸入要轉換的內容}}}$0"
],
"description": "標示語言類型,如果選項沒有請手動修改"
},
"注音": {
"prefix": ["@ruby"],
"body": [
"{{ruby|${1:輸入文本}|${2:輸入讀音}|${3|zh,yue,en,ja,ko,ru|}|${4|zh,yue,en,ja,ko,ru|}}}$0"
],
"description": "標註拼音,如果選項沒有請手動修改"
},
"下劃線":{
"prefix": ["@underLine","@u"],
"body": [
"<u>${1:輸入需要標註下劃線的內容}</u>$0"
],
},
"刪除線":{
"prefix": ["@deleteLine","@del"],
"body": [
"<del>${1:輸入需要標註刪除線的內容}</del>$0"
],
},
"居中":{
"prefix": ["@center"],
"body": [
"<center>",
"${1:輸入需要居中的內容}",
"</center>$0"
],
},
"歌詞":{
"prefix": ["@poem"],
"body": [
"<poem>",
"${0:輸入歌詞}",
"</poem>"
],
"description": "此處的內容只需要換行一次"
},
"紅字":{
"prefix": ["@red","@colorRed"],
"body": [
"{{color|red|${1:輸入需要標紅的內容}}}$0"
],
},
"名言":{
"prefix": ["@cquote"],
"body": [
"{{Cquote|${1:輸入引用的內容}|${2:輸入作者}}}$0"
],
"description": "以特殊的樣式顯示名言警句"
},
"摺疊":{
"prefix": ["@hide"],
"body": [
"{{Hide|${1:輸入標題}|${2:輸入被隱藏的內容}}}$0"
],
"description": "將內容摺疊起來"
},
"腳註":{
"prefix": ["@ref"],
"body": [
"<ref>${1:在此處輸入腳註內容}</ref>$0"
],
"description": "在頁面下方顯示腳註"
}
}
|