编写代码的工作区文件路径需要全部保持纯英文么?

2022-08-11 19:35:14 +08:00
 chiyagao

2202 年了,想当年,小时候的老师一直说,为了避免不必要的 bug ,从电脑操作系统根路径一直到项目文件夹,全部用英文写。

win 我好久没用了不知道,mac 我好像遇见过会把中文名文件转成拼音形式,暂时没写过同拼音不同中文字的文件名,大概。
linux ,这种 centos ,逼格上去了,还是用英文吧。

想问问大家,现在编写代码的工作区文件路径需要全部保持纯英文么?

我还是看中文字,定位文件夹速度快、、、莓办法 银不了 尽梨了。
5340 次点击
所在节点    程序员
56 条回复
FrankHB
2022-08-12 05:00:35 +08:00
该用啥用啥,只要你清楚代价。
最大化可移植性不是目的,否则干脆把 MS-DOS 的 8.3 也支持了,但一般显然没必要。
编码么同一个环境通常不是问题,但不排除比较极端的例外(比如 Windows 下升级 hg 版本可能活久见乱码)。
不过就算不考虑这些,只要可能换系统玩,文件系统大小写问题也够你喝一壶了。( NTFS 现在虽然支持大小写敏感,但得单独设置,而且设置以后像一些 ps1 命令直接罢工了。)

@nightwitch 非 BMP 问题还不如甩锅给 Unicode 自己。一开始就妄想 BMP 解决问题,直接搞出 UCS-2 半吊子,还要 UTF-8 擦屁股,又回过头另外擦出个 U+10FFFF 的 magic number 。这还没完,刷版本到处给跟不上的兼容,Han unification 漏去重之类的添乱不说,UTS#51 什么屑玩意儿……甚至还能遇到 zzzq 问题( https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p1949r7.html#all-emoji-become-excluded-instead-of-just-some ),xswl……
即便是 BMP 在这里也还有问题,比如有多少用户敢确信清楚自己用的环境对 NFD/NFC/NFKC 的支持?能塞零宽和控制字符进去么?(虽然 OP 只是说中文基本不用管这破事。)(其实控制字符嘛,就是 ASCII 也有这个问题,但很容易限制;关键差别是 Unicode 的破烂即便不考虑版本都不是能指望人能枚举完的。)
akring
2022-08-12 08:58:26 +08:00
@Vegetable #14 Lingdaotong - Gongzhongcanyu - Gongzhongtongji
JustSong
2022-08-12 09:11:15 +08:00
@Ediacaran 不知道有没有可以补全拼音成中文的 shell 插件
bear1man
2022-08-12 09:12:39 +08:00
太有必要了,你完全不知道什么时候会出幺蛾子。
个人习惯,在 win 下,不止是工作路径,你的 username 最好也是英文,如果你登录微软账户,保证你的微软账户昵称是英文,不然它会给你改名。而且我个人是会打开全局 utf-8 功能的。尽管开了之后会有部分应用乱码。

以上都是我用 win 多年总结的经验。顺便夸一句 mac os 在字符编码方面做的不错了,完全没遇到过乱码 /中文路径问题。
murmur
2022-08-12 09:14:10 +08:00
要的,我真遇到过中文路径的 bug
nothingistrue
2022-08-12 09:15:43 +08:00
只要是纯的,不管是纯英文还是纯中文都是可以的。但是,现在没法纯中文。平常所说的中英文问题,实际上是纯英文跟中英混合的对比问题,自然是能用前者就用前者。
jackmod
2022-08-12 09:18:54 +08:00
要看写什么代码,以及编译系统是怎么处理路径的。
顺便,转移到 linux 上面反而无需在意路径用什么字符了
ClydeX
2022-08-12 09:20:20 +08:00
会遇到一些问题,但绝大部分都有解决方法,没啥
Leonard
2022-08-12 09:21:20 +08:00
自己一个人开发随便,否则尽量不要用中文路径
zyy314680012
2022-08-12 09:22:54 +08:00
反正我的 code 目录基本都英文的
HeFengzz
2022-08-12 09:24:18 +08:00
安装一些软件或游戏的时候,你不用英文(或带有空格)可能找不到游戏存档
HeFengzz
2022-08-12 09:25:52 +08:00
虽然有些无聊,但我觉得能给你一些参考

[你的文件和目录的命名习惯是怎样的?]( https://www.v2ex.com/t/858464#reply21)
xiaojun1994
2022-08-12 09:45:39 +08:00
两年前我用 flutter 遇到过中文目录不行的问题
mknightoy
2022-08-12 09:56:14 +08:00
现在项目都是 utf-8 了用中文没什么问题,老项目除外

另外别用中文的时候顺手输入了全角符号会坑死人
chiyagao
2022-08-12 10:09:43 +08:00
哇咔咔咔
haodingzan
2022-08-12 10:27:15 +08:00
@weichengwu 以前我坚持纯英文,点进来也是劝 OP 用英文,看了你的图才意识到我错哪了……
cssk
2022-08-12 10:59:11 +08:00
那必须的,comment 都英文,打起来不用切换输入法
7gugu
2022-08-12 13:28:19 +08:00
如果要经常用终端切换路径的话,还是用全英文比较好,不用切换输入法这么麻烦
akira
2022-08-12 13:48:47 +08:00
即使是 2022 年了 ,你的 XP 用户 还是在用着 XP ,你的 IE6 用户还是在用着 IE6
世界变了很多,但其实又没有
AoEiuV020CN
2022-08-12 16:38:49 +08:00
我不用纠结,因为 android studio 压根不支持中文路径,

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/872269

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX