引言
我使用的设备是Dell 5290二合一,由于起初贪小便宜买了日文键盘,所以各种系统都需要更改按键布局才能正常使用,就比如为了方便使用archlinux,我给aur上传了一个包,详见
前些天用的fedora+niri,十分美丽但是使用的dms一直更新,出于稳定(还有使用手写笔的需求)于是更换成了fydeos(目前使用的是v22版本)
摆在我面前的现在有俩个问题
- fydeos(或者说chromeos)自带的linux子系统是debian 12(bookworm),并不太适配我使用的软件,一是libmujs和libgumbo版本不合适,二是使用flatpak版本打不开pdf文件(会导致闪退,报错为The Wayland connection broke. Did the Wayland compositor die)。
- 键盘适配问题,网上似乎并没有相关讨论,除了最近我看到的这个帖子,使用官方原版系统只能选择字母数字日语键盘才能使按键与符号对应。
更换linux子系统
这个过程其实一波三折,这个步骤参考了社区和官方的方案,具体步骤在此省略。
但我要提一嘴,由于v22(chromeos144)移除了不少和crostini相关的flags,所以可能有不少过时内容,可以交叉参考,比如安装容器建议使用
lxc launch ubuntu:noble ubuntu -c security.privileged=true先后尝试了ubuntu>archlinux>ubuntu
为什么呢?因为一开始换了ubuntu确实可以正常使用speedynote打开pdf了,但我更倾向于安装arch(因为有aur,且一般不会出现依赖问题),所以又删了换arch,但是问题又出现了,speedynote闪退,报错为The Wayland connection broke. Did the Wayland compositor die
于是又装回了ubuntu,问题一暂时解决了
键盘布局问题
这个也是出于对chromeos是基于linux的考量,因为正如上文提到的我在aur提交的那个包且字母数字日语键盘能正常输入考虑,我觉得是有可能的🤔
我的思路如下
- 是不是修改输入法会好呢?想到了fydeos开源的真文韵输入法,于是下载了一份到本地,看到manifest.json中的input_components部分有一个
"layouts":["us"]于是猜测修改这个可以指定按键布局,但里面的值用什么呢?
于是在互联网上遨游了一下,发现有一个人hickford提供了一份表,里面提到英语使用us,那参考这个,我的设备应该是改成
"layouts":["jp(OADG109A)"]于是使用chrome自带的加载未打包的拓展程序功能(需要开启浏览器的开发者模式),发现根本没有生效(尽管确实可以从拓展管理那里进入网页后台,但在系统设置中无法添加这个修改后的输入法)
在此暂时陷入了停滞,不知道如何解决
但这时候突然想起来,linux系统的配置应该都是有文件的,而输入法这种更可能有一个配置文件,于是想到了拓展程序唯一的那个id(一开始是想着搜rime这种关键词的,但毫无所获,尤其是不少分区不能修改),以沉浸式翻译为例

所以在crosh的shell中,我搜索了一下这个id,在排除了几个文件夹以后,确定了插件文件安装在
/home/chronos/user/Extensions
在一翻搜索下,可以知道,系统自带的真文韵输入法插件id是nfglebjgiflmmcdddkbcbgmdkomlfcpa(至少在我这里是)
于是想着,修改这个的manifest.json文件应该就可以了吧?(显然事情没有那么简单)

哪怕重启过后,符号输出依然与键盘不对应
于是我想,难道是系统自带的插件不能修改吗?所以这里我先尝试了禁用根文件系统验证,也就是
/usr/sbin/crossystem_mode-switch.sh disable-rootfs-verification但依然不行(所以后来我想这一步可能不必要?)
然后我想着,难道只能修改第三方插件吗?突然想起来真文韵输入法开源仓库有一个谷歌的插件商店地址(这个页面需要遨游互联网一下,不过这个可能不必要)
于是下载后按照原来的方法修改了,依然不行,所以问题究竟出现在哪?我怀疑是jp(OADG109A) 这个值有问题,于是我想去找系统自带的字母数字日语键盘使用的布局值,不过很遗憾,没找到
于是继续畅游互联网,在谷歌拓展商店搜索keyboard layout 企图寻找一个前人做过的相似的尝试,于是看到了
似乎第一个有点关系,但我看描述,应该不适合我,所以点了第二个
发现这个就是之前那位hickford制作的插件

试着安装了一下(无法遨游互联网的也许可以克隆原来那个项目,再以开发者模式加载),确实添加了不少输入方式(包括了JapaneseOADG109A)
但似乎和我原先预想的不太一样,这似乎并不能修改输入法的布局
但是这里有一个小插曲,当时我在图书馆,快17点了,图书馆要关了,我就匆匆忙忙合上电脑收拾回来了,众所不周知的是,我的这台电脑并不能正常休眠(至少在linux上这样,要么耗电极快,要么需要重新开机,不过在黑苹果上却没问题)
回到家,一打开电脑,发现需要重新开机了,先是修改了一下休眠模式(参考fydeos官方的教程,以期望能够正常休眠),结果突然发现,输入法的字符怎么和键盘对应了?
在这里我并不知道缘由,我估计是hickford插件的作用,但是我卸载了从谷歌拓展商店下载的插件(包括XKB keyboard layouts for Chrome OS和真文韵输入法)也不影响正常输入了,或许是插件起到了一个激活方案的作用1?
不得而知了,不过,至少解决了问题二。
结语
也算是解决了chromeos按键布局问题吧?希望对看到这里的人有所帮助,后面可能还会补充一个解决linux子系统ubuntu软件中文输入的问题,不过得看有没有必要了。
Footnotes
-
也就是让jp(OADG109A)这个值生效 ↩