macOS 下利用 Karabiner Elements 修改日本 JIS 键盘布局到美式键盘布局

本文介绍一下在 macOS 下如何通过 Karabiner Elements 这一款键盘映射修改应用将 JIS 布局的日文键盘修改成我熟悉的 US Layout 的键盘。 JIS 键盘布局 JIS 键盘布局是日本是最常见的键盘布局,它与国内常用的美式键盘布局有一些不同之处。如果你习惯了美式键盘布局,使用 JIS 键盘可能会感到不便。 可以明显感到区别的是 JIS 键盘的空格键非常短,我个人几乎只能使用左手大拇指来按 空格左边原来非常高频使用的 Command 按键变成了「英数」按键,同样空格键右侧的 Command 按键也变成了 かな Read more ...


推荐几个英语学习工具

要想学好一门语言,是一个需要长期花时间的过程,听说读写一样都不能落下。之前我也要推荐过学习英语,就应该使用英英字典(当达到一定的词汇量之后),学习英语就应该让自己的耳朵沉浸在英语发音中(可以通过听英语播客),当能够听懂大部分的内容的时候,无字幕看电影也是一种沉浸式的学习方法,到通过[[影子跟读法]] 来练习发音,完成一个语言的听说读写之后才能形成一个学习的闭环。 这篇文章抛开那些枯燥的学习方法介绍几个非常有意思的语言学习小工具。 [[Language Reactor]] 是一个在视频上实时显示字幕的 Chrome 插件 [[YouGlish Read more ...


XML 数字签名及 Java 实现

数字签名是一种基于摘要算法和非对称加密技术的防止数据在传输过程中被篡改的安全技术。 数字签名的原理是对传输的内容做摘要(SHA245 等),然后把摘要和用到的摘要算法使用非对称加密技术的公钥或私钥(大部分情况下是私钥)生成签名。接收方接受到数据后,把签名信息用私钥或公钥验证来确保内容的完整性。 XML 数字签名 XML 数字签名是数字签名的基础上定义出来的一种 XML 数字签名规范,和普通的数字签名相比较有不少优点,比较灵活。XML 数字签名即可以对传输的所有内容签名,也可以只对传输的一小部分内容进行部分签名。不同的签名还可以使用不同的算法和密钥。 Read more ...


macOS 上的清理工具整理合集

最近 macOS 系统磁盘空间告急,之前就出现过因为磁盘空间不足导致系统卡顿还出现突然黑屏的状态,所以这次就看到还剩余几十个 GB 的时候就开始清理工作了。清理的同时顺便就整理一下常用的几个清理工具。 如何发现大文件 在清理之前首先要对本地磁盘文件做一个整体的了解,虽然 macOS 自带一个存储管理的查看面板,但是实在是太简陋,也只能提供非常简单地查找大文件的工具。 比如说从系统提供的 Storage 预览中能看到 Documents 占用的空间最多,可以点开后面的圆形 i 图标,可以看到其中占用空间很大的几个文件。 比如说对于我,就是我 Read more ...

2023-06-10 macos , cleanup , mac , gdu , linux , disk-space

使用 Listmonk 搭建自己的 Newsletter

listmonk 是一个开源的,使用 Go 语言编写的,自托管的邮件列表订阅应用。目前已经在 GitHub 收获了超过 10000 颗星星,listmon 速度非常快,功能丰富,并且可以直接打包成一个二进制文件,和 PostgreSQL 数据库一起使用。 借助 listmonk 可以非常快速的搭建属于自己的 Newsletter,Newsletter 是一种基于邮件的时事通讯,企业或组织可以通过邮箱给其成员,客户,员工或其他订阅者发送活动的新闻及广告营销的方式,但最近也逐渐成为个人出版、自媒体的流行订阅形式,相比 RSS,它更加自主,有更好的阅读体验, Read more ...


.box 区块链上的 TLD

今天在 Twiter 上看到 .box 这个顶级域名开始开放 Early Access,然后就突然想起来之前突然某一天 Twitter 大家都换上了 .eth 的昵称。突然很多陌生的名词出现了,比如什么是 ENS,什么是 DID。 什么是 eth .eth 是 ENS(Ethereum Name Service)域名服务提供的一种以太坊地址命名方式。它是一种去中心化的域名系统,将难以记忆的以太坊地址转换为更容易记忆的名称。.eth 域名可以被认为是一种以太坊上的虚拟资产,可以购买、出售、转让和租赁。与传统的域名系统不同,.eth 域名是在以太坊区块链 Read more ...

2023-06-07 eth , ens , box , tld , dns

使用 Atuin 同步 Shell 历史

Atuin 是一个可以同步,备份 Shell 命令历史的服务。借助 Atuin 可以在多台设备之前同步 Shell 命令历史,所有的命令都在数据库(SQLite)中加密存储。 相关命令 安装 Atuin 命令行工具 brew install atuin 安装完成之后配置 ZSH echo 'eval "$(atuin init zsh)"' >> ~/.zshrc 配置服务器地址,首先创建一个配置文件 vi ~/.config/atuin/config.toml sync_address = "https://atuin.x Read more ...

2023-06-06 shell , atuin , bash , bash-history

我买了一个 Ledger Nano S Plus

今天我购买了一个 Ledger Nano S Plus,是一个入门款的[[硬件钱包]](冷钱包),借此契机也正好从头开始学习和整理一下[[加密货币]]相关知识。 什么是助记词 之前已经写过一篇文章系统的讲述了什么是助记词,以及为什么可以通过助记词来回复加密货币钱包。简单来说就是助记词就是一连串特定单词组成的字符串,一般是 12 个,或 24 个单词,可以用来备份或恢复钱包的私钥。 什么是硬件钱包(冷钱包) [[硬件钱包]] (也被称为冷钱包)是一种物理的电子设备,使用随机数生成器(RNG)生成公钥以及私钥。生成的密钥随后存入设备内,设备不会接入互 Read more ...


macOS 上好用的 ChatGPT 客户端整理

介绍几款在 macOS 上能使用的 ChatGPT 客户端。 [[ChatX]] [[MacGPT]] [[AMA]] [[Chatbox]] [[OpenCat]] ChatX ChatX 是我目前个人在使用的客户端,界面简洁,提供了内置的 [[prompt]]。 MacGPT MacGPT 是一个 macOS 下的 ChatGPT 客户端,提供了 Native 和 Web 两种方式可以访问 ChatGPT。 MacGPT 提供的特色功能就是可以使用关键字来在任何应用中触发 ChatGPT。比如说在设置中设定了 Read more ...

2023-06-03 macos , chatgpt , ai-chat , chat , ai , mac , mac-app , mac-application

利用 Jakarta 来验证 Java Bean 数据合法性

Bean Validation 为 JavaBean 和方法验证定义了一组元数据模型和 API 规范,常用于后端数据的声明式校验。 2017 年 11 月,Oracle 将 Java EE 移交给 Eclipse 基金会。 2018 年 3 月 5 日,Eclipse 基金会宣布 Java EE (Enterprise Edition) 被更名为 Jakarta EE。因此 Bean Validation 规范经历了从 JavaEE Bean Validation 到 Jakarta Bean Validation 的两个阶段: JSR 303 Read more ...

2023-06-02 java , jakarta , java-bean , validation

最近文章

  • Whispering 开源离线的语音转文字应用 在之前的视频和文章当中,我给大家介绍过非常多语音转文字的应用, 有订阅制的 [[Aqua Voice]] ,[[Wispr Flow]] ,[[Voicenotes]],[[VoiceInk]] ,[[superwhisper]] ,也有免费的 [[Spokenly]] ,在本地完全离线运行的 [[Tok]] 。 今天要为大家介绍的Whispering,正是这一领域的颠覆性产品——一个真正的开源、本地优先的语音转文字应用。
  • Crystal: 多 Claude Code 实例管理器 之前的视频当中介绍过了 Claudia,它是一个 Claude Code 的桌面管理器,它将很多 Claude Code 的终端功能迁移到了桌面版当中,它也支持在应用内直接和 Claude Code 进行对话,但是它缺少了一个核心的功能,那就是当我在同一个项目中开启不同的 Session 时,有可能产生冲突,为了避免这个问题,官方的解决办法是使用 Git worktree,在开发不同的功能时,使用不同的 Worktree 来隔离每一个 Cloud Code 的环境。 今天要介绍的 Crystal 就是这样的一款可以支持多个 Cloud Code 的桌面客户端,并且每一个会话之间相互隔离。
  • 解决 Claude Code 上下文丢失问题: claunch 项目会话管理 今天在使用 Claude Code 的过程,发生了一件非常沮丧的事情,我远程控制的 Claude Code 电脑忘记插上充电器,平时都是依靠连接的显示器进行充电的,昨天晚上将显示器关闭,导致使用的时候一直都是用的电脑的电池,于是在中午的时候,我通过 [[VibeTunnel]] 连接不上我的 Claude Code 了。并且 Claude Code 中执行的内容也中断了,最关键的是有一些上下文,如果重新再来,极有可能造成很大的不一致。
  • Langfuse 使得 LLM 应用全链路可观测 不知道大家在运用 LLM 的过程中有没有遇到过这样的问题,我需要不断的调试 Prompt,让 Prompt 给出符合自己满意的结果,并且在应用中使用 Prompt 的时候我需要进行成本的控制,并且持续的迭代优化,而目前大语言模型后台虽然能提供一个简单的支出统计,但用户交互过程中的信息都是捕捉不到的,比如用户的每次请求输出栓输出是否符合预期,不同版本之间的 Prompt 对结果的影响评估,以及用户请求的延迟等等。带着这些需求,我搜寻了一些方案,然后就发现了 Langfuse。
  • VibeTunnel 将终端带到浏览器 开启移动化 Vibe Coding 这两天在调研如何在移动设备上也能随时随地给 Claude Code 布置任务,自己也尝试了不少的方案,从 Tailscale,到 Remote-Code.com 到 VS Code 插件(Claude Autopilot)添加任务到队列。但是每个方案或多或少有一些缺点,比如 Remote-Code 虽然使用比较便捷,但是不支持中文。Claude Autopilot 体验也非常不错,但是我自己尝试的过程中发现长时间运行 VS Code 崩溃了两次,再到 Tailscale + 手机终端的方案,依赖于一个非常好用的 iOS 终端,虽然选择很多,但还是没有找到一款顺手的。

赞助