VSCode 的终端和 Windows Terminal 对 emoji 的支持不同?

2020-02-04 20:31:58 +08:00
 Muniesa

爬了自己微博的数据,代码是这么写的:

text = "@埃兰扎哈维 发表于" + mblog['created_at'] + ' 来自'+mblog['source']+":<br>" + mblog['text']
print(text)

然后在 vscode 的终端直接运行了,结果遇到了一个有 emoji 的微博出现了报错,微博内容是“我队在小组赛被决赛球队干掉了😨”:

隐约记得之前也有 emoji 的微博并没有报错,而且之前用 Windows Terminal 运行同样的代码并没有报错过,于是在 Windows Terminal 又跑了一遍,结果竟然可以了……

vscode 和 Windows Terminal 都是用的 powershell,英文字体都是 consolas。所以究竟是哪里出问题了呢?

4382 次点击
所在节点    问与答
7 条回复
noe132
2020-02-04 20:50:28 +08:00
好像 vscode 的终端是 canvas 画的。
Hellert
2020-02-04 20:57:35 +08:00
字体问题
Muniesa
2020-02-04 21:22:16 +08:00
@noe132 是因为这个的原因吗?按理说 electron 软件应该和浏览器里面的效果一样……
Muniesa
2020-02-04 21:23:37 +08:00
@Hellert 但是 vscode 也不是完全不能显示 emoji,我直接在控制台打印就没有报错,单个 emoji 也能勉强显示。
https://i.loli.net/2020/02/04/Y4xs7UVQJd59BMH.png
szlytlyt
2020-02-04 21:27:48 +08:00
Windows Terminal 的 Windows console host 是重写过的,支持现代特性
开源地址: https://github.com/microsoft/terminal
sdator
2020-09-10 17:28:43 +08:00
@Muniesa 问题解决了吗?同问
Dragonphy
2020-11-26 14:33:25 +08:00
vscode 终端改成 powershell,然后字体改一个支持 emoji 的字体

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

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

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

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

© 2021 V2EX