最“流畅”的终端模拟器是什么?
这里的“流畅”指的不是计算层面的 fast ,而是图形层面的流畅,丝滑的感觉。
我能想到最接近的例子就是 neovide 这种,但它只是一个 nvim 的 GUI 而已,而不是终端模拟器。
我对终端的使用其实很少,就是 nvim + tmux 。我喜欢 textbase 的 ui ,因为它直接了当,简介清楚,速度也快。
但现在用多了各种软件和系统上丝滑的动画(比如 iOS ,电子游戏之类)配合现在各种高刷新率的设备之后。再回到 textbase 的终端上就总觉得卡卡的,非常不舒服。
有没有一个终端模拟器能把这种更现代的丝滑 UI 体验带到终端上呢?
github.com/alacritty/alacritty
在用这个,觉得还不错。
大部分时间都是 vim/neovim 卡,插件越少越滑
mac 上字体没有自带 emulator 清晰,感觉 mac 上还是自带的最好
这截图看得我晕车……
那必须是 wezterm ,rust 写的,R 神启动
kitty
你说的这个功能,kitty 上个月刚添加……
github.com/kovidgoyal/kitty/issues/2460
github.com/kovidgoyal/kitty/pull/7970
有没有可能,让你觉得卡顿的,不是真卡顿,而是基于单元格的滚动导致的跳跃感
这光标太调皮了吧
我推荐 foot codeberg.org/dnkl/foot 另外这个作者其他项目也都非常好。
设计哲学层面我不是很认可 kitty/alacritty 的路线,恰好这个话题我在之前的讨论 zed 编辑器的帖子里提到过 hesudu.com/t/1056672 可以做参考。
foot 的作者也有专门写过文章论述 codeberg.org/dnkl/foot/wiki/Performance
除开渲染层面,foot 的作者同时维护 fcft 一个 rasterization 的库,这个库对于字符的处理我认为是目前最好的,foot 的字符显示就是基于 fcft 。
还有 foot 对于 OSC/escape sequence 的支持非常标准化,很方便做定制或者与其他应用交互。
你这个光标帅呀!
你觉得目前终端慢其实是 tmux 慢,再快的终端套上 tmux 这一层都在一个起跑线了
如果是客户端本地开发,而且对 tmux 的 session 不是刚需,现代终端的 tab 等基本都可以替代掉 tmux 的功能,不用这么沉迷 old school 的工具
滚动确实是个很重要的原因,如果有把这个问题解决的终端模拟器,估计用起来也不错
哎,这个可以哦,感谢提醒
ghostty
说起来,见识过 OSC 52 的效果之后,再也看不上 :set paste 了
xshell ,用习惯了感觉挺好
PuTTY
#16
OSC 52 确实是非常好的,终端里也不区分本地和远程。
当然我觉得这事属于历史问题,特别是 linux 环境。clipboard 是个桌面层面的实现,x11/wayland 还不一样,所以 vim 与系统剪贴板的交互是比较低效的 ipc ,而且需要编译期增加支持。理论上如果把 寄存器与系统寄存器关联也可以,但 vim 的设计 delete 会和 yank 同样使用 寄存器,这就导致按一下 x 也会触发一次 ipc ,一方面造成卡顿,另一方面用户也不想删除的内容进系统剪贴板。
#13
平滑滚动是靠视觉残留形成的错觉,所以平滑滚动光标很容易做,但是平滑滚动内容本身是很难的。
由于终端里的内容基本不存在关联性,平滑滚动这个事情在不牺牲速度的前提下我个人认为不可行。
帧数太低了哈哈哈哈
#8 想了一下确实是这样,我所谓的“不流畅”就是这种基于行的渲染模式在变化时缺少过渡导致的。
例如滚动
例如光标的跳跃
例如 nvim 中各种 ui 和布局的变化
等等
都缺少过渡,正是这种生硬的变化让我有卡卡的感觉
终端没有不顺畅的
Warp ?输入命令直接是文本编辑器
tmux 有 buffer 其实并不卡 只是有视觉体感 计时测试就知 个人觉得有 buffer 更好 在处理大量 print 出来的东西有加成
试了下好像不支持 lrzsz 之类的
wt.exe 还不够流畅么
对,我以前用 alacritty + tmux 。后面发现套了 tmux 大家速度都差不多了,于是又滚回去用 konsole 了,支持的特性还多一点。
帮朋友问一个问题。 最近在使用向日葵的时候发现一个问题,想请教一下各位大佬,为什么向日葵会在电脑上默认创建名为 [ sunlogin ] 管理员账号。 运行命令符即可查询到 …
悲催,币安网的 USDT 和 BNB 被黑客盗走了,好在金额不多,大概 120 刀左右,大概情况如下: 1 )我用印象云笔记存储了助记词,大概有 4~5 个月了,平常交易都是用…
生手提问, 因为要兼容旧的 opwerwrt 设备的 ov ,要编译一个比较老版本的 openvp* openvp*-2.3.2.tar ,去做 Server 端 2.3.…