Visual studio code 我可以沿着父级递归搜索和扩展VS Code settings.json以扩展设置吗?
我有一个存储库,其文件夹结构如上图所示。出于几个原因Visual studio code 我可以沿着父级递归搜索和扩展VS Code settings.json以扩展设置吗?,visual-studio-code,architecture,vscode-settings,Visual Studio Code,Architecture,Vscode Settings,我有一个存储库,其文件夹结构如上图所示。出于几个原因 我想从repo扩展部分设置,同时为每个项目提供一些特定设置 随着回购规模的增长,对VS代码来说,打开整个回购太沉重,太混乱。大多数时候我只需要做一个特定的项目,这就足够了 在当前版本的VS代码(v1.43)中,我看不到任何相关的键来覆盖/扩展父文件夹中的settings.json。有人知道我怎样才能做到吗?先谢谢你 下面附上3个settings.json示例供您参考 C:\projects\repo ├───.vscode │ s
C:\projects\repo
├───.vscode
│ settings.json
│
├───project1
│ │ package-lock.json
│ │ package.json
│ │
│ ├───.vscode
│ │ settings.json
│ │
│ └───src
│ index.js
│
└───project2
│ package-lock.json
│ package.json
│
├───.vscode
│ settings.json
│
└───src
index.js
和你一样,我想在项目之间共享一些特性,不仅是设置,还有一些任务,并创建一个默认的ftp.json 这是我的解决方案(我想可能是你的) 下面是它的工作原理:
它将复制project.vscode文件夹中的默认文件,然后您可以像您一样自定义每个项目的设置。我想在项目之间共享一些功能,不仅是设置,还有一些任务,并创建默认的ftp.json 这是我的解决方案(我想可能是你的) 下面是它的工作原理:
它将复制project.vscode文件夹中的默认文件,然后您可以自定义每个项目的设置使用多根工作区。
.code工作区
文件可以包含settings@rioV8我不知道多根工作区如何解决我的问题。您的意思是,通过将所有项目作为根添加到工作区中,所有项目都可以扩展代码工作区设置吗?然而,通过这样做,我们需要事先将所有项目添加到工作区中。。。这打破了我的观点2,当项目增长时,工作区将变得如此混乱…VSC应该在目录路径上查找settings.json
文件多远?然后,您需要向所有项目settings.json
文件添加一个类似的设置,以标记路径向上
计数。如果您移动项目目录,您必须更改它。您可以提交一个功能请求。您是否可以更改总体user settings.json文件,以包含您希望所有项目扩展的设置?然后,各个工作区设置可以包括它们自己的设置使用多根工作区。.code工作区
文件可以包含settings@rioV8我不知道多根工作区如何解决我的问题。您的意思是,通过将所有项目作为根添加到工作区中,所有项目都可以扩展代码工作区设置吗?然而,通过这样做,我们需要事先将所有项目添加到工作区中。。。这打破了我的观点2,当项目增长时,工作区将变得如此混乱…VSC应该在目录路径上查找settings.json
文件多远?然后,您需要向所有项目settings.json
文件添加一个类似的设置,以标记路径向上
计数。如果您移动项目目录,您必须更改它。您可以提交一个功能请求。您是否可以更改总体user settings.json文件,以包含您希望所有项目扩展的设置?然后,各个工作区设置可以包括它们自己的设置
// settings.json of repo, all children projects should extend "source.fixAll.eslint": true
{
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
}
}
// settings.json of project1, extends repo settings with below settings
{
"editor.insertSpaces": false,
"eslint.validate": [
"javascript"
]
}
// settings.json of project2, extends repo settings with below settings
{
"editor.tabSize": 2,
"eslint.validate": [
"typescript"
]
}