mosh: 使用 UDP 传输的 Shell

Mosh 是 mobile shell 的缩写,Mosh 允许间断性连接,使用传统的 SSH 连接远程设备时,如果遇到一点点的网络问题,SSH 连接就会被中断。Mosh 使用 UDP 传输,相较于 SSH,在漫游网络,Wi-Fi,移动 (cellular) 网络,长距离连接等网络场景下提供了更好的连接体验。 Mosh 提供的一些特性: Mosh 会自动在连接的网络环境中进行切换,而不会中断连接。尤其当在移动设备上使用 Wi-Fi,3/4G 移动连接时,可以保持连接状态 当笔记本进入睡眠状态,然后再被唤醒,网络连接会中断,使用 Mosh ,但 Read more ...

2020-07-13 mosh , ssh , udp

Vim 插件之 vim-easymotion

Vim 中已经提供了非常多移动的动作,从简单的字符间移动 (jkhl),到 word 间 (w/e/b),句子间 ((/)),段落间 ({/}),行首行尾 (0/^/$),文档开始 (gg),文档结尾 (G),还有搜索 (//np) 等等一系列的操作,但 easy-motion 将 Vim 中的移动又提升了一个高度。 继续往下阅读之前先确保阅读了 vim 文档中关于 motion 的内容。 想象一个场景,想要跳转到当前行下一个段落中的第二个句子的第三个单词开头,使用上面提到的方法,可能需要按下不同的按键,并且可能还需要组合使用,那有没有什么方法能降低 Read more ...

2020-07-06 vim , vim-plugin

JetBrains IntelliJ IDEA 中使用 vim 总结

虽然使用了很长时间的 Vim,也使用了很长时间的 IntelliJ IDEA,但总感觉没有充分利用,所以想再这里总结一下,系统的浏览一遍 Idea Vim 插件能提供的功能,看看能不能有所受益,Vim 和 IntelliJ IDEA 的基本操作和内容就省略了。 Introduction 首先 ideavim 这个插件是 JetBrains 官方提供的,基本上安装后即可。GitHub 的页面还提到 ideavim 插件提供了一些 Vim 插件的扩展功能,比如: vim-easymotion vim-surround vim-multipl Read more ...

2020-07-06 intellij , vim , editor , shortcut , summary

在树莓派上安装 Prometheus node-exporter

前些天正好在我的二代树莓派上安装了 AdGuard Home,这样一个基础服务必然不能少了监控,所以正好把 Prometheus node-exporter 安装一下。 Prerequisite 首先确认一下 CPU 型号,我的是二代,比较老,直接 lscpu 看一下就知道: Model name: ARMv7 Processor rev 5 (v7l) 这是一个 armv5 版本的,然后到 node-exporter 下载二进制: https://github.com/prometheus/node_export Read more ...


使用 Clonezilla 恢复 Windows 系统遇到的几个问题

之前也总结过两篇文章,我是如何使用 Clonezilla 进行全盘备份和恢复的 以及备份 Linux 过程中遇到的问题,今天这篇就记录一下恢复之前备份过的 Windows 我先来还原一下现在情况,原来我有两台小米的 Air 笔记本,所有的配置一样,不过一台我从之前的电脑上恢复了一个 Linux Mint 的系统,暂且叫这台 A1 笔记本,然后还有一台是默认的 Windows 系统,不过这一台用的比较少,暂且叫这台 A2 笔记本。前段时间我把 A2 笔记本使用 Clonezilla 备份了一下生成了一个从 device 到 image 的镜像,然后我把 Read more ...

2020-07-04 clonezilla , backup , restore

Albert launcher

Albert 是一个 Linux 上的启动器,使用 C++ 和 QT 实现,实现了如下的功能: Run Applications Open files Open bookmarks Search web calculate things GPL-licensed Install Official Build 通过下面的网站下载官方编译的版本。 https://software.opensuse.org/download.html?project=home:manuelschneid3r&package=a Read more ...

2020-06-29 linux , albert , launcher , application

Moshi : 新一代的 Java 解析 JSON 工具

最近 FastJson 安全问题频发,所以 JSON 解析又被拉到台面上,而正好不久前看 Reddit 看到 Gson 的作者在推荐一个叫 Moshi 的库,这就花点时间看一下。1 Gson 存在的问题 序列化 Date 的时候不包含时区的信息 Date epoch = new Date(0); String epochJson = new Gson().toJson(epoch); // "Dec 31, 1969 7:00:00 PM" RFC 3339 标准 里面规定的日期表示法: 2020-06-12T07:20:50.52Z 其 Read more ...

2020-06-23 java , json , gson , moshi

KIE API 学习笔记

Kie have these concepts which every user need to know. KieService 通过如下方式产生 KieServices: KieServices ks = KieServices.Factory.get(); KieService 可以用来创建 KieContainer。 KieContainer 定义了规则的范围。 KieContainer KieContainer 是所有给定 KieModule 的 KieBases 的集合。 KieContainer 承载了 KieModule 和 Read more ...

2020-06-17 kie , drools , jbpm , decision-table , score-card

JBoss 工作流相关 Docker 镜像整理

源代码地址: https://github.com/jboss-dockerfiles/business-central 三个可用的镜像: business-central-workbench JBoss Business-Central Workbench 基础镜像,可以根据该镜像来扩展创建自己的镜像。 business-central-workbench-showcase 继承自 JBoss Business-Central Workbench 镜像,可以直接使用的 Docker 镜像。提供了自定义的配置文件,默认 Read more ...

2020-06-12 jboss , kie , kie-workbench , drools

Java 查漏补缺:函数式接口

Functional interface is a new feature Java 8 introduced. Functional interfaces provides target types for lambda expressions and method references. // Assignment context Predicate<String> p = String::isEmpty; // Method invocation context stream.filter(e -> e.getSize() & Read more ...

2020-06-09 java , linux , java-8

最近文章

  • 我 Vibe Coding 了一个日本看房神器:BukkenAI 最近在东京认真找房子,每次拿到一个物件地址,我都要重复做同样一套操作:打开 [[Google Maps]] 搜地址,确认大概位置;找最近的车站,看步行距离;切到 Yahoo 地图查灾害风险图;再搜一圈附近有没有超市、医院、药局。做完一遍下来,十几分钟就过去了,物件多的时候,这些重复的信息收集工作比看房本身还累。某天做完第 N 遍之后,我决定干脆自己做一个工具,输入地址,全部自动搞定。这就是 BukkenAI 的起点。
  • Entire:让 AI 编程会话成为 Git 历史的一部分
  • Atuin:用数据库替换 Shell 历史,跨设备同步不再是难题
  • Ghostty 终端配置技巧:从入门到舒适 从 Warp 切换到了 [[Ghostty]],理由非常简单,我使用 atuin 来同步 Shell 历史,但是 Warp 不支持,外加上 Ghostty 自带 Metal GPU 加速渲染、原生 macOS AppKit 构建、启动飞快,可以让 AI 以纯文本方式配置,就果断切换了。
  • GitNexus:把你的代码库变成 AI 能读懂的知识图谱 用 AI 写代码这件事,大家都已经习惯了。但一个尴尬的现实是:AI 在修改代码的时候,经常不知道自己改的那个函数被多少地方调用、改完之后会不会连锁反应把别的功能搞崩。这不是 AI 模型不够聪明,而是它看不到代码库的全貌——依赖关系、调用链路、执行流程,这些结构性的信息在普通的文件搜索里是丢失的。