# Visual Studio Code tutorial&NOTE
## system requirements (C++)
* [windows] 需先安裝MinGw或Microsoft c++,並加入system PATH
* :apple: [MacOS] Clang已安裝,需安裝xcode command line tools
## system requirements (Python)
* [windows] 安裝python interpreter, 建議anaconda,並加入system path
* :apple:[MacOS]安裝anaconda, xcode command line tools
## STEPS
### VSCODE介面

最左側直列->為功能表列,會依擴充功能新增選項
左下人像->Account
左下齒輪->設定
左中->導覽列
右->編輯區
上->導覽列、內有快捷
#### 設定選項:

##### settings 設定

新版本應有GUI,舊版本為JSON編輯頁面
有新的extention就會有新的設定選項,故這邊無法把所有的內容都列出翻譯、說明,請自行上網找資料,或至vscode market place查看 README檔
##### user snippets 使用者程式碼片段
為眾多IDE訂有的功能之一,可以自定義關鍵字,一次打出(多行)特定的程式碼,以C++為例,在一般的程式中,皆須打出include和main函式,使用user snippets就可以一次打出
```json=
{
// Place your snippets for cpp here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
}
```
```json=
{
"basic cpp code": {
"prefix": "init",
"body":[
"#include <iostream>$1",
"using namespace std;",
"int main(int argc, char const *argv[]){ ",
" $2",
" return 0;",
"}"
],
"description": "cpp基本代碼"
}
}
```