在 Linux 上打字,像微信输入法一样顺手。
一个 fcitx5 拼音输入法:长句一次打完、打一半就有词、按错键也能认出来,越用越懂你。
安装 · 使用 · 设置 · 更多文档 · 常见问题 · 工作原理 · 参与开发
wowtype-intro.mp4 |
wowtype-v0.3.12.mp4 |
| 介绍视频 | v0.3.12:互译、语音输入、macOS 版、日期时间、候选更准…… |
候选横排,和微信输入法一样:整句只留几个,后面是词,最后是单字
- 整句输入:
xiangquzijieshangban直接出「想去字节上班」;后面跟着句子的前半截,可以先上屏一段,剩下的拼音接着改。 - 半成品也有词:
zhongg就有「中国」,不用打全。打全了的拼音正好是个词时,它一定排第一。 - 按错键能认出来:按成相邻键、两个键按反、多按或漏按一个键(
zhognguo→ 中国)。本来就打对的输入不受影响。 - 越用越懂你:记住你选过的词和常连着用的词(选过一次「我们再讨论」,下次就不会出「我们在讨论」),30 天不用会慢慢淡掉。
- 简拼、省略韵母、中英混打:
bjdx→ 北京大学;有的音节只打声母也行,kyi→ 可以、yongzwen→ 用中文;zh/ch/sh 可以当一个声母,zhch、zhchi→ 支持;github→ GitHub。 - 候选横排,和微信输入法一样:整句只留几个,后面是词,最后是单字。
- 语音输入:按住右
Alt说话,松开就上屏;也可以点一下右Alt说,说完停一下自动结束。用微信输入法的离线识别模型,在本机识别,不上传录音。 - Emoji:打「开心」「点赞」「生日快乐」时,第三个候选就是对应的 emoji;按
Super+.打开表情面板,打拼音或英文搜 emoji 和符号(xiao→ 😂、pizza→ 🍕、youjiantou→ →)。 - 互译:单按
Shift切到「译」,照常打中文,停一下就翻成英文(或日、韩、法等 13 种语言),回车上屏;打外文就翻成中文。翻译服务用你自己填的 OpenAI 格式接口(DeepSeek、通义千问、Ollama……),也可以下载腾讯混元的 HY-MT 翻译模型离线翻。 - 日期时间、计算器:打
riqi(rq)、shijian(sj)、xingqi,首选后面就是今天的日期、现在的时间(2026年11月10日、2026-11-10、15:52……);v1+2*3直接出7;只打一个数(v12345.67)出大写金额「壹万贰仟叁佰肆拾伍元陆角柒分」和「一万二千三百四十五点六七」。 - v + 空格工具栏:只打一个
v再按空格,选剪贴板历史(默认关,最近 20 条,只在内存里)、常用语(自定义词)、符号、表情。 - 中英文之间自动加空格(默认关):
你好Linux→你好 Linux、第5章→第 5 章,字母和数字分别开关。 - 繁体、模糊音、双拼:可切繁体输出;模糊音分 12 组单独开(z=zh、n=l、f=h、r=l、an=ang、un=ong……);双拼支持自然码、小鹤、微软、搜狗、智能 ABC、紫光、拼音加加,双拼也有整句、句首词和分段选词,编辑区显示全拼。
- 图形设置界面:候选排列、模糊音、语音键都在「WowType 设置」里点一下就改,马上生效;还能加自定义词(人名、公司名、常用的长句、邮箱),加进去的词排第一,简拼也能打;编码可以是
mail这类字母,词里能换行,可以导入导出。 - 快、全在本地:89 万词的词库,按一个键一般几毫秒内出候选;不联网,输入内容不离开你的电脑(语音模型在设置里下载一次;互译要联网,只在切到「译」时把那句话发给你填的服务)。
|
长句一口气打完 还能只上屏前半截「想去字节」,剩下的接着选 |
按错顺序,没关系 weixni 照样是「微信」
|
|
全简拼混打,也没问题 wanqky → 完全可以
|
中英混打,不用切换 wechat → WeChat,大小写按词表来
|
|
打着字,顺手就有表情 第三个候选是「开心😊」,选了上屏「今天好开心😊」 |
按住右 Alt 说话 离线识别,录音不上传 |
- Linux x86_64 或 arm64(aarch64),输入法框架 fcitx5 5.1 或更新。Arch 的安装包只有 x86_64
- 有现成安装包的发行版:Ubuntu 24.04 / 26.04、Debian 13(deb)、Arch Linux 及 EndeavourOS / Garuda / CachyOS(pkg.tar.zst)、Fedora(rpm)、NixOS(flake)。其他发行版请从源码构建
- Ubuntu 22.04 自带的 fcitx5 是 5.0,不支持
- macOS 12 或更新(Apple 芯片和 Intel 都行),见下面的 macOS
Ubuntu 24.04 / 26.04、Debian 13、Arch Linux(及衍生版)、Fedora、macOS 上,在终端里运行:
curl -fsSL https://raw.githubusercontent.com/Gloridust/WowType/main/install.sh | bash在 Linux 上它会(macOS 上见下面):
- 下载和你系统对应的最新安装包(词库已经在包里,约 29 MB),按
SHA256SUMS校验 - 用系统的包管理器(
apt-get、pacman、dnf)装上,顺带装好 fcitx5 和设置界面要用的 GTK 4 / libadwaita。Arch 不会替你整机升级,提示依赖不满足时先sudo pacman -Syu - 输入法框架还不是 fcitx5(Ubuntu 默认是 IBus)时,问你要不要用
im-config切过去 - 把 WowType 加进 fcitx5 的输入法列表;fcitx5 正在运行的话会先重启它一次
装完按提示做:切换了输入法框架的话注销并重新登录,然后按 Ctrl+Space 切到 WowType,打 nihao 试试。
以后再跑一遍同样的命令就是升级(设置界面里也会提醒有新版本)。
想先看看脚本做了什么:install.sh,或者
bash install.sh --print-plan只看会装哪个包、不动系统。 不想让它改输入法框架或重启 fcitx5,可以加环境变量,例如curl -fsSL … | WOWTYPE_NO_IM_CONFIG=1 WOWTYPE_NO_RESTART=1 bash。GNOME(Ubuntu 默认桌面)在 Wayland 下,建议再装 GNOME Shell 扩展 Input Method Panel, 活动概览的搜索框等地方才能显示候选框。
8000
macOS 12 或更新,Apple 芯片和 Intel 都行。
打开「终端」(启动台里搜「终端」,或按 ⌘空格 输入 Terminal),粘贴下面这行,回车:
curl -fsSL https://raw.githubusercontent.com/Gloridust/WowType/main/install.sh | bash它会下载最新的 WowType-<版本>-macos.pkg,按 SHA256SUMS 校验,然后只装给你自己(装到 ~/Library/Input Methods),
不要管理员密码,也不用到「隐私与安全性」里放行。装完自动加进输入法并切到 WowType,打 nihao 试试。
以后再跑一遍同样的命令就是升级。
不想用终端的话,到 Releases 下载 WowType-<版本>-macos.pkg,双击安装。
安装包没有 Apple 开发者签名,第一次打开时系统会说「无法验证」:点「完成」,打开「系统设置 → 隐私与安全性」,
往下找到 WowType 那一条,点「仍要打开」,输入开机密码后安装器就会打开。之后升级还是同样的步骤。
- 菜单栏里没出现 WowType:「系统设置 → 键盘 → 输入法 → 编辑」,点左下角
+,在「简体中文」里添加 WowType; 还是没有就注销重新登录一次 - 设置在菜单栏的输入法菜单里(切到 WowType 后点菜单栏的输入法图标),设置文件是
~/Library/Application Support/WowType/wowtype.conf,见 docs/CONFIG.md - 卸载:菜单栏的输入法里先换成别的输入法,在访达里按
⇧⌘G打开~/Library/Input Methods,把 WowType 拖到废纸篓, 再到「系统设置 → 键盘 → 输入法」里把它移除
Ubuntu 默认用的是 IBus。先装好 fcitx5 并设为默认输入法框架(已经在用 fcitx5 的跳过这步):
sudo apt install fcitx5 fcitx5-config-qt \
fcitx5-frontend-gtk3 fcitx5-frontend-gtk4 fcitx5-frontend-qt5
im-config -n fcitx5然后注销并重新登录。登录后右上角托盘里应该有一个键盘图标。
到 Releases 页面下载和你系统对应的那一个文件
wowtype_<版本>_<发行版>_<架构>.deb(发行版是 ubuntu24.04、ubuntu26.04、debian13,架构是 amd64 或 arm64),词库已经包含在里面。
不知道自己是哪个发行版、哪种架构:
. /etc/os-release && echo "$ID$VERSION_ID" # 例如 ubuntu24.04
dpkg --print-architecture # amd64 或 arm64在下载目录里安装:
sudo apt install ./wowtype_*.debapt 会顺带装上设置界面要用的 GTK 4 和 libadwaita(python3-gi、gir1.2-gtk-4.0、gir1.2-adw-1)。
加了 --no-install-recommends 的话不会装,打字不受影响,只是打不开设置界面。
0.3.3 及以前的版本,词库是单独的
wowtype-data-rime-ice包。装新版时 apt 会自动把它删掉(文件由新包接管),不用管它。
到 Releases 下载 wowtype-<版本>-1.fc<Fedora 版本>.<架构>.rpm(架构是 x86_64 或 aarch64,词库已经在包里),然后:
sudo dnf install ./wowtype-*.rpm
wowtype-config --add-to-group # 把 WowType 加进 fcitx5 的输入法列表dnf 会顺带装上 fcitx5 和设置界面要用的 PyGObject、GTK 4、libadwaita。
还没在用 fcitx5 的话,先 sudo dnf install fcitx5 fcitx5-configtool fcitx5-gtk fcitx5-qt fcitx5-autostart 并重新登录。
仓库根目录有 flake.nix。在 NixOS 的 flake 配置里加上输入,再把 WowType 加进 fcitx5 的插件:
# flake.nix
inputs.wowtype = {
url = "github:Gloridust/WowType/release"; # 跟正式版;想锁某一版写 github:Gloridust/WowType/v0.3.10
inputs.nixpkgs.follows = "nixpkgs"; # 和系统用同一份 fcitx5
};
# configuration.nix(通过 specialArgs 把 inputs 传进来)
i18n.inputMethod = {
enable = true;
type = "fcitx5";
fcitx5.addons = [ inputs.wowtype.packages.${pkgs.stdenv.hostPlatform.system}.default ];
};nixos-rebuild switch 后重新登录,运行 wowtype-config --add-to-group(或在 Fcitx 5 配置里添加 WowType)。
也提供了 overlay:nixpkgs.overlays = [ inputs.wowtype.overlays.default ]; 之后用 pkgs.wowtype。
home-manager 的 i18n.inputMethod.fcitx5.addons 用法相同。
支持 x86_64 和 aarch64;升级:nix flake update wowtype 后再 nixos-rebuild switch。
其他发行版,或者想用最新代码:依赖、编译、词库生成、排障都在 docs/INSTALL.md。
- 重启 fcitx5:
wowtype-config --restart-fcitx(或者注销再登录)。KDE Plasma Wayland 下不要用fcitx5 -r -d:新起来的 fcitx5 拿不到 KWin 给的输入法连接,之后新打开的程序里打不了字 - 打开 Fcitx 5 配置(托盘图标右键 → 配置,或运行
fcitx5-configtool) - 在右边「可用输入法」里取消勾选「仅显示当前语言」,搜索
WowType,点 ← 加到左边 - 关掉配置窗口,按
Ctrl+Space切换到 WowType,打nihao试试
也可以从应用菜单打开 WowType 设置:「常规」页第一行会显示 WowType 有没有在输入法列表里,没有的话点「添加」就行。
重要:重启 fcitx5 以后,Chrome、VS Code、Slack、微信等 Chromium / Electron 程序要彻底退出再打开, 否则在它们里面打不了中文。终端、GTK、Qt 程序会自动重新连上。
wowtype-check --lexicon /usr/share/wowtype/lexicon.tsv # 源码安装的用 ~/.local/share/wowtype/lexicon.tsv
wowtype-show --lexicon /usr/share/wowtype/lexicon.tsv nihao
# nihao: 1.你好词 2.拟好词 ...wowtype-show 和插件用的是同一个引擎、同样的配置,打出来的候选应该和输入法里一样。
更多输入示例见 docs/USAGE.md。
| 按键 | 作用 |
|---|---|
| 空格 | 上屏第一个(或光标所在的)候选 |
1–9 |
上屏对应的候选 |
← → |
在候选之间移动光标 |
↓ |
展开候选面板(6 列,像微信输入法),在面板里用方向键挪、空格或 1–6 选;第一行按 ↑ 或 Esc 收起 |
↑、- =、PgUp PgDn |
翻页;设置「常规 → 候选词 → 翻页键」还能打开 [ ]、, .、Shift+Tab Tab(翻到头时这些键不当标点上屏)。fcitx5 全局设置里配的翻页、移动候选热键也认 |
| 回车 | 把打的字母原样上屏 |
Esc |
清空正在打的内容 |
| 退格 | 选过词时先撤销最后一次选词(拼音回到编辑区);没有选词时删一个字母 |
Ctrl+Delete |
忘掉光标所在的候选:学错的词(比如一段一段选出来、选一次就记住的词)从用户词库里删掉,选词记录也清掉;词库里本来就有的词回到原来的位置。正在打的拼音不动,候选马上刷新。Ctrl+退格、Shift+Delete 也行(Mac 上按 Control+Delete)。设置里加的自定义词不受影响 |
' |
分隔音节,比如 xi'an → 西安 |
[ ] |
以词定字:只上屏光标处候选的第一个、最后一个字(nihao [ → 你);设置里能关,翻页键设成 [ ] 时是翻页 |
Super + . |
表情面板:打拼音或英文搜 emoji 和符号,见下 |
单按 Shift |
切到英文(字母、半角标点直接上屏),再按一下回中文;打了一半的字母原样上屏。左右 Shift 都行,设置里能改成只用一边或关掉。设置好互译后是 中 → 英 → 译 → 中。要是按 Shift 只在 WowType 和 en 之间来回,见下面 |
右 Alt |
语音输入,见下 |
v + 空格 |
工具栏:剪贴板历史、常用语、符号、表情(数字键选,退格返回,Esc 关闭),见 docs/CONFIG.md |
编辑区自动分音节:打 hengxiang 显示 heng'xiang,按第一个候选的切法分;打了一半、简拼、按错键也分(zhong'g、b'j'd'x)。
显示的还是你打的字母,回车上屏时不带隔音符。英文候选在第一位时不分。
长句可以分段上屏:打完一整句,候选里除了整句,还有它的前半截(比如「我今天晚上要」)。 选了前半截就只上屏这一段,剩下的拼音留着继续选。
fcitx5 默认用左 Shift「临时切换输入法」(切到 en 键盘),这时左 Shift 到不了 WowType:按它只在 WowType 和 en 之间来回,切不到英文和「译」。
右 Shift 不受影响。想左 Shift 也给 WowType 用,打开 WowType 设置「输入」页的 Shift 只给 WowType 用(只在有冲突时出现):
它从 fcitx5 的快捷键里去掉单按的 Shift,之后切别的输入法用 Ctrl + 空格;关掉就原样还给 fcitx5。
fcitx5 的配置文件写不了时(比如 NixOS 用 Home Manager 配 fcitx5,~/.config/fcitx5 是只读的),开关下面会提示「只在这次有效」,这时要在 Nix 配置里写,见 NixOS 安装说明。
WowType 在会话总线上登记了 org.wowtype.Input,外部命令可以直接切 WowType 自己的中 / 英 / 译,不用切到别的输入法(切到 en 键盘的话语音输入就用不了了):
busctl --user call org.wowtype.Input /org/wowtype/Input org.wowtype.Input1 SetMode s en模式可以是 zh、en、translate(配置了互译时)、toggle(中英之间切),返回切完以后的模式;查现在的模式用 Mode。
neovim 里退出插入模式切英文、回到插入模式切回原来的模式:
local mode = "zh"
local function wowtype(args) return vim.fn.system("busctl --user call org.wowtype.Input /org/wowtype/Input org.wowtype.Input1 " .. args) end
vim.api.nvim_create_autocmd("InsertLeave", { callback = function()
mode = wowtype("Mode"):match('"(%a+)"') or mode
wowtype("SetMode s en")
end })
vim.api.nvim_create_autocmd("InsertEnter", { callback = function() wowtype("SetMode s " .. mode) end })切的是最近用过的输入框(vim 所在的终端),不弹「中 / 英」提示。
中文标点自动转全角(, → ,? → ?,^ → ……,_ → ——,$ → ¥,` → ·,{ } → 「」),引号左右交替(" → “ ”,' → ‘ ’),数字后面的符号保持英文(3.14、20:22、3,000、50%);设置「输入 → 标点样式」可以改成半角(英文标点)。/、+、=、@、#、%、&、* 这类符号原样上屏;打拼音途中按它们,先上屏当前候选。
打字时推荐:打的词有对应的 emoji 时,它排在第三个候选(kaixin → 开心、开行、😊),按 3 只上屏 emoji。
一句话以这样的词结尾时,推荐的是「开心😊」这种,选了上屏整句再加 emoji(jintianhaokaixin → 今天好开心😊)。
只看两个字以上的词,「是」「好」这种单字不推荐。例外是数字字,后面跟按键 emoji,和手机输入法一样:ba → 把、吧、八、8️⃣,shi 里的「十」后面是 🔟。不想要可以在设置里关掉。
表情面板:按 Super + .(Windows 键 + 句号,和 Windows 上一样)打开,再按一次或 Esc 关闭。
- 没打字时列出全部 emoji,最近用过的排最前
- 打拼音或英文搜索:
xiao→ 😄😂…,gou→ 🐶,pizza→ 🍕,heart→ ❤️;符号名也能搜:gou→ ✓、youjiantou→ →、juhao→ 。 - 方向键挑,空格、回车或
1–6上屏,退格删搜索词 - 打了一半的拼音再按快捷键,直接拿它来搜(
gou+Super+.)
快捷键可以在设置里换成 Ctrl + ;、Ctrl + Shift + E,或者不用。
在 WowType 打字的地方(没在打拼音时):
- 按住右
Alt说话,松开:说的话上屏。 - 点一下右
Alt:开始听,说完停 1.5 秒自动上屏,或者再点一下右Alt马上结束。 - 说话时编辑区里是正在识别的字;按
Esc不要这次说的话;按别的键也会放弃这次说的话,那个键照常打字。 - GNOME 上光标下面会弹出一条语音浮条:绿色话筒(外圈跟着音量呼吸)、「正在听… 离线」和一排跟着你音量跳动的竖条, 光标右边也会裂成几根跳动的绿色竖条;松开后显示「识别完成」再淡出。浮条是 WowType 的 GNOME 扩展画的 (和绿色主题是同一个扩展,见主题),装好或升级后要注销重新登录一次才会出现。 其他桌面(或关掉了绿色主题)在候选框里显示 🎙 和用字符画的波形。
识别用的是微信输入法的离线语音模型,在你的电脑上算,录音不上传。模型不随 WowType 分发,
要先在 WowType 设置的「语音」页点「下载」:从腾讯的服务器下载约 100MB(能取消,断了再点接着下),
解开后约 130MB,存在 ~/.local/share/wowtype/wtlocal/。下载好以后语音输入自动打开;没下载模型时语音输入的开关是灰的,
按右 Alt 只会提示你去设置里下载,不会自己下载。同一页可以删掉模型(空出空间,语音输入随之关闭)。
模型载入后常驻内存,约 150MB。
不方便开设置界面(比如远程、NixOS 配置脚本)时用命令行:wowtype-config --install-voice-model 下载并打开语音输入
(也接受已经下载好的语音包路径),wowtype-config --remove-voice-model 删掉并关闭。
换语音键(右 Ctrl、菜单键、F8–F10)或者关掉语音,在 WowType 设置的「语音」页里改。
在 WowType 设置的「翻译」页里选个服务商(或者填任何 OpenAI 格式的接口)、填 Key 和模型,打开「互译」。
之后单按 Shift 就在 中 → 英 → 译 之间切换:
- 和微信输入法的「中英互译」一样:切到「译」照常打中文,打的字攒在候选框里,不上屏;停 0.5 秒(打了句号就立刻)开始翻译,译文边翻边写进输入框。
回车或空格上屏译文,还没翻完就等翻好了自动上屏;Shift+回车上屏原文;Esc清空。- 打的是外文就翻成中文。设置里能选「正式语气」(写邮件用)。
- 打的字会发给你填的服务,WowType 自己不经手。密码框里不翻译。Key 单独存在只有你能读的文件里。
翻译要等服务回话,挑又小又快的模型(各家的 mini、flash、turbo 版);设置里的「测试连接」会显示一次要多久。详见 docs/CONFIG.md。
不想联网,可以用「翻译」页默认的「本地模型(离线)」:点「下载」获取 HY-MT 1.5 1.8B(1.13 GB),跑模型用的 llama-server 系统里没有时会一起下载(约 22 MB),不用另外装东西。 第一次翻译时才载入,闲置 5 分钟释放内存。模型是腾讯混元社区许可,不适用于欧盟、英国和韩国,WowType 不分发它,见 本地模型。
从应用菜单打开 WowType 设置(或者运行 wowtype-config)。改完立刻生效,不用重启 fcitx5。
|
输入 全拼还是双拼(7 种方案)、Shift 切英文、模糊音、纠错、繁体 |
自定义词 填上词,拼音自动查好 |
|
语音 开关、换语音键 |
更新 有新版本发通知,点一下装好 |
| 页面 | 能改什么 |
|---|---|
| 常规 | 候选排列(横排 / 竖排)、每页个数(3–9)、WowType 绿色主题(见主题)、候选字号。还会检查 WowType 有没有加进 fcitx5 的输入法列表,没有的话一键添加;底下的「帮助」能导出日志 |
| 输入 | 词库(默认雾凇,可下载切换到万象)、拼音输入还是双拼输入、双拼方案(自然码、小鹤、微软、搜狗、智能 ABC、紫光、拼音加加)、单按哪个 Shift 切中英文(和 fcitx5 抢 Shift 时提示并能一键让出)、模糊音(12 组分别开关:z=zh、c=ch、s=sh、n=l、f=h、r=l、an=ang、en=eng、in=ing、ian=iang、uan=uang、un=ong)、按错键自动纠正、繁体字、日期时间、计算器、v + 空格工具栏、剪贴板历史、中英文之间自动加空格、分号引号选第 2/3 个候选 |
| 表情 | 打字时推荐 emoji、表情面板快捷键 |
| 语音 | 下载 / 删除识别模型(有进度、能取消);下载好模型后才能打开语音输入;语音键(右 Alt / 右 Ctrl / 菜单键 / F8–F10)、识别结果同时复制到剪贴板 |
| 翻译 | 互译开关、翻成哪种语言、正式语气;用什么翻译:本地模型(默认,下载、闲置释放)或自定义翻译服务(服务商、地址、Key、模型、测试连接) |
| 自定义词 | 人名、公司名、常用的长句。填上词,拼音自动查好(多音字记得检查一下);编码也可以是 mail 这类字母,词里写 \n 换行;可以搜索、导入导出,删错了能撤销 |
| 更新 | 检查新版本、看更新内容、下载并安装(见更新),自动检查的开关 |
各设置项对应的配置文件键名、环境变量、数据文件位置,见 docs/CONFIG.md。
右上角菜单里还有:用文本编辑器打开自定义词文件、导出日志、恢复默认设置(不影响自定义词和翻译服务)、关于。
wowtype-config --page voice(或general、translate、words、update)直接打开某一页。- Fcitx 5 配置里选中 WowType 点「配置」,也能改上面这些设置,里面的「自定义词和更多设置」会打开 WowType 设置。
WowType 默认用自己的绿色主题:圆角候选框,选中的词是图标里的那种绿,系统换深色模式时跟着换深色版。 第一次切到 WowType 时自动打开(只这一次;你在用别的 fcitx5 主题时不动)。 不喜欢的话在「WowType 设置 → 常规 → 外观」里关掉「WowType 绿色主题」,换回默认。 候选框的字嫌小,在同一个地方调「候选字号」(8–32 磅),改了马上生效:GNOME 上改的是 Input Method Panel 扩展的字体,别的桌面改的是 fcitx5 经典界面的字体,两边一起改。
浅色 |
深色(按下键展开) |
候选框由谁来画,决定了主题怎么生效:
- KDE、X11 等:fcitx5 自己画(经典界面),用的是主题
wowtype/wowtype-dark,打开开关马上生效。 也可以在 Fcitx 5 配置 → 附加组件 → 经典用户界面里手动选。 - GNOME(Wayland):候选框是 Input Method Panel 扩展画的,fcitx5 的主题管不到。WowType 另带一个只有样式表的小扩展
wowtype-theme@gloridust.github.io给它换色,打开开关会顺带启用它。第一次启用要注销重新登录一次(GNOME 只在登录时加载新装的扩展)。 这个扩展同时画语音浮条,关掉绿色主题,语音提示也会回到候选框里的文字版。
主题文件在 themes/:themes/fcitx5/ 是经典界面主题,图片由 themes/src/*.svg 经 themes/render.sh 生成;themes/gnome-shell/ 是 GNOME 扩展。
用 deb 包装的会自动检查更新:切到 WowType 时在后台查一下(最多一小时一次),
有新版本就弹一条通知,点开进「WowType 设置」的「更新」页,能看更新内容,点「下载并安装」,
按系统提示授权就装好了(下载后会对照 SHA256SUMS 校验),最后点「重启输入法」生效。
也可以重新运行一行安装命令。
不想自动检查,在「更新」页关掉「自动检查更新」(就是配置文件里的 CheckUpdate=False)。从源码装的只会提示新版本,要自己更新。
| 现象 | 处理 |
|---|---|
| 输入法列表里找不到 WowType | 添加时取消勾选「仅显示当前语言」;确认 /usr/share/fcitx5/inputmethod/wowtype.conf 存在;wowtype-config --restart-fcitx 重启 |
| KDE Wayland 下已经开着的程序能打字,新打开的程序打不了 | fcitx5 是用 fcitx5 -r 或托盘「重新启动」重启的,没经过 KWin。运行 wowtype-config --restart-fcitx,或注销再登录 |
| 某个程序里打不了中文,别的程序可以 | 重启 fcitx5 以后 Chrome / Electron 程序要彻底退出再打开 |
| 能打,但候选很少、很多常用词没有 | 没找到词库,用的是演示词库。用安装包装的话重装一遍(安装包自带词库);从源码装的把 lexicon.tsv 放进 ~/.local/share/wowtype/ |
| 第一次切到 WowType 时要等一两秒 | 正常:第一次要载入词库并生成快照,之后约 0.3 秒 |
| 按右 Alt 提示「没有语音模型」 | 到 WowType 设置的「语音」页点「下载」(或运行 wowtype-config --install-voice-model) |
| 按右 Alt 提示「开不了麦克风」 | 在系统设置的「声音」里确认有输入设备;arecord -l 应该能列出麦克风 |
| 按 Super + . 打不开表情面板 | 只在 WowType 是当前输入法时有效;桌面或别的程序占了这个键的话,到设置里换成 Ctrl + ; |
| emoji 显示成方块 | 缺彩色 emoji 字体:sudo apt install fonts-noto-color-emoji |
| 按右 Alt 没反应 | 只在 WowType 是当前输入法、没在打拼音时有效;有的键盘右边是 AltGr,到设置的「语音」页换个键 |
| 应用菜单里没有「WowType 设置」,或者打不开 | 缺 GTK 4 / libadwaita:sudo apt install python3-gi gir1.2-gtk-4.0 gir1.2-adw-1。在终端里运行 wowtype-config 能看到报错 |
| 设置里改了,打字时没变化 | 看看是不是设了 WOWTYPE_* 环境变量(env | grep WOWTYPE),它们优先于设置;fcitx5 没在运行时,设置会在它下次启动时生效 |
| 想看日志 | ~/.local/state/wowtype/wowtype.log,或者导出日志 |
| 怎么确认 fcitx5 在工作 | 运行 fcitx5-diagnose,它会列出缺的环境变量和前端 |
「WowType 设置 → 常规 → 帮助 → 导出日志」,或者右上角菜单里的「导出日志…」,会存一个 wowtype-log-时间.txt,
里面有版本、系统和桌面环境、fcitx5 的输入法列表和主题、WowType 的设置、数据文件在不在、WowType 和 fcitx5 最近的日志。
不含你打过的字,自定义词、自动学到的词和输入习惯只写条数;家目录写成 ~。导出后可以先打开看一眼再发。
没有图形界面时:wowtype-config --export-log(存到当前目录)或 wowtype-config --export-log -(打到终端)。
WowType 自己的日志在 ~/.local/state/wowtype/wowtype.log(满 512 KB 换一个,旧的留一份 .1)。
问题没解决,欢迎提 issue,把导出的日志拖进去。
按键 ─> fcitx5 插件(C++)─C ABI─> 拼音引擎(Rust)
├─ 切音节:全拼 / 简拼 / 半成品 / 按错键
├─ 音节图上做束搜索,词频 + 语言模型 + 用户习惯打分
└─ 组织候选:几个整句、句子前半截、词、单字
引擎用 Rust 写,编成静态库链进 fcitx5 插件。设计思路参考了微信输入法(WeType)3.0 的公开行为和引擎里的符号名, 但拼音引擎没有用它的任何代码、词库或模型;词库来自开源的雾凇拼音。 语音识别用的是微信输入法的离线模型:不随 WowType 分发,第一次用语音时从腾讯的服务器下载,推理代码来自 voicekey(纯 Rust)。实现细节、评测数字和调参方法见 docs/ENGINE.md。
cargo test --workspace # Rust 测试(需要 libasound2-dev,语音守护进程还要 libx11-dev libxkbcommon-dev)
./scripts/abi-smoke.sh # C 接口冒烟测试
scripts/addon-test.sh ~/.local/share/wowtype/lexicon.tsv ~/.local/share/wowtype/english.txt
# 插件按键测试:起一个私有的 fcitx5,不影响你正在用的输入法
WOWTYPE_VOICE_WAV=说的话.wav WOWTYPE_VOICE_EXPECT=期望的字 scripts/addon-test.sh ...
# 加跑语音用例:用 WAV 代替麦克风,要先下载好语音模型
# (不给 WAV 时跑「没有模型按右 Alt 只提示」)改了排序,用 wowtype-eval 在几百个用例上对比改前改后(用法见 docs/ENGINE.md)。
推送 v* 标签会自动编译各发行版的安装包并发布到 Releases。
| 目录 | 内容 |
|---|---|
core/ |
拼音引擎和 C 接口 |
fcitx5-addon/ |
fcitx5 插件 |
settings/ |
设置界面 wowtype-config(Python、GTK 4、libadwaita) |
voice/ |
语音输入:热键状态机、麦克风采集、微信离线模型推理(插件通过 core/src/voice_ffi.rs 调用) |
voice-daemon/ |
不依赖输入法的语音守护进程(X11,实验性,没进安装包) |
tools/ |
词库转换、评测用例生成 |
docs/ |
引擎细节、体验审查、接手指南、语音、数据格式 |
- 输入示例:docs/USAGE.md
- 设置项、环境变量、数据文件:docs/CONFIG.md
- 从源码构建:docs/INSTALL.md
- 卸载:docs/INSTALL.md
- 目前做不到的:docs/LIMITATIONS.md
- 雾凇拼音 rime-ice:词库和英文词表(GPL-3.0,随安装包一起分发,许可证见
/usr/share/doc/wowtype/copyright) - 万象拼音 rime_wanxiang:可选词库(CC BY 4.0,不在安装包里,在设置里下载)
- OpenCC:简繁对照表(Apache-2.0)
- Unicode CLDR:emoji 的中英文关键词(Unicode License v3)
- fcitx5:输入法框架
- voicekey:离线语音识别部分的代码
- 微信输入法:体验和设计上的参照
代码按 MIT 或 Apache-2.0 双许可证发布,任选其一。安装包里的词库数据遵循 rime-ice 的 GPL-3.0,可选的万象词库包遵循 CC BY 4.0,词级语言模型 words.lm 是 CC BY-SA 4.0,编进程序里的 emoji 关键词来自 Unicode CLDR(Unicode License v3)。