Closed QiangF closed 1 year ago
The issue is that the gts-matched-paths is not always correct, the user's choice should be respected and remembered in case the guessed path is wrong. Instead of starting from the wrong match every time.
You can turn off auto judge
by executing (setq gts-picker-lang-match-alist nil)
.
Please test and report the result.
auto judge is nice. I would rather keep it. My fix just adds the fallback behavior.
好像不行,比如下面的俄文:
Товары
重现步骤
See? ru->en选项没有在最前面
想要的状态,步骤4,不需要再使用移到下一个ru->en:M-n
你可以试试我的改动,是可以的。你的包用了很多高级功能,对初学者不太友好,难度这就是所谓的:lisp的诅咒 :-)
我这里测试可以啊?试了好几次,ru->en 都会到最前面。奇怪。
我这边还是不行 :
1. emacs -q
2. load go-translate
3. config :
(setq gts-google-rpc-base-url "https://translate.google.cn"
gts-translate-list '(("en" . "zh")
("ru" . "en")
("ja" . "en")
("de" . "en")
("fr" . "en")))
(setq gts-default-translator
(gts-translator
:picker (gts-noprompt-picker)
:engines (gts-google-engine)
:render (gts-buffer-render)))
4. gts-do-translate on Товары
找到问题了,在那个translate buffer, 按M-n,应该保存当前的path到last path
出现的时间顺序
实际根本没有保存,原代码很绕,没看明白:
(gts-buffer-set-key ("M-n" "Next direction")
(let* ((picker (let ((op (oref translator picker)))
(if (functionp op) (funcall op) op)))
(next (gts-next-path picker text from to)))
(gts-translate translator text (car next) (cdr next))))
如果加上自动识别,默认最好是 picker (gts-noprompt-picker),至少每次少敲个回车键,所以这个不合理,M-n后保存才合理 “是不是只有 gts-picker 选取之后再修改 gts-picker-last-path 才更合理”
(setq gts-default-translator
(gts-translator
:picker (gts-noprompt-picker)
:engines (gts-google-engine)
:render (gts-buffer-render)))
明白了。已更新,请测试。
高手,厉害!
Fix https://github.com/lorniu/go-translate/issues/35