将Hexo文章中的汉字标题转成英文标题
发布于 8 年前 作者 cometlj 3579 次浏览 来自 分享

初学nodejs,最近在用hexo写博客,但是苦于MD文件中的permalink需要自己手动输入,略感不爽。因为在用wordpress的时候有个插件可以直接把汉字标题转换成英文,不需要自己手敲了。找下了hexo官方的插件库,只有hexo-abbrlink这个插件比较适合,不过生成的是通过CRC16和CRC32生成唯一连接,于是想自己动手实现下。

安装

npm install hexo-translate-title --save

使用

配置hexo项目下的_config.yml

translate_title:
  translate_way: google    #google | baidu | youdao
  youdao_api_key: XXX
  youdao_keyfrom: XXX
  is_need_proxy: true     #true | false
  proxy_url: http://localhost:8123

这里需要判断是否需要配置google本地代理,因为我在本地是开启时才能访问google翻译的,如果没有被墙,请将_config.yml 下的is_need_proxy: true改为false。如果设置为true,请设置本地代理地址

TODO

  • 有道翻译一直没有调通,不知道什么原因,总是会报这个错误
{ Error: connect ETIMEDOUT 123.58.182.241:80
    at Object.exports._errnoException (util.js:1022:11)
    at exports._exceptionWithHostPort (util.js:1045:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1087:14)
  code: 'ETIMEDOUT',
  errno: 'ETIMEDOUT',
  syscall: 'connect',
  address: '123.58.182.241',
  port: 80 }

显示网络连接超时,不知道何故,有明白的朋友请告知下谢谢。

  • google 获取TKK的时候,是参照这篇文章里面的JS计算方式(谢谢作者!),但是更换为初次获取http://translate.google.cn/TKK值,参与计算获取tk时会计算出错,原因待查中。

DEMO

hexo-translate-title 如果喜欢请加颗星吧^_^!

回到顶部