我和我的团队在过去几个月里为我们的项目定义了有关 C# 代码格式和样式的规则,因此我们最终得到了一个.editorconfig文件。
而且,我们都安装了扩展Productivity Power Tools,以便在保存文件时(CTRL+S)格式化代码,而不必使用VS内置功能Code Clean Up。当我们意识到后者需要特殊的快捷方式(CTRL+K、CTRL+E)并且团队的每个成员都需要在本地设置此设置(因为无法将其放入源代码管理中)时,我们做出了这个决定。
这种工作方式非常适合 VS 2019。
但是,在上个月,团队的大多数成员升级到 VS 2022,并且扩展Productivity Power Tools 22删除了(显然没有任何原因)Format On Save和Remove and Sort Usings on save功能。
我们显然通过扩展VSE-FormatDocumentOnSave解决了这个问题- 通过在选项Edit.FormatDocument Edit.RemoveAndSort中进行设置Commands。它似乎工作得很好,但我们担心的是,这不是微软的工具,谁知道将来会发生什么。
因此,由于代码风格和格式设置规则是每个团队都关心的问题,考虑到我们是一个由 20 多名开发人员组成的团队,我想知道是否有人知道更好的方法来管理它。
code-formatting visual-studio editorconfig visual-studio-2022
我正在使用 C# 10 新功能File-scoped namespace declaration。
我有这样的旧代码
namespace SampleCode
{
public class MyClass
{
}
}
Run Code Online (Sandbox Code Playgroud)
我正在将此代码移至
namespace SampleCode;
public class MyClass
{
}
Run Code Online (Sandbox Code Playgroud)
但我有很多警告:IDE0160: Convert to block scoped namespace
我如何确保人们只会收到旧语法的警告?
我正在尝试设置一些工具来帮助维护多个开发人员使用的代码库的一致性.是否有必要一起使用EditorConfig,ESlint和Prettier?据我所知,EditorConfig用于设置编码样式/规则,ESlint用于确保代码的格式一致,如果代码不遵循规则则抛出警告,并且更漂亮用于根据规则自动格式化代码.但是,我相信你可以更漂亮地自定义规则,这反过来又完成了EditorConfig的工作.这是真的?用于维护一致代码的最佳工具组合是什么?
使用 Visual Studio Community 2022 版本 17.4.4。
我刚刚使用内置 VS 模板创建了一个 WPF (.NET Framework) 解决方案。对于这个解决方案,我想添加一个.editorconfig文件来帮助代码格式化。但是,当右键单击“解决方案资源管理器”中的解决方案并跟踪Add -> New Item... -> editorconfig File (.NET)并命名它时.editorconfig,Visual Studio 根本不会创建它。
我再次遵循相同的步骤,但选择添加一个普通.txt文件,并且创建它似乎很高兴。
值得注意的是,我可以在解决方案中.editorconfig添加新的项目,但是当我计划将来添加更多项目时,我希望解决方案本身包含一个顶层,而不是需要为每个项目复制它。.editorconfig
我尝试过重新启动 VS、更新它、修复它并创建一个完全独立的解决方案。我得到相同的结果。我知道.editorconfig文件本身只是纯文本文件,我可以创建一个空白文件并手动键入其中,但理想情况下我希望所有预设都开箱即用。
任何帮助,将不胜感激。
编辑:我设法通过从 VS 设置创建它来暂时解决它:Tools -> Options -> Text Editor -> C# -> Code Style并选择该Generate .editorconfig file from settings选项。从这里我选择解决方案文件夹。add然而,这并没有解决上下文菜单选项不创建它的原始问题。
^ 在这个答案和凯文·沙恩霍斯特的答案之间选择。
我使用VS Code作为编辑器.我们有一个.editorconfig格式配置的文件.我们在编辑器中使用extenion EditorConfig来格式化我们的HTML和CSS一般.我从这里安装了VS Code的扩展EditorConfig:https://github.com/editorconfig/editorconfig-vscode
我们的.editorconfig文件如下所示:
# This is the top-most .editorconfig file (do not search in parent directories)
root = true
### All files
[*]
# Force charset utf-8
charset = utf-8
# Indentation
indent_style = tab
indent_size = 4
# line breaks and whitespace
insert_final_newline = true
trim_trailing_whitespace = true
# end_of_line = lf
### Frontend files
[*.{css,scss,less,js,json,ts,sass,php,html,hbs,mustache,phtml,html.twig}]
### Markdown
[*.md]
indent_style = space
indent_size = 4
trim_trailing_whitespace = false
### YAML
[*.yml]
indent_style …Run Code Online (Sandbox Code Playgroud) 我正在尝试为我的项目设置标准代码样式,并且我找到了http://editorconfig.org/,这是一个标准.我非常喜欢它,Intellij支持它(我们使用Intellij).
但我已经阅读了很多内容,但我还没有找到如何将Intellij的所有代码样式导出到.editorconfig文件.我只能将它们导出到仅适用于Intellij的XML.
或者是否有任何网页可以读取Java的所有editorconfig域特定属性?在editorconfig github wiki中,他们只有几个.
我设置了各种C#代码样式规则来生成错误,虽然违规在IDE中显示为错误(错误列表和文本编辑器中),但实际构建仍然成功.
谁能证实这一点?我在社区(家庭)和企业(工作)版本的VisualStudio/15.0.0 + 26228.9上进行了测试.由于代码样式违规,我无法获得任何构建.
我甚至尝试使用.editorconfig,并且构建仍然经历...
是否可以忽略/排除.editorconfig中的文件/文件夹?
原因:我有一个/vendor包含第三方文件的文件夹.我不希望该文件夹继承我的任何.editorconfig配置.
我找到了EditorConfig-Properties页面,似乎没有可以排除文件夹的属性.也许有一个黑客可以让它成为可能?
当前配置
root = true
[*]
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
indent_style = tab
Run Code Online (Sandbox Code Playgroud) 我们的团队与Visual Studio 2017 Professional合作.
我一直试图在整个团队中统一代码风格,显然现在的行业标准是使用.editorconfig文件.甚至Visual Studio中的设置窗口也建议使用该配置文件并链接到有用的页面,了解如何编写editorconfig文件.
但是我不想手动编写我已在VS中配置的所有设置.我想要一个工具将这些设置导出为.editorconfig文件来分发它们.
我还没有找到任何工具来做到这一点,所以我想自己纠正并与像我这样的其他人分享.但显然如果转到"工具 - >导入和导出设置...",则无法下载当前的代码样式设置.
有没有解决的办法?
你知道任何工具将我的设置转换为editorconfig文件或导出我当前的代码样式设置吗?
我已根据此处的信息创建了自己的.editorconfig文件版本
你可以在我的github回购中找到它
我们正在努力为 javascript/typescript 设置团队标准的缩进样式,并且从所有迹象来看,当我们打开解决方案时,设置.editorconfig并没有覆盖 VS 底部所示的用户首选项
出于测试目的,我创建了世界上最简单.editorconfig的缩进大小值,并将其添加到解决方案的根文件夹中:
# All files
[*]
indent_style = space
indent_size = 27
Run Code Online (Sandbox Code Playgroud)
然后,在工具下 | 选项 | 文本编辑器 | JavaScript/TypeScript | 标签,我设置了不同的缩进大小值:
所以 - 如果.editorconfig真的被使用,任何重新格式化 Typescript 文件的尝试都应该导致每级缩进 27 个空格。没有骰子。
我尝试将文件移动到与我要格式化的 Typescript 文件相同的文件夹中。没有骰子。
我已经验证在工具下选择了“遵循项目编码约定” 选项 | 文本编辑器 | 一般的。我也关掉了。没有骰子。
它始终格式化为工具 | 中指定的缩进大小。选项。
有没有我遗漏的魔法酱?
editorconfig ×10
.net ×1
c# ×1
c#-10.0 ×1
coding-style ×1
css ×1
eslint ×1
formatting ×1
html ×1
java ×1
msbuild ×1
prettier ×1
solution ×1