使用 VS Code 扩展 API 更改文件的行尾符

8
我可以在VSCode中静默更改行尾序列吗? 类似这样:
vscode.commands.executeCommand("workbench.action.editor.changeEOL", "LF");
3个回答

13

您可以将以下这行添加到用户偏好设置中(CTRL + ,):

"files.eol": "\n"

5

在vs code的右下角,会显示lf或crlf。点击那里,就有一个更改选项。

vs code图片


5
这仅适用于当前文件。有没有办法将其更改为项目中的每个文件?不幸的是,仅在设置中更改无法做到这一点。 - Micros

1
解决方法是调用活动 TextEditor edit 方法。例如:
vscode.window.activeTextEditor.edit(builder => { 
    builder.setEndOfLine(vscode.EndOfLine.LF);
})

更新
或者如果您想要的结果,您可以使用这个:

vscode.TextEdit.setEndOfLine(vscode.EndOfLine.LF)

这里的 "vscode" 是 vscode 模块:require('vscode')

这是一个脚本片段吗?如何执行它? - Alan
1
@Alan,你需要调用TextEditor对象的edit方法。例如: require('vscode').window.activeTextEditor.edit(builder => { builder.setEndOfLine(vscode.EndOfLine.LF); }) - Rus
1
虽然这是被接受的答案,但如果在正文中提供更简单的说明而不是评论,它会变得更好。具体来说,例如如何“调用编辑方法”。 - Dylan Kinnett
这可能是解决方案,但它应该包含指示人们在哪里以及如何执行代码的说明。回答不清楚。 - Mehmet Eyüpoğlu
这个问题涉及到VSCode扩展开发。我编写了一段代码来解决问题。在哪里以及如何执行你正在开发的扩展的代码(不是本问题的指令,希望不要提供) - Rus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接