Archive of May 2020

Ubuntu 20.04 fcitx-rime wubin_pinyin 配置简入繁出

为啥用 fcitx 不用ibus呢.... 一开始我确实是用的ibus,但它老人家在 google doc 的网页里不显示候选文字框,等修复不知道要等到啥时候,我就扭头换 fcitx 了。

现在是2020年了,网上的教程大都过时了。 和 ibus-rime 一样,今天的 fcitx-rime 已经内置这个功能,只是它的默认配置没有配置这个功能。废话不说,贴上我的配置文件

~/.config/fcitx/rime/default.custom.yaml 内容如下

patch:
 style:
  display_tray_icon: true
  horizental: false
  font_point: 14
 schema_list:
    - schema: wubi_pinyin
    - schema: pinyin_simp
 ascii_composer/switch_key:
  Shift_R: commit_code
  Shift_L: commit_code

~/.config/fcitx/rime/wubi_pinyin.custom.yaml 内容如下:

patch:
  switches:
    - name: ascii_mode
      reset: 0
      states: [ "中文", "西文" ]
    - name: full_shape
      states: [ "半角", "全角" ]
    - name: simplification
      states: [ "汉字", "漢字" ]

  simplifier/opencc_config: s2t.json
  engine/filters:
    - simplifier
    - uniquifier

我在网上搜了半天,都没配成,灵机一动从我的 squarrel 输入法配置里直接把这俩文件 copy 过来,一部署结果就好了。

What I have learnt in recent days

  1. 长叹一声。Linux 上就没有一个好用的远程桌面服务器。虽然不喜欢,留个 teamviewer 进程一直开着以应不时之需是有必要的。
  2. vagrant 的 public_network 在 usb 无线网卡有bug...(服务器好好的千兆网卡你不用用什么无线网卡....不是手头没有网线嘛
  3. "Ansible for DevOps" 据说是一本好书。那待读书单里就加一本吧
  4. CentOS8内置了一个叫 cockpit 的web管理器,还挺好用的。它的端口是9090,咋改成用正儿把经的https证书我还不知道。
  5. Gnome桌面有一个叫 Vinagre 的远程桌面客户端,支持的服务器类型挺多的。(然而并不好用)
  6. 不应该把对应数据表的 entity model 直接用在 web API 里。别嫌麻烦,那个应该是贫血的,除了主键并不需要有其他的约束。把完整的表结构和所有字段暴露给客户端是不好的。
  7. AutoMapper 有什么用?应该怎么用? ,这篇09年的老文章和里面的评论可能会有点用。
  8. chrome OS 开了开发者模式,按 ctrl + alt + -> root 登录即可设置默认用户的密码。

想深入了解Linux了,所以又开始看 Linux From Scratch。

Tailscale:不一样的VPN

Tailscale

丁宇在推特上说这个东东比 frp 好用。我先一口气把它安装到四台服务器性质的 Linux 机器上,包括两台本来就有外网 IP 的vps,然后才琢磨这东西有啥用,怎么用。安装和授权过程都很简洁,没有废话,第一印象棒极了。

那...它有啥用呢?一句话,它把你所有的机器,不论物理上隔多远,放到一个局域网里了。在这个局域网里,没有防火墙,网内可以访问任何设备的任何端口。和普通的vpn不同,它没有中央设备,所有设备之间都是直连,因此性能比较好。

那有啥用呢?

  1. 管理你的一堆机器更方便了。
  2. 局域网内任何一台有外网IP的机器都能做为任何一台内网机器的跳板机(内网无端口限制的穿透)。

换言之,你的VPS只要有足够的流量,硬盘空间不再是限制你部署应用的瓶颈,你完全可以把你的各种试验性side project部署在你的家里,或者父母的家里,扔台旧机器装个Linux就全齐活了。

嗯,它不光支持 Linux,还支持macOS,iOS,Windows!牛大了。

记录一下小坑。macOS 10.15.4 安装好后 Login 是灰的,无法登录,重启下电脑就好了。

好香的接口测试工具:Insomnia Rest Client

这是我从新近follow的一个推友 @tywtywtyw 的推文里拣到的宝。他在推文里说

放弃了 postman 和 postwomen, 来到了 insomnia

能比 Postman 更好?这勾起了我的好奇心。结果发现真香。

顺便说一下,他的口号是“Design and debug APIs like a human, not a robot.”

  1. 不用写脚本,可以指定当前请求依赖哪个请求,以及是使用缓存的请求结果,还是需要时再发新请求(通常我都会选择发新请求,毕竟token会过期)
  2. 最重要的键是 Ctrl+空格。这是 autocomplete 的热键。
  3. 界面相对易用。
  4. 有父环境和子环境的概念,公共的东西写到父环境里,能省一些时间
  5. 就像使用苹果的软件,你不需要专门保存你的接口,你写了,你run了,接口就自动存好了。

遇到一个坑:如果是在JSON里使用环境变量,并且这个变量是个字符串,得用双引号括住这个变量!

我已经决定扔掉 Postman 了。就是这么喜新厌旧。

How to let Supervisord wait 1 second before restarting my program?

It spent more than half an hour. Finally, I found this solution.... very simple!

#!/bin/bash
/usr/local/bin/noip2 -c /usr/local/etc/no-ip2.conf
sleep 1

noip sucks!

source