vscode插件
python
- Python
- Python Debugger
- ruff
- isort
- Pylance
- Jupyter
- Jupyter Keymap
- Jupyter Slide Show
- Jupyter Cell Tags
- autoDocstring - Python Docstring Generator
ruff + isort
pylance
autodocsting
在setting.json里这么配置,这样你保存时就会自动format。(不用右键了)
“【python】”: {
“editor.defaultFormatter”: “charliermarsh.ruff”,
“editor.codeActionsOnSave”: {
“source.organizeImports.ruff”: “explicit”
}
},
另外把默认格式化器放在python scope下,就不会影响其他默认格式化器(比如js项目的eslint或者prettier)
通用
- GitLens
- IntelliCode
- IntelliCode API Usage Examples
- Material Icon Theme
- markdownlint
- Markdown All in One
代码段
File->Preferences->Configure User Snippets
以python为例
这里用header触发开头的utf
用main触发if __name__
{// Place your snippets for python 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"// }"HEADER":{"prefix": "header","body": ["#!/usr/bin/env python","# -*- encoding: utf-8 -*-","",// "'''",// "@File : $TM_FILENAME",// "@Time : $CURRENT_YEAR/$CURRENT_MONTH/$CURRENT_DATE $CURRENT_HOUR:$CURRENT_MINUTE:$CURRENT_SECOND",// "@Author : python",// "@Version : 1.0",// "@Contact : python@qq.com",// "@License : (C)Copyright 2017-2018, Liugroup-NLPR-CASIA",// "@Desc : None",// "'''",// "",// "# here put the import lib",// "$0"],},"Print to console": {"prefix": "main","body": ["if __name__ == '__main__':"," ${1:pass}",""],"description": "python--main"}
}