Muniesa
V2EX  ›  问与答

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

  •  
  •   Muniesa · Feb 4, 2020 · 5017 views
    This topic created in 2341 days ago, the information mentioned may be changed or developed.

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

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

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

    image.png

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

    image.png

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

    7 replies    2020-11-26 14:33:25 +08:00
    noe132
        1
    noe132  
       Feb 4, 2020 via Android
    好像 vscode 的终端是 canvas 画的。
    Hellert
        2
    Hellert  
       Feb 4, 2020 via Android
    字体问题
    Muniesa
        3
    Muniesa  
    OP
       Feb 4, 2020
    @noe132 是因为这个的原因吗?按理说 electron 软件应该和浏览器里面的效果一样……
    Muniesa
        4
    Muniesa  
    OP
       Feb 4, 2020
    @Hellert 但是 vscode 也不是完全不能显示 emoji,我直接在控制台打印就没有报错,单个 emoji 也能勉强显示。
    https://i.loli.net/2020/02/04/Y4xs7UVQJd59BMH.png
    szlytlyt
        5
    szlytlyt  
       Feb 4, 2020 via iPhone
    Windows Terminal 的 Windows console host 是重写过的,支持现代特性
    开源地址: https://github.com/microsoft/terminal
    sdator
        6
    sdator  
       Sep 10, 2020
    @Muniesa 问题解决了吗?同问
    Dragonphy
        7
    Dragonphy  
       Nov 26, 2020
    vscode 终端改成 powershell,然后字体改一个支持 emoji 的字体
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2956 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 96ms · UTC 05:39 · PVG 13:39 · LAX 22:39 · JFK 01:39
    ♥ Do have faith in what you're doing.