V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lau52y
V2EX  ›  程序员

Mac 终端工具你们用的那些?

  •  
  •   lau52y · 2019-11-25 19:19:26 +08:00 · 19356 次点击
    这是一个创建于 1859 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1、原生 2、iTerm2 3、ZOC 4、微软 Windows Terminal

    链接放这里,欢迎大家帮忙补充几个

    109 条回复    2021-04-11 22:53:02 +08:00
    1  2  
    wzwwzw
        101
    wzwwzw  
       2019-11-27 09:34:23 +08:00
    iterm2
    jh163888
        102
    jh163888  
       2019-11-27 10:00:32 +08:00
    iTerm2
    Ionstorm
        103
    Ionstorm  
       2019-11-27 10:45:50 +08:00
    原生,没想过还要找别的
    waterjiao
        104
    waterjiao  
       2019-11-27 11:23:13 +08:00 via iPhone
    iterm2
    Airon
        105
    Airon  
       2019-11-27 11:54:44 +08:00
    iterm2
    leeiio
        106
    leeiio  
       2019-11-27 15:23:54 +08:00
    iTerm 第一
    ByteCat
        107
    ByteCat  
       2019-11-28 09:16:57 +08:00 via Android
    Kobayashi
        108
    Kobayashi  
       2020-01-26 14:15:33 +08:00 via Android   ❤️ 2
    这个年代了,我对于一款 terminal 的基本要求是支持:1 )全彩,2 ) GPU 加速。

    可选项有:iTerm2,kitty,alacritty。

    iTerm2 无疑是所有平台里功能最强的终端,遗憾的是目前 GPU 加速并不完美。首先其 GPU 加速的效果不算最佳( alacritty 和 kitty GPU 加速效果都比 iTerm2 好),且在 tmux 才降的厉害(在 HOME 目录下 tree 输出你就明白了);二来,iTerm2 开启 GPU 加速条件非常严格,GPU 加速时不支持 ligature、透明底色、字宽不能小于 100%等。

    alacritty 更类似于 Linux 下 termite,没有 tab、split,早期甚至没有 scrollback,还没有任何附加功能。这家伙就是定位配合 tmux 和 tiling window manager 使用的极简 terminal。除此以外,对于非英文字体全然支持有问题,emoji 颜色不对,中文字体渲染不正常。

    kitty 目前在用中。相比于要啥没啥的 alacritty,kitty 拥有了一个成熟 terminal 应有的功能:tab,split,终端图像显示,识别 URL 点击打开等。唯一不满,对中文字体渲染有区别,作者把锅甩给了渲染库 coretext,不过 emoji 显示正常,这点上比 alacritty 强点。

    另外近期还体验了一款新秀产品 wezterm。结论是产品还不成熟,继续观完。目前缺点:GPU 加速效果一般,和 iTerm2 差不多(也就是比 kitty、alacritty 差,tmux 内加速效果更差),不过中文字体支持完美。

    ----------

    GPU 加速意义:对于我来说主要是输出速率。在 home 目录下 tree 只是一个指标。实际主要是影响 Vim,以 iTerm2 为例,iTerm2 中用 Vim 打开文件,在滚动时会有卡顿、掉帧的感觉,这就是渲染速度跟不上导致的。kitty 或 alacritty 配合 Vim 使用时,Vim 更为流畅。

    另外,谈一谈 hyper。hyper 以其漂亮闻名。但其效率上十分垃圾。起步 200M,不支持 GPU 加速也就算了。这都什么年代了一款不支持真彩的第三方终端还好意思出来混?! hyper 设计上支持插件,这其实是一个蛮好的主义。令人很讨厌的是,插件化过了头,一些基本的功能也要依赖插件实现。如新开 tab 与当前 tab 同一目录,拖拽 tab。
    以前我对于 hyper 的看法是 Windows 下可以用用。但现在微软发力出了带 GPU 加速的新终端,hyper 可以彻底滚蛋了。
    Kobayashi
        109
    Kobayashi  
       2021-04-11 22:53:02 +08:00   ❤️ 1
    这几天看到有人点我关于 terminal 的评论。由于过去很长时间了,之前评论已经过时了。2021 年在这里更新一下。

    iTerm2 依然是目前所用过功能最强大的 terminal,也有人觉得功能太多有点重。原来我认为其 GPU 加速效果比 kitty, Alacritty 差,后来发现是因为 iTerm2 优先使用集成 GPU 造成的,在 GPU rendering 设置中取消 "Prefer integrated to discrete GPU" 即可。不过由于实现原因,iTerm2 开启 Metal Renderer GPU 加速有一些限制(详情见官方文档或者 gitlab wiki )

    kitty 中文字符不居中的 bug 已经修了,看来不是作者所说上游 coretext 问题,就是 kitty 实现的 bug 。由于 kitty 目前 GPU 加速基于 OpenGL,未来有一天必须得转到 Vulkan,作者还没时间搞。

    Alacritty 中 emoji 渲染 bug 已经修复。原来其在 About 简介中声称 "Alacritty is the fastest terminal emulator in existence." 争议比较大。后来 Alacritty About 不这么写了,README 也给出了作者如何做的 benchmark 。Alacritty 定位依然没变,主要定位应该还是配合 tiling window manager 使用,因为毕竟没有 tab, split 嘛。即便我日常全程 tmux 也需要切换 terminal 的 tab,不然总切换 tmux session 有点麻烦。

    True color 和 GPU rendering 依然是我认为这个时代 terminal 该有的基本功能,不然你写出来一个新的也干不过上边几个。


    Hyper 因为 Electron 的原因,我再也没有碰过,原因无非还是那么几点

    - Electron CPU, GPU 占用高。之前使用 GitKraken 留下了比较坏的印象,明明已经放到后台没有使用,CPU 占用还是时不时飚一下
    - True color 已经算是当今 term 最起码的功能了。Hyper 底层依赖 xtermjs 导致 true color 落后别人好多年。即便是后来 xtermjs 2019 年支持了真彩( VSCode 同样依赖 xtermjs,其集成终端已经支持真彩),hyper 还是没能支持。
    - GPU 渲染,不用说了,这几年新出终端的标配。
    - 插件拆的太离谱了,一些基本功能都得插件实现:新开 Tab 与当前 Tab 同目录、拖拽 Tab 调整(不知道这个有没有改善)
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2781 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 02:15 · PVG 10:15 · LAX 18:15 · JFK 21:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.