0%

JetBrains家的浏览器插件可以实现一键 checkout repo 到打开 JB家IDE,但不支持国内Git服务,比如Gitee和工蜂。了解到插件本身代码开源,因此决定拓展支持下。

效果

下载地址:戳这里

原理

这里简单说明下插件基本原理,感兴趣具体源码的查看repo即可

  1. JB IDE本身提供了URL Schema方式来唤起动作,比如这里的checkout。但官方没有提供完整的动作列表,这里根据源码收录了部分,整理在jetbrains-url-schemes
  2. 插件在命中目标git web网页时执行一些动作
    1. 根据URL获取到repo,user等信息,从而确定clone repo的地址
    2. 通过单独API或网页中部分信息分析出repo设涉及的编程语言,进而通过语言加占比权重,确定应该使用的IDE
    3. 在目标位置追加按钮
    4. 用户点击按钮时实现URL Schema跳转

写在最后

通过这里的拓展支持,也可以无缝体验插件到IDE的便利性了。

对于非博客长篇总结的问题,我经常写到GitHub repo的issue里,主要是alanhg/others-notealanhg/coding-note。久而久之,数量也就上来了,很多时候想去搜下以前记的这些问题,发现搜索效率很低,于是想到Telegram Bot来解决issue搜索问题,简单查了下发现网上没有,于是动手自己做下。

当前效果

选择repoadd命令添加目标仓库,之后就可以输入任意关键词进行检索了。效果如下

https://static.1991421.cn/2022/2022-05-04-114501.gif

使用地址:GitHub Issue Bot

bot开发

针对bot开发也踩了些坑,这里总结下

  1. bot创建联系@BotFather机器人,一番交互操作下即可

    • bot名称/头像,命令列表等,均是在该机器人下操作设置

    • 注意保存好bot_token,唯一决定哪个bot,及收发消息

    • 针对bot如果需要创建命令列表,也是联系@BotFather,选择目标bot编辑,其中就有编辑命令。命令编辑这里有个细节点

      • 命令不要有中线

      • 命令开始不要有/,这个是具体命令触发时需要的固定前缀,命令本身不需要再手动添加

        https://static.1991421.cn/2022/2022-05-04-115842.jpeg

  2. bot开发有很多现成的类库辅助起步

    • nodejs下就可以使用node-telegram-bot-api
  3. bot发送消息支持markdown/html几种格式,这样很方便解决消息排版问题

  4. bot发送消息,比如提示用户搜索中,之后搜索结果有了,想更新该消息为结果列表,使用bot.editMessageText,参数中明确message_id及chat_id即可

  5. bot有时候想关注用户基于某条消息的回复,使用bot.onReplyToMessage

  6. bot服务部署需要在外网环境下,测试阶段也需要解决代理问题

写在最后

有了这个bot,以后只需要输入关键词检索是否有类似issue了。

相关文档

查询一个命令工具参数经常使用--help,比如rsync --help。另外也可以使用man命令,比如man rsync 。那两者区别是什么,又该怎么选择呢

区别

  1. man命令是针对系统中存在的所有命令提供的全面使用说明手册,Linux/Mac下均支持

    • 非系统命令基本上都不可用,比如man java
    • man是manual的缩写即帮助文档
  2. --help是每个命令自身提供的参数,用于打印输出命令使用说明,但存在部分命令没提供的情况,比如ssh

    ssh这里还有一点特殊是,命令本身提供的参数说明很粗,比如t参数等没有具体说明,而man下描述很清晰

https://static.1991421.cn/2022/2022-05-03-005726.jpeg

https://static.1991421.cn/2022/2022-05-03-010520.jpeg

使用建议

  • 如果是系统命令,优先使用man来查看

  • 如果是非系统命令,使用命令本身的说明--help

一直有尝试将中文博客翻译成英文发布在medium平台。当前每次都是手动去选一些文章给女友,翻译后再丢给我发布,整个流程还是低效,借着节日优化下该流程。

  1. 更新中文博客CI流程进行优化

    • 增加自动拉取文章MD源码脚本,这样VPS上永远有一份最新的中文博客
  2. VPS上部署博客源文件Web服务

    • 这里使用local-web-server

    • 同时增加一定程度的安全保障,进行auth配置

      1
      ws --auth.user root --auth.pass 123456

​ 这样直接web访问即可看到所有MD文章源码,同时ws也提供了简单的搜索高亮,基本够用

  1. 手动保存源文件到本地
  2. 翻译后传给发布人
  3. 手动提交到英文Repo,自动发版

这算是第一期的流程,未来根据需要再解决翻译后直接发版环节问题。

博客平台经历了GitHub pages=>腾讯云国区=>Vultr日本,现在决定第四次折腾,迁移到腾讯云香港了。漫漫折腾路。

之所以迁移到腾讯云香港有以下几个点。

  1. 暂时没有服务器资费开销,我司有优惠券,算是免费羊毛
  2. 腾讯云香港节点,有几个优点
    • 可以科学爱国
    • 没有站点备案要求
    • 低延迟,对比Vultr日本快的明显
    • 流量足,比如我当前的机器,一个月2T

基于此做下迁移

迁移工作

  1. 直接SCP命令将服务器上的资源直接拷贝过去
  2. 修改域名DNS记录
  3. 修改GitHub CD部署目标机器地址

大概1小时内就解决了部署,测试速度发现还行。