lorniu / go-translate

Translator on Emacs. Supports multiple engines such as Google, Bing, deepL, ChatGPT, StarDict, Youdao and so on.
GNU General Public License v3.0
274 stars 37 forks source link

关于终端下的使用 #53

Closed bommbo closed 1 year ago

bommbo commented 1 year ago

抱歉麻烦您测试下,我自己没办法在终端下使用这个包,但是在GUI下能使用,但是终端下无法使用,一直显示 using a proxy for http / using a proxy for https ,但其实我在终端下也用了类似 export http_proxy= 的方式。

lorniu commented 1 year ago

我的Archlinux 终端和GUI下都正常。

是不是你的代理有问题?首先你把代理取消掉看看有没有问题。或者可以通过 proxychains 之类的设置下代理试试?

另外 emacs 内部可以使用 url-proxy-services 配置 url-retrieve 的代理。

bommbo commented 1 year ago

谢谢啊,应该是代理,最近bing好像出了问题,切到google才发现这个问题。

bommbo commented 1 year ago

还是不行,zsh 下的export HTTPS_PROXY=http://127.0.0.1:1087,vim 下的翻译工具切到google,翻译正常。 emacs下的两种方式:

(setq url-gateway-method 'socks)
(setq socks-server '("Default server" "127.0.0.1" 1080 5))

(setq url-proxy-services '(("http" . "127.0.0.1:1087")))

GUI下都能正常翻译,但是终端下就是无法翻译。我已经试过很多方式了,就是不行,proxychains干脆直接干扰emacs文本,直接乱码。 另外,我怀疑不是proxy的问题,因为 getenv,我能得到 https_proxy,http_proxy 变量。 这是 go-translate的配置:

(use-package go-translate
  :load-path "~/xxx/go-translate/"
  :config
  (require 'go-translate)
  (setq gts-translate-list '(("en" "zh")))
  (setq gts-default-translator
      (gts-translator
       :picker (gts-noprompt-picker)
       :engines (list (gts-google-engine) )
       :render (gts-posframe-pop-render)))
lorniu commented 1 year ago

posframe 是不是不能在终端下面使用?你换成 gts-buffer-render 看看能行吗?另外如果有错误,麻烦你把错误的文本发来看看?

另外,proxychains 让 emacs 乱码?没道理啊。

bommbo commented 1 year ago

确定了,真不会弹窗,翻译正常。另外 proxychains真的会让它乱码。 用acm-terminal 使lsp-bridge,都恍惚了,觉得终端下emacs弹窗应该是有实现的,抱歉抱歉。令注一下,posframe在终端不支持, 相关链接: https://github.com/tumashu/posframe/issues/64

image