我在VS代码编辑器中启用了最新的c#扩展。保存或应用组合键 Ctrl + K Ctrl + F 或 Alt + Shift + F ,我需要在按Enter键时格式化当前代码行。此功能在Visual Studio中已可用,但默认情况下在VSCode中找不到。
这是我需要实现的示例代码输出
答案 0 :(得分:2)
转到File
> Performances
> Keyboard Shortcut
( Ctrl + K Ctrl + S )
点击keybindings.json
链接
为输入键输入以下绑定此绑定将覆盖当前用户的默认值。
{
"key": "enter",
"command": "editor.action.formatDocument",
"when": "editorHasSelection"
}
另一种替代解决方案是使用macros extension自定义宏支持VS Code,这样您就可以在一个键绑定中执行多个命令
将宏添加到User Settings
"macros": {
"formatWithEnter": [
"editor.action.insertLineAfter",
"editor.action.formatDocument"
]
}
以下键绑定到keybindings.json
{
"key": "enter",
"command": "macros.formatWithEnter"
}
答案 1 :(得分:2)
我找到了一个选项,在输入时更容易格式化代码。 我在工作区设置中应用了以下设置
{
"editor.formatOnSave": true,
"editor.formatOnType": true
}
这对我来说很好。
答案 2 :(得分:2)
答案 3 :(得分:0)
VS默认为
的代码格式化程序On Windows Shift + Alt + F
On Mac Shift + Option + F
如果您再次按Enter键,则需要设置工作区首选项,然后配置键绑定
{" key":"输入","命令":" editor.action.format" }
如果没有选择任何内容,它现在格式化整个文档,否则格式化选择
还有beautify.onSave,editor.formatOnSave选项也请尝试使代码漂亮。
答案 4 :(得分:-1)
编辑:这实际上不起作用,因为这会抑制常规的Enter键行为
为了让这个对我有用我必须安装两个扩展
没有第二个扩展程序,我收到错误visual studio code there is no formatter for 'csharp'-files installed
我还确保我的VS代码是最新的(帮助>重新启动和更新或检查更新)
然后我添加了自定义键绑定。文件>偏好>键盘快捷键> “对于高级自定义打开和编辑keybindings.json”
[{
"key": "enter",
"command": "editor.action.formatDocument",
"when": "editorTextFocus"
}
]
我必须输入单词enter
,因为捕获键的对话框不会确认它。