终于,微软修复了 Notepad 长达 33 年的换行“Bug”

王练
 王练
发布于 2018年05月11日
收藏 9

自 1985 年发布以来,微软的 Notepad(记事本)一直存在的一个 “Bug” ,终于宣布要解决了。

对于一般用户来说,记事本是一个非常实用的 TXT 文本编辑工具。不过 IT 专业人员可能会烦扰记事本只支持 Windows 的行尾符 (End-of-Line) - 回车(CR)和换行符(LF),因为这意味着记事本无法正确显示在 Unix、Linux 和 macOS 中创建的文本内容,看起来就像下面这样:

微软的开发者博客上,开发团队表示正在更新 Windows 10 上的记事本应用,以新增对 Unix / Linux 行结尾(LF)和 Macintosh 行结尾(CR)的支持。版本更新后,在记事本中创建的新文件依然会默认使用 Windows 行结尾符(CRLF),但可以查看、编辑和打印现有文件,并正确保持文件的当前行尾格式。

目前,记事本在 Windows 10 预览版中已得到更新。至于这个问题为什么会持续三十多年,文中没有提及。

如果不喜欢新增的功能,还可以通过编辑注册表 [HKEY_CURRENT_USER\Software\Microsoft\Notepad] 将其禁用。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:终于,微软修复了 Notepad 长达 33 年的换行“Bug”
加载中

精彩评论

宇润
宇润
微软的才是最正宗的换行,http请求头就是用\r\n换行
风华神使
风华神使
\r表示将光标移动到行首,\n表示光标下移,所以\r\n才是最正宗的(人们理解的)换行
luwenhua
luwenhua
举手之劳的东西30年不改,这表明微软对非微软阵营的敌视态度。那现在为什么改了呢?现在是有甜头了,忙着掩饰:smile:
eechen
eechen

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行
是么?既然如此,为什么众多编程语言中都用\n表示换行呢?
还有,这个正不正宗毛线关系都没有.
你见过Linux上的编辑器不能识别Windows的\r\n换行的么?

软粉洗地可以,但要严谨,不要东拉西扯.
久永
久永
这不是bug,这是设计如此好吗?

最新评论(80

宇润
宇润

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行

引用来自“山雨欲来”的评论

命令行telnet 发一次http请求 再说话
http://http2.github.io/http2-spec/
山雨欲来
山雨欲来

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行
命令行telnet 发一次http请求 再说话
格力高
格力高
由此可见微软之骨子里的傲娇
久永
久永

引用来自“夜夜晴天”的评论

其实写字板一直都支持显示Unix换行——我记得以前有人在TechNet问记事本不能正确显示的问题,回答就是去用WordPad打开

引用来自“久永”的评论

问题是,你不能直接拖进去,否则直接落地成盒。

引用来自“szf”的评论

可以拖动到写字板的窗口标题栏的
回复@szf : 是啊,我也是这么用。
临渊灬
一群人为了屁大点问题撕逼,其实就是几种语言的粉在互肛。。。从来都跟问题本身没有多大关系
土拨薯啊
土拨薯啊
还有微软拼音的ctrl+shift+f简繁切换,从win10出来一直强制这个快捷键,不能修改和关掉。
快捷键和大部分ide的全局搜索都冲突了。
过了几年才出个开关。
000JC嚓
000JC嚓

引用来自“风华神使”的评论

\r表示将光标移动到行首,\n表示光标下移,所以\r\n才是最正宗的(人们理解的)换行
在行末添加一个 \n 表示光标下移不就足够表示换行了吗:joy:
parva
parva

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行

引用来自“eechen”的评论

HTTP的URL使用斜杠/分隔路径,微软的Windows偏要使用反斜杠\分隔路径.
你说微软及其粉丝是不是"杠精"?

引用来自“parva”的评论

Windows用反斜杠是因为DOS用了反斜杠,DOS出来的时候还没有HTTP。Windows本身是支持正斜杠的,你可以自己试一下,只是显示的时候会自动变回把反斜杠。这都是向后兼容的包袱,但也是Windows系列一直以来的卖点。

引用来自“eechen”的评论

既然你拿DOS出来说事,我是不是可以拿UNIX出来说事?
为什么DOS要反气道而行,跟UNIX的/路径相反呢?
看你怎么洗.
就说换行符这事,要比早你能早得过电传打字机吗?早期电传打字机里所谓换行就是进纸(LF)加回车(CR)两个操作,Unix能做到只用LF是因为系统默默帮你转换成LF+CR了而已。我觉得这种“比早”的做法真是毫无意义,如今大家都觉得Unix的决定正确,无非是因为C语言当初是和Unix绑定的,而当今多数主流语言都衍生自C语言。曾经称霸世界的BASIC已经一败涂地了,否则说不定是另一种景象。
parva
parva

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行

引用来自“eechen”的评论

HTTP的URL使用斜杠/分隔路径,微软的Windows偏要使用反斜杠\分隔路径.
你说微软及其粉丝是不是"杠精"?

引用来自“parva”的评论

Windows用反斜杠是因为DOS用了反斜杠,DOS出来的时候还没有HTTP。Windows本身是支持正斜杠的,你可以自己试一下,只是显示的时候会自动变回把反斜杠。这都是向后兼容的包袱,但也是Windows系列一直以来的卖点。

引用来自“eechen”的评论

既然你拿DOS出来说事,我是不是可以拿UNIX出来说事?
为什么DOS要反气道而行,跟UNIX的/路径相反呢?
看你怎么洗.
我是想说这跟HTTP无关而已,而且Windows确实支持正斜杠,这也是事实。1997年才有的POSIX,DOS诞生的时代Unix还没一统天下呢(更不要说Linux),当时个人用系统的霸主是CP/M,所以DOS的一切都是在山寨CP/M,CP/M已经把正斜杠用作命令行参数分隔符了,所以DOS就不能再用了。
其实这只是个人系统和服务器系统两条线路而已,诞生相差不超过3年,又没有国际标准,为啥所有人都要和Unix一样?
chen哥你每天戾气这么重,真的没问题吗?我真的有有点怀疑你是OSC自己人了。
eechen
eechen

引用来自“宇润”的评论

微软的才是最正宗的换行,http请求头就是用\r\n换行

引用来自“eechen”的评论

HTTP的URL使用斜杠/分隔路径,微软的Windows偏要使用反斜杠\分隔路径.
你说微软及其粉丝是不是"杠精"?

引用来自“parva”的评论

Windows用反斜杠是因为DOS用了反斜杠,DOS出来的时候还没有HTTP。Windows本身是支持正斜杠的,你可以自己试一下,只是显示的时候会自动变回把反斜杠。这都是向后兼容的包袱,但也是Windows系列一直以来的卖点。
既然你拿DOS出来说事,我是不是可以拿UNIX出来说事?
为什么DOS要反气道而行,跟UNIX的/路径相反呢?
看你怎么洗.
返回顶部
顶部