Repository navigation
Terminal v1.0.4
越狱 iOS 设备的终端 App,最低支持 iOS 12.0。终端仿真核心(VT100/xterm、UTF-8、中文与 emoji 列宽、256 色与真彩色、回滚与 reflow)为纯 C,界面层是 Objective-C + UIKit。
这一版修的是「连按两个 -,第二个不按原样进去」。
安装
rootless 越狱(Dopamine / Palera1n 等)— 推荐
- 文件:
Terminal_1.0.4_iphoneos-arm64.deb - 安装位置:
/var/jb/Applications/Terminal.app - 方式:
dpkg -i Terminal_1.0.4_iphoneos-arm64.deb,或用 Sileo / Zebra 的「本地安装」 postinst会自动执行uicache并刷新 SpringBoard
从 1.0.2 / 1.0.3 直接覆盖安装即可,bundle id 没变,设置与会话不受影响。
本版修复
-
--被 iOS 改写成别的字符 ——cbf86fd输入视图原来只关了
autocorrection/spellChecking/autocapitalization,漏掉了 iOS 11 起新增、和它们并列的智能标点三项。这三项默认是Default(跟着键盘类型走,通常是开着的),而且它们在字符送进 App 之前就把按键改写掉:你按的 实际送进来的 --一个长破折号 —"弯引号 “/”...…终端要的是原样透传,所以
smartDashesType/smartQuotesType/smartInsertDeleteType现在全部显式关掉。关掉之后--就是两个-。 -
顺带把
replaceRange:withText:补完整:系统要改写的范围正好紧贴光标时(智能标点、听写纠正、输入法改写都是这种情况),先在 shell 里把它们退掉再打新内容,终端里不会再多留一份旧字符串;范围不紧贴光标的仍然不动,免得凭空删掉命令行上的东西。
同时包含 1.0.3 的修复
- #locale zsh 里键入中文回显成乱码(
<00ad>之类) ——61170e0
pick_lang()原来只看 locale 目录在不在,C.UTF-8/zh_CN.utf8这些在 Darwin 上其实没有数据,名字一无效 shell 就停在 C locale,zsh 的 ZLE 掉进单字节模式。现在改成直接问 libc(newlocale+wcwidth_l),并把LANG/LC_CTYPE/LC_ALL一起设成真正可用的那个,rc 里残留的LANG=C.UTF-8也压不住它。 out/里从此只放一个 deb,不再产出 ipa ——32e7ebc
校验
| 文件 | SHA256 |
|---|---|
Terminal_1.0.4_iphoneos-arm64.deb |
a26e6431adc1fb097b6a54bd641cc2d21e1ca1fef130fb0a8c7fabf1f05941e2 |
make test 173 项断言全过。
App 图标提取自 macOS 内置的 Terminal.app,属 Apple 的美术资源,不在本项目 MIT 许可的授权范围内;源代码许可见 LICENSE。