在线编辑器
提供一个可在电脑浏览器中使用的在线编辑器(应用内置了 LAN 编辑桥,页面由本 fork 自己的站点提供):
启动方式
在手机上打开:键盘 → 键盘布局自定义 → 在线编辑器(开关式入口)。开启后弹窗给出局域网地址,浏览器访问该地址即可编辑;同一开关可停止服务。
它适合在更大的屏幕上修改配置,再通过二维码导入到手机端。
可编辑内容
- 键盘布局
- Popup 预设
- 主题
- 图标主题
布局预览与按键编辑
新建按键或将按键类型改为「空白占位键(PlaceholderKey)」时,主、副文字会清空,并默认勾选「完全透明」。它只占据布局空间;编辑区仍用占位标记方便选中。宽度权重和「此键后分体」断点会保留。已有占位键的自定义文字、透明设置不会被强制清除。
预览中的彩色圆点是编辑提示,不会添加到导出的布局:
- 蓝点:长按动作。
- 绿点:点击宏。
- 实心紫点:向上或向下划动动作。
- 空心紫点:旧版划动动作。
预览工具栏的「显示提示」同时控制圆点、划动提示文字和图例。布局切换键(LayoutSwitchKey)的主文字使用按键自身或主题指定的文字颜色;设置合成态覆盖不会改变普通预览的主文字颜色。纵向辅助选择栏支持每个按键的行高百分比,打开并保存按键会保留原有比例。
勾选预览工具栏的「合成中」,主键和辅助栏会显示已配置的合成态覆盖:文字、图标和动作提示切换为覆盖内容,按键位置和宽度保持原排列。颜色默认沿用基础键;覆盖中启用「独立按键颜色」时使用覆盖配色。取消勾选恢复普通状态。这个开关只影响预览,不修改布局 JSON,也不会控制手机上的实际合成状态。
辅助选择栏由所属子布局的普通与分体排列共用,在任一排列中修改都会作用于另一排列;键盘高度等排列专用设置仍各自保存。辅助栏在完整预览画布内分配宽度,不会缩窄整块键盘。分体预览中,左、右侧栏的百分比按扣除中缝后的宽度计算,主键也采用同一基准。例如辅助栏为 15%、中缝为 20% 时,侧栏占键盘总宽的 12%。
编辑器保留文件中的方案 ID 或名称键,不自动重命名;仅有分体排列的布局也可以选择和编辑。个人布局通过「导入 JSON」载入。
text_editor 使用专用预览:上方是光标触控板,底部是文本编辑按钮栏。底栏总高按 App 的 46 dp 显示;配置多行时,各行均分这一高度,按钮宽度按 App 的权重规则分配。点击底部按钮仍可编辑对应按键。空布局显示 App 默认六个按钮作为参考,不会把这些按钮写入 JSON。
文本编辑面板使用主题的普通/辅助按钮颜色和边框设置,不使用普通键盘的行高、间距、合成态覆盖或分体排列,对应预览选项会停用。连接 IME 后按手机返回的尺寸显示;未连接时使用默认设备比例。当前预览采用 App 默认的触控板提示文字和编辑按钮圆角;手机端自定义这两项设置尚未由编辑桥传给网页。
撤销与浏览器草稿
顶部的撤销、重做按钮记录已应用的修改;在文本输入框外也可使用 Ctrl+Z、Ctrl+Y(或 Ctrl+Shift+Z)。主题圆角、间距、边框等配置和图标主题缩略图随文档一同撤销、恢复。
草稿保存在当前浏览器、当前站点下,重新打开页面会恢复;连接 IME 时,读取成功后以 IME 数据为准。背景图片字节保存在浏览器的 IndexedDB 中,单张上限 20 MB,当前文档与撤销历史引用的图片合计上限 64 MB。导入图片后,请等状态显示「浏览器草稿已保存」再关闭页面。空间不足或浏览器禁止存储时,页面会提示失败;请及时导出布局、主题或图标主题文件。
清除站点数据会删除草稿。旧版草稿若只保存了图片路径、未保存图片字节,需要重新导入背景图片。浏览器草稿适合临时恢复,长期保留请导出文件。
和手机端互导
在线编辑器可以生成二维码,在手机端对应编辑器中扫码导入;也可以反过来:先在手机端导出二维码,再在在线编辑器中导入继续编辑。
安全提示(务必阅读)
仅在可信网络中短时开启
该功能会在手机上启动本地 HTTP 服务供浏览器编辑,当前版本不适合在不可信网络中使用:
- 仅在可信的个人 Wi-Fi 或离线热点中短时开启;
- 不要在公司、学校、酒店、商场等共享网络中开启;
- 用完后回到该入口再次点击,在弹窗中停止服务;
- 不要把编辑器 URL 发给他人;
- 只需手机内编辑时,优先使用内置编辑器。
本版的加固
- 服务改用有界线程池,并发连接数上限 8、请求队列上限 16,拒绝超限连接——修复旧实现无界线程可被局域网内连接耗尽进程资源的问题;
- 请求体上限 4 MB(承载布局 / 主题 JSON 足够,防御异常请求);
- 修复了局域网无法访问的线程池饥饿回归;
- 编辑器页面由本 fork 的 GitHub Pages 提供(包含布局编辑的分叉改进:NumPadKey / MiniSpaceKey 编辑、LayoutSwitchKey 切换目标等)。