置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

幫助:使用VS Code協助編輯條目/預置代碼

萌娘百科,萬物皆可萌的百科全書!轉載請標註來源頁面的網頁連結,並聲明引自萌娘百科。內容不可商用。
跳至導覽 跳至搜尋
Commons-emblem-notice.svg
這個頁面「Help:使用VS Code協助編輯條目/預置代碼」是萌娘百科的幫助文檔
  • 本文用於介紹萌娘百科中一些特定功能的操作方法;
  • 本文僅是一篇論述,不屬於方針或指引。如果本指南與相關方針或指引發生衝突或存在不一致的情況,請以方針或指引的條文為準。

預置代碼是將較長的代碼用助記符簡化以便於編寫的工具。在支持智能感知的代碼編輯器內,輸入預定義的助記符後按下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

自定義預置代碼列表

Nuvola apps important blue.svg
如有需要添加的內容,請自行編輯添加
自己動手,豐衣足食。勿問為什麼沒有oo?

各位用戶可以參考「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": "在頁面下方顯示腳註"
    }
}