记事本++中的EOL转换

时间:2013-04-26 15:01:51

标签: notepad++ eol

出于某种原因,当我从Windows机器上的unix服务器打开文件时,它们偶尔会进行Macintosh EOL转换,当我再次编辑/保存它们时,它们在unix服务器上无法正常工作。我只使用notepad ++编辑来自这个unix服务器的文件,所以有没有办法创建一个宏,每当我打开文件时自动将EOL转换为Unix格式?

4 个答案:

答案 0 :(得分:169)

该功能已内置于Notepad ++中。从“编辑”菜单中,选择“EOL转换” - > “UNIX / OSX格式”。

screenshot of the option for even quicker finding (or different language versions)

您还可以通过“设置” - >在记事本++中设置默认EOL。 “偏好” - > “新建文档/默认目录”然后在格式框下选择“Unix / OSX”。

答案 1 :(得分:12)

在Notepad ++中,使用正则表达式替换all。这比菜单中的转换命令有优势,你可以对整个文件夹进行操作,无需打开每个文件或拖放(在几百个文件上它会明显变慢)加上你也可以设置文件名通配符过滤器。

(\r?\n)|(\r\n?)

\n

这会将每个可能的行结束模式(单个\ r,\ n或\ r \ n)匹配回\ n。

要对多个文件进行操作,请执行以下操作:

  • 在“替换”选项卡中使用“全部打开文档中的全部替换”。您必须先将所有文件拖放到Notepad ++中。您可以控制要对哪个文件进行操作,但如果有数百或数千个文件,则可能会很慢。
  • “在文件中查找”选项卡中的“替换文件”,由您选择的文件过滤器,例如,* .cpp * .cs在一个指定目录下。

答案 2 :(得分:2)

我直接打开文件""来自WinSCP,它在Notepad ++中打开文件 我的linux服务器上有一个php文件,无论我做什么,总是以Mac格式打开:-(

如果我下载了该文件,然后从本地(windows)打开它,它就像Dos / Windows一样打开....嗯

解决方案是将本地文件EOL转换为" UNIX / OSX格式",保存并上传。

现在,当我直接从服务器打开文件时,它打开了" Dos / Windows" : - )

答案 3 :(得分:1)

根据您的项目,您可能需要考虑使用EditorConfig(https://editorconfig.org/)。有一个Notepad ++插件,它将加载.editorconfig,您可以在其中指定“ lf”作为强制行结尾。

我只是开始使用它,但到目前为止还不错,而且我从事的开源项目已经包含.editorconfig文件多年了。 “ EOL转换”设置没有更改,因此可能有些混乱,但是,如果“查看>显示符号>显示行尾”,即使“ EOL转换”,您也会看到它正在添加LF而不是CRLF。 ”,而底下角则显示其他内容(例如Windows(CR LF))。