Skip to content

Releases: erikwang2013/opi

v1.23.1

Choose a tag to compare

@erikwang2013 erikwang2013 released this 22 Oct 11:12

v1.23.1 — iOS 键盘适配与输入法内切换修复,Linux 输入长时间冻结修复

iOS

  • 键盘按屏幕/安全区自适应:候选槽位随可用宽度增减(320pt 5 格、iPad 最多 9 格),
    工具条图标在 36–44pt 间均分,键区钉安全区;横屏/刘海/Home Indicator 不再压键或裁切。
  • 工具条小欧恢复多形态:窗口出现即随机抽一形态,空闲态每 2.8s 轮换,减弱动态时
    只保留静态 PNG;候选栏/面板占用时不后台轮转。
  • 面板返回、工具栏功能、硬件 Ctrl+' 都留在当前输入法内:返回当前键面;
    英文/繁体切换不再跳到系统键盘(系统 🌐 仍保留为唯一切换系统输入法入口)。
  • 面板返回键命中高度提升到 44pt。

Linux

  • 修复长时间停留在其他应用终端后输入失效/卡死:opi-ctl 不再用可激活的知名名
    调用 fcitx5,先查 GetNameOwner 再打唯一名;缺少总线地址时不再走 X11 autolaunch,
    避免另造私有总线并拉起第二个无 OPI 插件的 fcitx5。
  • 进程从 dbus-launch 私有 /tmp/dbus-* 继承地址时,优先使用标准
    /run/user/<uid>/bus,状态栏不会继续问错实例。
  • 状态栏 fw= 改用只读 opi_fcitx5_fullwidth(),不再每秒 toggle 两次全角状态。

站点

  • 版本、下载文件名、SEO/JSON-LD 同步 1.23.1;页面内容与交互不变。

资产

opi-1.23.1-linux-amd64.deb · opi-1.23.1-linux-x86_64.rpm ·
opi-1.23.1-windows-x64-setup.exe · opi-1.23.1-android-universal.apk ·
opi-1.23.1-macos-universal.pkg · opi-1.23.1-ios-unsigned.ipa ·
opi-1.23.1-harmonyos-unsigned.hap

Apple / 鸿蒙仍为 unsigned 产物;iOS 真机与 Linux 长时间终端场景需实测。

v1.23.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 22 Oct 05:48

v1.23.0 — Windows 热升级/功能键/状态栏修复,Android/鸿蒙键盘内设置页

Windows

  • 交互式升级且 Explorer 仍映射旧 tsf_opi.dll 时,注册新 DLL 后以原用户令牌
    重启该用户 Explorer(3 秒看门狗兜底补启),无需注销即可加载新 TSF 代码;
    首次安装与静默安装不重启 shell。
  • OnTestKeyDown 改为与引擎分流一致:F1–F12、方向键、Home/End、媒体键、
    空缓冲的退格/回车/翻页、非浏览态 Esc/Tab 全部放行给应用;非 ASCII 可打印键
    也放行。修复「功能键盘无效」与按键被吞。
  • 按键线程不再持引擎锁执行 COM 插入/caret/候选管道写;候选管道改为非阻塞写,
    候选窗卡住时不再冻住宿主 UI。
  • 新增 TSF 输入法配置切换监听:切到其他输入法立即释放候选管道;状态栏连续
    3 次读不到状态回中性并隐藏。

Android

  • 工具条齿轮不再启动 app 设置页,改为键盘内设置面板(关于面板同款顶栏/返回箭头/
    配色/滚动):学习、模糊音总开关、拼音纠错、简拼、表情页显示自有、双拼布局;
    即时生效并落盘。逐对模糊音、词库导入导出与完整设置仍在 app 设置页。

鸿蒙

  • 键盘内设置页补齐「输入模式」入口;顶部/配色/滚动与关于面板同一套,不调用
    app 设置页。皮肤/关于仍从本页进入并返回本页。

站点

  • 首页改版:借 e-cat 的深色技术结构(hero / 统计带 / 输入链路 / bento / 时间线),
    使用 opi 自己的更深色调与宠物视觉,不照搬其配色与文案;导航补「首页」。
  • 中英文双语:/ 中文、/en/ 英文,头部 EN / 中文切换;两页均有 hreflang、
    独立 canonical、FAQ/SoftwareApplication JSON-LD 与 sitemap 条目。
  • 中文 / 英文首页:hero 与数字带合并为一个深色首屏(一屏展示),页脚保持深色;
    中间内容改为浅绿 / 淡绿 / 深绿的浅色主题,下载页同步浅绿。
  • 首屏改为输入法候选栏舞台(3D 小欧 + 拼音缓冲 + 候选词 + 键位提示),
    不再沿用 e-cat 的左右分栏 + 宠物画布结构。
  • 宠物回顶按钮(桌面显示「顶部 / Top」)、12 形态穿插、微信/支付宝二维码点击放大、
    备案与 busuanzi 统计保留;7 个本地下载链接。
  • 版本、下载文件名、历史版本同步 1.23.0。

资产

opi-1.23.0-linux-amd64.deb · opi-1.23.0-linux-x86_64.rpm ·
opi-1.23.0-windows-x64-setup.exe · opi-1.23.0-android-universal.apk ·
opi-1.23.0-macos-universal.pkg · opi-1.23.0-ios-unsigned.ipa ·
opi-1.23.0-harmonyos-unsigned.hap

Apple / 鸿蒙为 unsigned 产物;Windows / iOS / 鸿蒙真机仍需验收。

v1.22.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 20:45

v1.22.0 — 全端版本检测、移动端齿轮设置页、Linux 语言栏崩溃取证

版本检测(Android / iOS / macOS / 鸿蒙 / Linux)

  • 数据源 https://opi.erik.xyz/version.json({"version":"x.y.z","download":"https://opi.erik.xyz/download"}),
    失败兜底解析官网 JSON-LD 的 softwareVersion;4s 超时、语义化数字比较
    (1.21.10 > 1.21.2,缺段按 0)。
  • 打开设置/关于时自动检测一次(失败静默、保留上次结论);「检测更新」手动入口失败才显示原因。
  • 发现新版本显示「发现新版本 vX(当前 vY)」+「前往下载」,统一打开
    https://opi.erik.xyz/download(站点新增该入口页)。
  • Android 仅为此声明 INTERNET(普通权限、无运行时弹窗,不上传输入/用户数据);
    鸿蒙同样只申请 INTERNET;iOS 无完全访问时自动检测静默降级。
  • Windows 已在 v1.21.x 具备同类检测,下载落点同步为 /download。

移动端设置入口

  • Android / iOS / 鸿蒙工具条在「关于」之前新增齿轮;点击进入设置页。
  • Android 齿轮直达 SettingsActivity,设置页 TopAppBar 最顶行新增返回箭头;
    iOS 齿轮顺序调整并保留面板返回;鸿蒙新增键盘内设置页(本端已有出口的常用/键盘/外观/关于子集,
    不做假开关),顶栏返回箭头回键面。

Linux 语言栏崩溃

  • 状态栏安装未捕获异常处理器:AWT/Compose 协程/后台线程异常写
    $XDG_STATE_HOME/opi/statusbar-crash.log(缺省 ~/.local/state/opi/statusbar-crash.log)
    并同步 stderr;启动/退出/重复实例留时间线。
  • 1s 轮询、按钮动作、符号搜索/字形过滤、贴纸读取、SkipTaskbar、状态栏尺寸等边界
    先记日志再降级,单个异常不再带走整条状态栏。
  • fcitx5 插件 keyEvent / select / deactivate / reset / 皮肤写入补 catch (...),
    非 std::exception 异常不再逃进 fcitx5 主循环。
  • 根因仍需真机日志:若再次出现,请提供上述 crash log 与
    journalctl --user -b | grep opi-statusbar,不要只重启 fcitx5 抹掉现场。

站点

  • 形态区移到能力/迭代之后;导航与章节圆点同步。
  • 回忆弹框不再首访自动打开,只由「回忆」按钮打开。
  • 版本滚动窗口默认显示最新版本(顶部),提示改为「向下滚动查看更早版本」。
  • 新增 /download 入口页;同步 1.22.0 下载、SEO/JSON-LD、移动端 320/360/390/768/横屏适配说明。
  • 联网说明改为「仅版本检测联网」,不再写零网络请求。

资产

opi-1.22.0-linux-amd64.deb · opi-1.22.0-linux-x86_64.rpm ·
opi-1.22.0-windows-x64-setup.exe · opi-1.22.0-android-universal.apk ·
opi-1.22.0-macos-universal.pkg · opi-1.22.0-ios-unsigned.ipa ·
opi-1.22.0-harmonyos-unsigned.hap

Apple / 鸿蒙为 unsigned 产物;Windows / iOS / 鸿蒙真机仍需验收。

v1.21.2:Windows 候选管道与 Shift 收尾修复

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 18:47

v1.21.2:Windows 候选管道与 Shift 收尾修复

  • 失活宿主不再抢回候选管道:写、读两条路径都在连接锁内复查 active,切到别的应用后候选窗/状态栏不再缺席;失活时读线程退避 250ms。
  • Shift 抬起统一清掉引擎里的 Single 残留(ShiftToggle=False 也认领抬起),不再出现下一个字母莫名大写;按住超过 300ms 不算轻按,Shift+方向/拖选不会误切中英。
  • 断连时清 caret 位置,跨应用不沿用旧坐标;候选条末项补上左右内边距,不再被窗口裁掉。
  • settings.ini 改原子替换,候选窗 1s 轮询不会读到半截文件导致皮肤/字号闪回默认;更新横幅按版本号记「已关闭」。
  • 其余与 v1.21.1 相同;各端版本号同步到 1.21.2(Android versionCode 76、鸿蒙 12102)。
  • 安装后需注销/重启一次,让 Explorer 与各输入宿主加载新的 TSF DLL。

v1.21.1

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 18:26

v1.21.1??indows ??????????caret ???

  • ??????????????????????????D:\swoft\opi?????? app image ????????\app\tsf_opi.dll??app\luna.opid??app\is-*.tmp??????????????PendingFileRenameOperations????????????????????? Inno ?????????????????scripts/windows/opi-code-pending.iss?????????????- ???????????????????????a????????????????????????????COM ???????????????????????????? TF_DEFAULT_SELECTION ?????????????????????????????????- ?????v1.21.0 ??????????????????????????????hift ??????????????????????????????????????????????????- ???????????? 1.21.1??ndroid versionCode 75?????12101????
    ?????????/??????????Explorer ??????????????? TSF DLL??

v1.21.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 18:03

v1.21.0??indows ???????????????????

  • ???????????????????????????????????????????SF caret + ?????? DPI ??????????????????????????- Shift ????????????????????????????????????Shift+???/Ctrl ??????????????????????????trl+' / Ctrl+\ / Shift+Space ????????- ?????????????????????/??????o???pango 10/12/14 ????????????????????12px??- ?????Windows ?????????????????????Shift ??????????????????????????????????????- ??????????????????????????????????????????????????????????????????? site/version.json????????JSON-LD????????https://opi.erik.xyz/#download??- ?????????????????????????opi.exe???????????opi\opi??SF DLL ???????????\app\tsf_opi.dll??- ???????????????????????1.21.0????
    ?????????/??????????Explorer ??????????????? TSF DLL??

v1.20.2

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 06:44

v1.20.2 — iOS 输入法内切换与符号库修复、Windows 升级/卸载清锁

iOS

  • 所有面板(含从设置进入的皮肤/键盘模式/关于子面板)的「‹ 返回」统一走
    returnToCurrentInputMode(),直接回到当前输入法当前选择的键面,不再进设置二级页、
    不切系统键盘。
  • 中/英切换(cycleMode)与简繁切换(toggleTraditional)只在当前输入法内换引擎/键面;
    唯一调用 advanceToNextInputMode() 的是每种键面左下角的 🌐。
  • 26 键原先最右的 🌐 移到左下,避免误触跳系统输入法;9/大9/14/26/笔画及数字层都有。
  • 符号面板补上「‹ 返回」表头,进入符号层后可回到当前模式键面(不再只能收键盘)。
  • 符号面板「符号库未就绪」修复:canRender 先问主字体,再用 CTFontCreateForString
    找实际回退字体(CJK 标点不在 SF 主字体里);整批都被过滤时退回不过滤,不再把整库藏掉。

Android

  • 修复抖音直播互动弹幕框 / 输入框无法唤起键盘:这类编辑器把 inputType 设为 TYPE_NULL,旧 onEvaluateInputViewShown() 判据因此恒 false。现在按 onStartInput / onFinishInput 生命周期显示,不看 inputType;无编辑器的弹框仍不显示。

Windows

  • 升级未替换旧 DLL(v1.20.1 装完仍只有英文的根因):Inno [Files] restartreplace
    在旧 tsf_opi.dll 被 Explorer 映射时只把新文件排到下次重启,ssPostInstall 的
    regsvr32 注册的仍是旧 DLL。现在 ssInstall 在文件复制前 unregister 并把旧 DLL
    改名到同卷 trash 目录,新 DLL 当场落盘并由新 DLL 注册。
  • 卸载残留:旧代码把锁定的 DLL 改名到固定 %TEMP% 名;第二次卸载目标已存在、
    TEMP 在别的盘时跨卷 MoveFile 失败,DLL 留在 {app},Inno 报
    "Some elements could not be removed"。现在目标名唯一(毫秒时间戳)、先校验同卷,
    优先 {commonappdata}\opi\trash;改名成功即可立即删除 {app},副本由
    RestartReplace 预约开机删除;下次安装/卸载先清 trash。改名也失败时才如实记录
    “目录保留到重启”,不重启电脑、不谎称清理完成。
  • CI 冒烟新增真实锁 DLL 复现:用 LoadLibrary holder 映射 tsf_opi.dll,再跑同一
    安装包,断言磁盘 DLL 的 SHA-256 回到包内版本;随后 holder 再次锁定,卸载并断言
    C:\opi-test、DLL 与注册表项全部消失。本次 run 已通过。

交付

  • iOS 仍只发一个自包含 unsigned IPA;macOS 仍只发一个自包含 .pkg。

资产

opi-1.20.2-linux-amd64.deb · opi-1.20.2-linux-x86_64.rpm ·
opi-1.20.2-windows-x64-setup.exe · opi-1.20.2-android-universal.apk ·
opi-1.20.2-macos-universal.pkg · opi-1.20.2-ios-unsigned.ipa ·
opi-1.20.2-harmonyos-unsigned.hap

Apple / 鸿蒙为 unsigned 产物;Windows / iOS / 鸿蒙真机仍需验收。

v1.20.1

Choose a tag to compare

@erikwang2013 erikwang2013 released this 21 Oct 00:16

v1.20.1 — iOS 候选体验补齐、Windows 安装修复、Apple 单包交付

iOS(按 Android 对齐)

  • 9 键左列输入中显示候选拼音读数(短→长、去重),点一行钉住该读音;
    C ABI 新增 opi_candidate_readings / opi_pin_reading(与 JNI 同源)。
  • 候选栏改为固定槽位、不再左右滑动/翻页;最右 ⌄ 打开整键盘平铺候选
    (4 行分页,左列读音,右列返回/⌫/重输/空格)。
  • 英文 26 键左列显示候选词,点词直接上屏;出现词列时键面自动让宽。
  • 输入框不再写 marked text/preedit,选词或确认后才 insertText。
  • 输入模式持久化,缺省 9 键;宿主 App 内容宽度改为响应式,横屏/大字号不撑出屏。
  • 交付只发一个自包含 unsigned IPA:宿主 App、键盘扩展、luna/trad/stroke/wubi86、
    rare_index.tsv、图标全在包内;xcframework/宿主 .app/临时 Payload 构建期清理。

macOS

  • 交付只发一个自包含 .pkg:内含完整 OpiInputMethod.app(通用 arm64+x86_64、
    Frameworks/libopi_ffi.dylib、全部词库/符号/表情/贴纸/图标);不再附 .app/.zip。
  • payload 校验逐项钉住 Frameworks 与 Resources,防止「空包也成功」或资源漏拷。

Windows

根因未在 CI 唯一复现:带图标的 1.20.0 提交在 Server Core 冒烟里 regsvr32 退出码 0、安装通过。本次修复的是已确认的多条静默失败链,而不是声称已锁定单一根因。

  • 修复 1.20.0 升级后「不显示状态栏、输入只有英文、切换键无反应」:RegisterProfile
    带图标失败时自动回退空图标重试;仅图标问题不再拖垮整个 profile 注册。
  • 升级安装的 unregister/register 移到 ssPostInstall 相邻执行,缩短机器上没有
    profile 的窗口。
  • 注册失败/降级步骤写 %ProgramData%\opi\tsf-register.log;交互安装时若 regsvr32
    失败或 HKLM CTF profile 缺失会弹窗说明,不再静默「安装成功」。
  • Server Core 冒烟新增断言:HKLM CTF 语言 profile 与 opi-statusbar Run 值安装后
    存在、卸载后消失;本次 CI 实测通过。
  • 安装后需注销/重启,并在「中文(简体)」键盘列表添加「小欧输入法」;状态栏只在
    切到小欧后显示(requireActive=isWindows()),英文/其他输入法下隐藏是预期行为。

版本与资产

opi-1.20.1-linux-amd64.deb · opi-1.20.1-linux-x86_64.rpm ·
opi-1.20.1-windows-x64-setup.exe · opi-1.20.1-android-universal.apk ·
opi-1.20.1-macos-universal.pkg · opi-1.20.1-ios-unsigned.ipa ·
opi-1.20.1-harmonyos-unsigned.hap

Apple / 鸿蒙为 unsigned 产物;Windows / iOS / 鸿蒙真机行为仍需验收。

v1.20.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 20 Oct 21:56

v1.20.0 — iOS 设置与面板修复、鸿蒙/ macOS 对齐、Windows 宠物图标

iOS(按 Android 对齐)

  • 工具条最前加入项目宠物;顶部槽位/候选栏保持候选占满、英文态保留隐藏「中」。
  • 输入模式页改为 3 列可滚动网格,返回箭头独占一行;键盘模式/皮肤/关于共用同一表头。
  • 单手模式只收窄键面,输入模式/键盘模式/皮肤/关于面板保持全宽,不再错乱。
  • 中文切英文后,模式键、工具条「中」、候选栏「中」统一恢复上次中文键盘。
  • 皮肤卡整卡可点、只刷新变更卡;面板/工具条做 320–430pt 与横屏适配。
  • 新增键盘内齿轮设置面板(常用/按键/五笔 86/外观/符号与表情/关于)与宿主 App
    启用/设置/隐私指引;无 App Group 时不伪造跨容器同步。
  • Apple CI 真编译通过;真机行为未验证。

鸿蒙(按 Android 对齐)

  • 工具条/候选栏共用槽位,新增平铺候选(4×4、短词 1 格长词 2 格)、22 类符号
    Swiper、生僻字逐级回退、12 皮肤、键盘模式、输入模式九项、表情/贴纸/搜索叠盘、
    设置持久化、opi_load_trad 与 trad.opid 随包、320–430vp 适配。
  • 仍缺 C ABI 无出口的 9 键读音列/钉读音、pending 缓冲提交、图片直插与浏览器直开;
    真机未验证。

macOS(按 Linux 对齐)

  • 新增悬浮状态栏(仅 opi 输入源激活时显示)、8 页设置(常用/按键/外观/状态栏/
    符号与表情/词库/五笔/关于)、表情/贴纸、宠物图标与自绘 26/9/14/笔画虚拟键盘。
  • ENPRO、Shift 轻按、IMKCandidates 皮肤/字号/宠物等平台不可达项按禁用/明确标注;
    Apple CI 真编译通过,运行期未验证。

Android

  • 皮肤/输入模式/键盘模式/关于面板返回箭头独立一行;候选态占满工具条,移除候选栏
    最右「收起键盘」;工具栏图标 40dp,适配 320dp 窄屏。

Windows

  • TSF profile 图标指向 opi.exe 宠物图标,任务栏输入指示器不再显示「简」;升级安装
    先注销旧 profile 再注册。
  • 安装向导使用项目宠物图;卸载锁定 DLL 改为改名移出 {app},不再请求重启。

资产

opi-1.20.0-linux-amd64.deb · opi-1.20.0-linux-x86_64.rpm ·
opi-1.20.0-windows-x64-setup.exe · opi-1.20.0-android-universal.apk ·
opi-1.20.0-macos-universal.pkg · opi-1.20.0-ios-unsigned.ipa ·
opi-1.20.0-harmonyos-unsigned.hap

Apple / 鸿蒙为 unsigned 产物;Windows / iOS / 鸿蒙真机行为仍需验收。

v1.19.0

Choose a tag to compare

@erikwang2013 erikwang2013 released this 20 Oct 15:42

v1.19.0 — 六端对齐、Windows 收口与站点改版

移动端

  • Android:工具条与候选栏回到同一槽位(候选栏替换工具条,英文空闲时显示工具条);
    英文模式隐藏「中」键与收起键盘键保留;从英文切回中文自动关闭 pro;表情分类热区放大;
    皮肤 / 输入模式 / 键盘模式 / 关于面板改为左上返回箭头。
  • iOS:顶部槽位、工具条、皮肤、键盘模式与关于页对齐 Android;rare_index.tsv 随
    键盘扩展打包;自有贴纸同时写入 PNG 与 GIF,并开启 RequestsOpenAccess(用户需手动允许
    「完全访问」,否则剪贴板写入会被系统拒绝)。仍为 unsigned IPA,CI 真编译但未真机验证。
  • 鸿蒙:补齐工具条(表情 / 皮肤 / 输入 / 键盘 / 关于 / 收起)、12 套皮肤、暗光 /
    长辈 / 单手 / 悬浮 / 游戏模式、22 类符号页、214 部首生僻字页、26 键中→繁→英循环、
    9/14/笔画繁简键与 ⇧ 长按锁定;完整词库与符号/生僻字索引随 HAP 打包。仍为 unsigned
    HAP;繁体引擎出口尚未接入,候选无平铺视图,设置不持久化,真机未验证。

桌面

  • Linux / Windows 设置:「关于」补主页、项目地址与博客地址;贴纸剪贴板增加
    image/png(GTK/Qt 应用可粘贴),保留 GIF 与自动 Ctrl+V。
  • Windows:词库随安装包分发;修复 EXE 安装后 Explorer/桌面白屏(不再杀 Explorer,
    改为 runasoriginaluser 启动);卸载先结束所有 opi.exe、清理 Run/锁文件并删除安装
    目录;状态栏随登录/安装自启;状态栏与设置通过 opi-control 补齐状态、动作、搜索与
    符号上屏;设置与词库改动通过 reload 即时生效;语言栏单击打开设置。
  • macOS:新增符号面板(22 类 / 分页 / 搜索)、输入法菜单(语言/标点/简繁/模式/
    全角/符号/设置)、设置窗(常用/按键/符号与表情/词库/关于)与引擎分页候选;CI 已真
    编译 unsigned pkg,真机未验证。

自有贴纸

  • Android / Linux / Windows / 鸿蒙统一 PNG(PixelMap)优先、GIF 兜底;iOS 同一份剪贴板同时提供 public.png 与 GIF:
    Android 的 commitContent 与剪贴板都先 PNG;桌面剪贴板同时提供 image/png、
    imageFlavor 与 image/gif;iOS 写入 public.png 与 GIF;鸿蒙先写 PNG PixelMap。
  • 平台边界如实保留:不支持图片的普通文本框仍无法显示;Android 以 [小欧·…] 文字标签
    兜底,iOS 需要用户手动粘贴,鸿蒙 / 移动端没有自动粘贴接口。

静态站点

  • 移除页面中的 opi.erik.xyz;https://erik.xyz 显示为「艾瑞可erik」;移除「全部版本」
    按钮。
  • 下载卡图标改为对应小欧形态,主下载按钮圆角收窄;打赏二维码点按后在页内弹框放大。
  • 桌面全部分节增加纯 CSS 3D 键帽/光环环境与卡片 3D 悬停;首屏加载显示 3D 小欧模块;
    首屏 three.js 降到 30 fps、DPR 1.25 并减少粒子。
  • 页脚增加 粤ICP备2020136226号-5,链接到 https://beian.miit.gov.cn。

质量与验证

  • 两轨英文专业模式对照测试同步打开两侧开关,修复 stale 断言。
  • CI:Rust fmt/test/clippy、MSRV、Android JVM 测试、桌面测试、fcitx5 编译/加载、
    安装脚本回归全部通过;Apple CI 真编译 macOS/iOS。
  • Windows EXE / MSI 构建通过;容器冒烟在 runner Docker 不可用时失败,未做真机验证。

本版资产

opi-1.19.0-linux-amd64.deb · opi-1.19.0-linux-x86_64.rpm ·
opi-1.19.0-windows-x64-setup.exe · opi-1.19.0-android-universal.apk ·
opi-1.19.0-macos-universal.pkg · opi-1.19.0-ios-unsigned.ipa ·
opi-1.19.0-harmonyos-unsigned.hap

Apple / 鸿蒙产物未签名;Windows / iOS / 鸿蒙仍待在真机验收。

2026-10-21 Windows 热修

  • 状态栏改为仅在切换到 opi 输入法后显示:TSF 未连接/控制面读不到状态时隐藏,避免安装完就出现一条点哪个键都报「连不上输入法」的条;切回 opi 后 1s 轮询自动出现。
  • 安装向导侧栏/小图改用项目宠物 desktop/icons/opi-pet-wizard.png。
  • 卸载不再使用 uninsrestartdelete:锁定在 Explorer 里的 tsf_opi.dll 先尝试改名移到 %TEMP%,安装目录立即删除,卸载过程不再请求重启电脑。极端情况下重命名失败会保留 DLL/目录,但不会重启。
  • Windows EXE 已用该修复重新构建并替换本 release 资产。

2026-10-21 移动端/桌面端对齐(平台资产已替换)

  • iOS:工具条最前加项目宠物;新增键盘内设置面板(常用/按键/外观/符号与表情/关于可用子集)与宿主 App 设置指引;输入模式/键盘模式页面表头改为返回箭头独立一行、面板在单手模式保持全宽;皮肤卡整卡可点;中文→英文后可切回上次中文键盘;工具栏/候选栏做 320–430pt 适配;全部 Swift 由 Apple CI 真编译。
  • 鸿蒙:工具条、皮肤、键盘模式、符号/生僻字、表情/贴纸、平铺候选、设置持久化、屏幕适配继续对齐 Android;HAP 重新构建(含完整词库)。
  • macOS:按 Linux 实现悬浮状态栏(仅在 opi 输入源激活时显示)、8 页设置、表情/贴纸、宠物图标与自绘虚拟键盘;Apple CI 真编译通过。
  • Android:皮肤/输入模式/键盘模式/关于面板返回箭头独立一行;候选态占满工具条,移除候选栏最右「收起键盘」;工具栏图标做 320dp 适配。
  • Windows:RegisterProfile 图标指向 opi.exe 宠物图标,任务栏输入指示器不再显示「简」;升级安装先注销旧 profile 再注册。
  • 以上 iOS/macOS/鸿蒙/Android/Windows 资产已用 2026-10-21 构建替换本 release 同名资产(版本号仍 1.19.0)。