VSCode的使用技巧

真的很老了發表於2024-09-14

設定程式碼片段

{
	"HEADER": {
		"prefix": "header",
		"body": [
			"#!/usr/bin/env python",
			"# -*- encoding: utf-8 -*-",
			"'''",
			"@檔案  :$TM_FILENAME",
			"@建立  :$CURRENT_YEAR年$CURRENT_MONTH月$CURRENT_DATE日 $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND",
			"@A作者 :newtekboy",
			"@版本  :1.0",
			"@描述  :$1",
			"'''",
			"$0"
		
		],
		"discription": "python的頭部模板"
	}
}

  • prefix:程式碼片段的名稱
  • body:文字內容
  • description:描述

Tab的順序

$1...$0:這是你程式碼快捷生成之後滑鼠游標的所在位置,游標會首先定位在$1,按Tab鍵切換到$2的位置,以此類推,游標最後會定位在$0的位置。

佔位符

佔位符是帶有值的製表符,如 .將插入並選擇佔位符文字,以便可以輕鬆更改。說白了佔位符${1:foo}就是在$1的基礎上,游標跳到$1位置的同時會自動生成並選中foo,同樣按Tab鍵切換到$2的位置。佔位符可以巢狀,如 。

${1:foo}${1:another ${2:placeholder}}

選擇

${1|one,two,three|}

變數

插入變數的值。如果未設定變數,則插入其預設值或空字串。當變數未知(即未定義其名稱)時,將插入變數的名稱並將其轉換為佔位符。

$name${name:default}

可以使用以下變數:

路徑及內容

變數名稱 描述
TM_SELECTED_TEXT 當前選定的文字或空字串
TM_CURRENT_LINE 當前行的內容
TM_CURRENT_WORD 游標下的單詞內容或空字串
TM_LINE_INDEX 基於零索引的行號
TM_LINE_NUMBER 基於一索引的行號
TM_FILENAME 當前文件的檔名
TM_FILENAME_BASE 不帶副檔名的當前文件的檔名
TM_DIRECTORY 當前文件的目錄
TM_FILEPATH 當前文件的完整檔案路徑
RELATIVE_FILEPATH 當前文件相對於開啟的工作區或資料夾的相對檔案路徑
CLIPBOARD 剪貼簿的內容
WORKSPACE_NAME 開啟的工作區或資料夾的名稱
WORKSPACE_FOLDER 開啟的工作區或資料夾的路徑
CURSOR_INDEX 基於零索引的游標位置
CURSOR_NUMBER 基於一索引的游標位置

時間

變數名稱 描述
CURRENT_YEAR 本年度
CURRENT_YEAR_SHORT 本年度的最後兩位數
CURRENT_MONTH 以兩位數字表示的月份(例如“02”)
CURRENT_MONTH_NAME 月份的全名(例如“七月”)
CURRENT_MONTH_NAME_SHORT 月份的短名稱(例如“Jul”)
CURRENT_DATE 以兩位數字表示的月份中的某一天(例如“08”)
CURRENT_DAY_NAME 日期的名稱(例如“星期一”)
CURRENT_DAY_NAME_SHORT 日期的短名稱(例如“Mon”)
CURRENT_HOUR 24小時制格式的當前小時
CURRENT_MINUTE 當前分鐘為兩位數
CURRENT_SECOND 當前第二位為兩位數
CURRENT_SECONDS_UNIX 自 Unix 紀元以來的秒數
CURRENT_TIMEZONE_OFFSET 當前UTC時區偏移量(例如“+HH:MM”或“-HH:MM”)

隨機值

變數名稱 描述
RANDOM 6個隨機的Base-10數字
RANDOM_HEX 6個隨機的Base-16數字
UUID 一個版本4的UUID

對於插入行或塊註釋,遵循當前語言的語法:

變數名稱 描述 示例輸出
BLOCK_COMMENT_START 插入塊註釋開始標記,遵循當前語言的語法 PHP或HTML中的/*<!--
BLOCK_COMMENT_END 插入塊註釋結束標記,遵循當前語言的語法 PHP或HTML中的-->*/
LINE_COMMENT 插入行註釋,遵循當前語言的語法 PHP中的//

幫助網址

相關文章