Kanji
・云架构工程师 / 自由职业 ・1993年出生 ・爱媛县出身 / 现居东京都涩谷区 ・5年 AWS 实战经验 个人资料详情
目录
VS Marketplace 链接
该插件将 VS Code 翻译成日语。
默认情况下,VS Code 安装后为英文。如果您想使用日语,请安装此插件。
GitHub Copilot 是一个人工智能驱动的代码完成插件。
如果您在函数名称或注释中描述要实现的流程,Copilot 将建议相应的代码。
有 30 天免费试用期,但继续使用需要付费计划(10 美元/月或 100 美元/年)。
官方页面指出它特别适合 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++,但它也可以用于 Terraform 和 CloudFormation 等基础设施代码。
根据我的经验,使用 GitHub Copilot 的开发速度可以提高一倍以上,所以我强烈推荐它。
如果您想为某个项目禁用 GitHub Copilot,请将以下设置添加到您的基本设置中,以使 Copilot 在该项目中不可用:
{ "github.copilot.enable": { "*": false } }
如果您选择文本并按快捷键(默认为“Alt + Shift + T”),则会显示谷歌翻译的翻译结果。
它可以在不离开 vscode 的情况下进行翻译,因此当您想要考虑函数名称并用英语翻译注释和 Git 提交消息时,它非常有用。
VS 市场链接
它是一个插件,可以将选定的文本转换为驼峰式、蛇式、帕斯卡式等。
您可以通过选择要转换字符大小写的文本并从命令面板中选择以下菜单来进行转换(Windows(Windows 为“Ctrl + Shift + P”,Mac 为“Command + Shift + P”))。
改变大小写骆驼
更改大小写常量
更改大小写点
更改案例烤肉串
更改大小写较低
更改大小写 lowerFirst
更改案例编号
更改大小写参数
更改大小写帕斯卡
更改案例路径
更改大小写句子
更改大小写蛇
更改大小写交换
更改案例标题 改变案例鞋面
更改大小写 upperFirst
Draw.io是一款免费使用工具,可以免费使用。
您可以在网络浏览器中使用 draw.io 的工具,但如果由于内部安全规则而无法在网络上输入客户信息。您可以使用可离线使用的VSCode插件。
它可用于创建AWS、GCP和Azure的架构图。只有一个旧图标,但您可以通过复制粘贴导入图像或导入XML文件来使用标准图标以外的其他项目。
Prettier 是一个支持多种语言的代码格式化程序。
对应的语言在【什么是Prettier?· 更漂亮](https://prettier.io/docs/en/)。
根据语言的不同,有许多主要的格式化程序,但是如果您将其放入,它将与某些语言兼容。
这是一个用于使用 SSH 连接连接到远程服务器的插件。
您可以在 vscode 上编辑连接的远程服务器文件。
通过在 ~/.ssh/config 中描述连接目的地信息,可以集中管理连接信息。
~/.ssh/config
用于启动使用 WSL(适用于 Linux 的 Windows 子系统)在 WSL 上运行的 vscode 的插件。
对于使用WSL的用户来说是必备的插件。
它是一个使用Docker容器构建开发环境的插件。
我用的不多,但可以通过与团队共享构建DEV CONTAINER时的文件来统一开发环境。
但由于需要对容器进行操作,因此需要具有一定规格的PC。
对于基础设施工程师来说可能不太需要,但也许可以使用一些东西?这就是为什么我将其作为推荐引入。
这是一个主要的插件,可以让你检查Git历史记录。
您可以显示 brunch、编辑器、文件的历史记录,并比较 brunch 和 commit 之间的历史记录。
VS市场链接
Git History 比较出名的是检查 Git 历史记录,但是在 brunch 之间进行比较时,建议使用这个,因为它个人更容易使用。
在 Git History 中,所有文件差异都会显示在编辑器中 - 就像在 brunch 之间进行比较时一样,但在 Git History Diff 中,差异会显示在侧边栏上,因此哪个文件有差异。您一目了然。
Gitlens也是一个查看git历史记录的插件,但与Git History和Git History Diff不同的是,它是直接显示在代码上的,所以你可以在查看代码的同时检查历史记录。
虽然屏幕乱了,无法使用,但是你可以像Git History一样检查commits和brunch的区别。
包含Markdown相关功能的插件。通过插入此插件可以使用以下功能。
快捷键(加粗、倾斜、取消线、预览等)
自动生成目录
编辑列表时自动调整缩进和序列号
转换为 HTML 文件
表格格式
数学公式的使用
如果您选择文本并粘贴链接,它将自动生成链接。
就我的目的而言,我主要使用Linting和自动生成目录。其他功能使用这些插件是因为其他插件更容易使用。
可以通过按下复制到剪贴板的图像来粘贴到 Markdown 文件等中的插件(Windows for Windows,“Ctrl + Alt + V”和“Command + Alt + V”)。
粘贴的图片保存在指定目录下,路径在Markdown文件中描述。
通过在基本设置中进行以下设置,我在与粘贴文件相同的目录中创建一个“.Images/”目录,并将图像保存在其中。
{ "pasteImage.basePath": "${currentFileDir}/.images", "pasteImage.path": "${currentFileDir}/.images", "pasteImage.insertPattern": "${imageSyntaxPrefix}.images/${imageFilePath}${imageSyntaxSuffix}" }
这是一个用于使用 Markdown 创建和塑造表格的插件。
我尝试了各种表格整形插件,但我使用了这个,因为它在包含日语多字节字符的表格上正确整形。(它可能与字体兼容)
用于将 Markdown 文件转换为 PDF、HTML、JPEG、PNG 等的插件。
Markdown all in One也有PDF转换功能,但我使用它是因为可以选择PDF等作为该插件的转换目标。
这是Python的Linter。在编写Python代码时用它来检查代码的质量。例如,您可以检查以下内容。
代码长度是否超过 100 个字符?
是否有未使用的变量?
是否导入了模块?
ETC。
通过在基本设置中添加以下设置,您可以自定义规则以与 Flake8 进行检查。
如果想在项目内统一,可以通过在项目上创建 .vscode/Settings.json 并写入以下设置来统一。
.vscode/Settings.json
{ "flake8.args": [ "--ignore=S311,S410,W503", "--max-line-length=170", "--max-complexity=20" ] }
这是一个用于格式化Python代码的插件。例如,您可以格式化以下内容。
将单引号转换为双引号
将缩进转换为 4 个空格
将函数之间的空行转换为两行
通过在基本设置中进行以下设置,可以在保存Python文件时自动格式化。
{ "[python]": { "editor.insertSpaces": true, "editor.detectIndentation": true, "editor.tabSize": 4, "editor.defaultFormatter": "ms-python.black-formatter", "editor.formatOnSave": true } }
CloudFormation 也可以用 JSON 描述,但通常用 YAML 描述,因此我们将介绍用于 YAML 的 Linting 和输入补充的插件。
通过插入此插件,打开YAML文件时会显示YAML语法错误。
此外,在编辑 YAML 文件时,它将补充缩进和键。
由于默认不包含CloudFormation的伪函数,因此会显示语法错误。通过在基本设置中进行以下设置,可以防止显示语法错误。
[ "yaml.customTags": [ "!And sequence", "!Base64 scalar", "!Cidr scalar", "!Condition scalar", "!Equals sequence", "!FindInMap sequence", "!GetAZs scalar", "!GetAtt scalar", "!GetAtt sequence", "!If sequence", "!ImportValue scalar", "!Join sequence", "!Not sequence", "!Or sequence", "!Ref scalar", "!Select sequence", "!Split sequence", "!Sub scalar", "!Sub sequence", "!Transform mapping", ] ]
[ { "name": "AWS CloudFormation", "description": "AWS CloudFormation provides a common language for you to describe and provision all the infrastructure resources in your cloud environment", "fileMatch": [ "*.cf.json", "*.cf.yml", "*.cf.yaml", "cloudformation.json", "cloudformation.yml", "cloudformation.yaml" ], "url": "https://raw.githubusercontent.com/awslabs/goformation/master/schema/cloudformation.schema.json" } ]
{ "yaml.schemas": { "https://d33vqc0rt9ld30.cloudfront.net/latest/gzip/CloudFormationResourceSpecification.json": [ "*.cf.yaml", "*.cf.yml", "cloud*formation/*.yaml", "cloud*formation/*.yml" ] } }
CloudFormation Linter。与上面提到的YAML插件不同,它会显示CloudFormation特有的语法错误。例如,您可以检查以下内容:
资源名称是否重叠?
资源属性是否正确?
资源之间的依赖关系是否正确?
可以检查的规则是 cfn-lint/docs/rules.md at main · aws-cloudformation/cfn-lint 。
通过在基本设置中进行以下设置,您可以忽略某些规则。
{ "cfnLint.ignoreRules": [ "W3011" ] }
CloudFormation Linter。与 CloudFormation Linter 不同,您可以检查安全性。例如,您可以检查以下内容。
IAM 策略是否包含通配符?
S3存储桶服务器访问日志是否有效?
安全组入站规则指定的0.0.0.0/0是否指定?
可以检查的规则在 cdk-nag/RULES.md at main · cdklabs/cdk-nag 中描述。
通过将以下设置放在基本设置中,您可以忽略某些规则。由于 cfn-nag 无法直接将忽略的规则描述到 settings.json ,因此请创建一个具有适当名称(例如 .cfn-nag-blacklist.yml )的 YAML 文件,并描述要忽略它的规则。您可以忽略它。在本示例中,在 .vscode 目录中创建 .cfn-nag-blacklist.yml ,并描述以下设置。
settings.json
.cfn-nag-blacklist.yml
.vscode
{ "cfnNagLint.blacklistPath": ".vscode/.cfn-nag-blacklist.yml" }
--- RulesToSuppress: # S3 Bucket should have access logging configured - id: W35 reason: No access log settings are required # Resource found with an explicit name, this disallows updates that require replacement of this resource - id: W28 reason: The IAM roll name is set by fixed, not dynamic # CloudWatchLogs LogGroup should specify a KMS Key Id to encrypt the log data - id: W84 reason: Do not use the encryption of the customer management key
包含与 Terraform 相关功能的插件。通过插入此插件可以使用以下功能。
输入提供者、资源名称、数据源、属性、变量名称等的补充。
交响乐错误检查
格式化 Terraform 代码(执行 terraform fmt )
terraform fmt
与 Terraform Cloud 合作
Terraform 模块、提供商资源管理器
从命令面板运行“terraform init”和“terraform plan”等命令
Terraform 的 Linter。用于在编写 Terraform 代码时检查安全性。例如,您可以检查以下内容。
S3存储桶的加密是否有效?
0.0.0.0/0是否是安全组出/入规则指定的?
可以检查的规则是 enable-access-logging - tfsec 。