1 个不稳定版本
0.2.2 | 2023年2月14日 |
---|
6 在 #弹出
4.5MB
386 行
弹出翻译
通过 wry 打开一个 webview 窗口,然后打开某个翻译平台的网页进行翻译内容,并通过 js 代码屏蔽掉不需要的内容,专注于翻译内容本身。
💫 功能
- 利用 wry 提供的网页视图功能实现的弹窗功能
- 从剪贴板读取文本并翻译
- 在 Linux(x11) 下支持所选文本的翻译,即不需要复制到剪贴板(目前不支持MacOS) https://github.com/fzdwx/popup-translation/issues/3
- 在 Windows 模拟一次
ctrl+c
后,在读取剪贴板的内容
- 从命令行传入文本进行翻译
- 支持多种翻译平台
🚀 入门
cargo install --git https://github.com/fzdwx/popup-translation
# 命令行直接设置翻译文本,只运行一次
fanyi hello
fanyi -p youdao 你好
# 守护模式,可以一直翻译,`ctrl+shift+c` 打开窗口
fanyi
# 覆盖快捷键,使用 `alt+s` 打开窗口
fanyi --show=alt+s
# 设置窗口显示位置,默认为鼠标附近
fanyi --position=100,100
fanyi --help
🕹️ 集成
nvim
map("n", "<leader>fy", function()
local word = vim.fn.expand("<cWORD>")
local cmd = { "fanyi", word }
vim.fn.jobstart(cmd, { detach = true })
end, { desc = "qwe" })
🦹 TODO
- 弹出位置选项(当前是固定获取鼠标附近)
- e.g:
top_left
,top_center
,top_right
,center
...
- e.g:
- 热键
- 打开
- 从粘贴板读取数据
- 读取鼠标选择的数据
- Linux
- Windows
- MacOS
- 关闭
- 打开
- 全程只使用一个 webview
📖 感谢
许可证
MIT
依赖
~15–50MB
~772K SLoC