在Windows上使用.sh
文件会导致在Linux Docker容器中运行它们时出现问题,如果它们具有CRLF的EOL。我是否可以使VS代码始终使用LF来处理特定文件类型,例如.sh
,同时仍然为所有其他文件使用CRLF?
我只在设置中找到"files.eol": "\r\n"
,但这是全局的。
据我所知,您可以在每个文件的基础上在底部工具栏中更改此设置,但我希望这是所有.sh
文件的默认设置。
答案 0 :(得分:2)
您可以在vscode中执行此操作,而无需扩展。您可以进行特定于语言的设置:
在命令面板中,搜索“ Configure language specific
”,选择它,然后从语言选项中选择“ shellscript
”:
这将在您的设置中创建以下内容:
"[shellscript]": {
},
现在仅添加要应用于shellscript文件的内容,例如:
"[shellscript]": {
"files.eol": "\n"
},
答案 1 :(得分:1)
您可以使用EditorConfig。
安装editorconfig extension,然后在项目的根目录中添加.editorconfig
文件:
[*]
end_of_line = crlf
[*.{sh}]
end_of_line = lf
但正如@axiac所说,我建议总是使用lf
...
答案 2 :(得分:0)
在设置窗口中,转到
Settings > Text Editor > Files > Eol
选项。您将在此处关注可用选项
- \n
- \r\n
- auto (default)
这里\n
代表LF,\r\n
代表CRLF,auto
使用操作系统特定的EL运算符。
选择您的选项并保存。
VS代码:1.13.3
版