2024-06-26
32 篇热帖
2. Polyfill supply chain attack hits 100K+ sites (sansec.io)
这篇文章详细报道了一起影响广泛的Polyfill.js供应链攻击事件,其核心摘要如下:
事件背景
polyfill.js 是一个流行的开源库,用于为旧版浏览器提供现代功能支持。超过10万个网站通过 cdn.polyfill.io 域名嵌入该库,用户包括 JSTOR、Intuit 和世界经济论坛。然而,在2024年2月,该域名和相关的 GitHub 帐户被一家中国公司收购。
攻击核心与时间线
自域名易主(至少从2023年6月起),攻击者开始通过 cdn.polyfill.io 向移动设备注入恶意代码。任何投诉均被从GitHub仓库快速删除。
- 2024年6月25日:谷歌开始屏蔽使用
polyfill.io的电子商务网站的广告。 - 6月26日:Sansec 和 BleepingComputer(首家报道此研究的媒体)的基础设施遭遇DDoS攻击。
- 6月27日:Cloudflare 将
cdn.polyfill.io实时重写为自己的版本;随后 Namecheap 暂停了该域名,暂时消除了风险。但建议开发者移除代码中的所有相关引用。 - 6月28日:发现更多被同一攻击者用于传播恶意软件的域名。
攻击手法与恶意代码分析
攻击属于典型的供应链攻击。恶意负载根据HTTP请求头动态生成,增加了攻击向量。已解码的恶意软件主要针对移动用户,将其重定向至体育博彩网站(使用伪造的谷歌分析域名 www.googie-anaiytics.com)。该代码具有以下特点:
- 条件触发:仅在特定移动设备上、特定时间段内激活。
- 规避检测:当检测到管理员用户或页面上存在网络分析服务(如百度统计、CNZZ、谷歌分析等)时,会隐藏自身或延迟执行,以避免出现在统计数据中。
- 反逆向工程:代码包含特定保护措施。
- 重定向目标:最终将用户引导至
kuurza.com/redirect?from=bitget等URL。
受影响的域名与IoC
被标记为与此次攻击相关的其他域名包括:bootcdn.net、bootcss.com、staticfile.net、staticfile.org、unionadjs.com、xhsbpza.com、union.macoms.la、newcrbpc.com。
安全建议与缓解措施
- 首要建议:原
polyfill.js作者建议不再使用该库,因为现代浏览器已不需要它。 - 替代方案:如确有需要,可使用 Fastly 和 Cloudflare 提供的可信替代服务。
- 监控与扫描:Sansec 推荐使用其免费的 CSP 监控服务(Sansec Watch)来洞察用户加载的代码。其电子商务后端扫描器(eComscan)也已更新以检测
polyfill.io。 - 开发者行动:应立即审查并移除项目代码中所有对
polyfill.io的引用。
3. Ball: A ball that lives in your dock (github.com)
文章标题: Ball:一个住在你 Dock 栏里的小球
主要内容摘要:
这是一个名为“Ball”的小型应用程序,它作为一个小部件存在于系统的 Dock 栏中。用户可以拖拽这个红色的小球,它会在屏幕上弹来弹去。此外,用户还可以用两根手指在它上面滑动进行交互。
玩法多样,包括:轻弹它、让它弹跳、尝试让它碰到屏幕角落、观察它能弹跳多少次、计算它撞击墙壁的次数等等。作者简单总结道:“它是一个球,很有趣。”
灵感与致谢:
- 该程序的灵感来源于 Nate Heagy 为 OS X Dashboard 制作的小部件。作者对其印象深刻,因为曾有人将其安装在他们五年级教室的 eMac 电脑上。原部件弹跳性更强,颜色也更多,但无法停留在 Dock 栏中。
- 作者同时感谢了 Wessley Roche,他提供了一段关于如何获取 Dock 位置的代码片段。作者在此基础上进行了扩展,尝试估算应用程序的 Dock 图标在被点击时的位置,从而实现小球从图标中弹出的动画效果。
作者最后表达了希望大家喜欢这个小球的愿望。该程序可在 Releases 页面下载。
4. HyperCard Simulator (hcsimulator.com)
# HyperCard 模拟器脚本语言语法说明
本文档描述了 HyperCard 模拟器所使用的脚本语言的文法(Grammar)。
## 语法符号约定
- `<rule>`:表示一条语法规则。
- `[optional]`:表示方括号内的内容是可选的。
- `{group}[*]`:表示花括号内的内容(一个“组”)可以出现零次或多次。
## 核心语法规则
### 1. 处理程序 (`<handler>`)
处理程序是脚本的基本单元,对应于一个消息处理程序。
**语法结构:**
on
- **`on <message> <parameterList>`**: 处理程序的开始,定义了它响应的消息名称和参数列表。
- **`[ { <scriptLine> } [¬] [-- comment] ]*`**: 处理程序的主体,由零行或多行脚本语句(`<scriptLine>`)组成。每行末尾可以有一个可选的续行符 `[¬]` 以及一个可选的注释(以 `--` 开头)。
- **`end <message>`**: 标记处理程序的结束,其中的 `<message>` 应与开始行的消息名称一致。
### 2. 基本语言元素定义
- **标识符 (`<identifier>`)**:
- 正则表达式:`/[A-Z_][A-Z_\d]*/i`
- 规则:以大写字母、小写字母或下划线开头,后续可以是任意字母、下划线或数字。匹配不区分大小写(由 `/i` 标志指定)。
- 示例:`myButton`, `print_message`, `calculate1`。
- **数字 (`<number>`)**:
- 正则表达式:`/[\d]+([.][\d]+)?/`
- 规则:一个或多个数字,后面可以跟随一个可选的小数点(`.`)和一个或多个数字。
- 示例:`10`, `3.14`。
- **字符串 (`<string>`)**:
- 正则表达式:`/"[^"]*"/`
- 规则:以双引号 `"` 开头和结尾,中间是任意数量的非双引号字符。
- 示例:`"Hello, World!"`。
## 其他技术元素
文档中包含了 HTML 标签、表格、列表以及样式脚本的片段,这些是用于构建文档展示页面的 Web 技术细节,而非 HyperCard 脚本语言本身的部分。
5. Git-cliff – Generate changelog from the Git history (git-cliff.org)
Git-cliff:从Git历史生成变更日志
一个高度可定制的变更日志生成工具 ⛰️
高度可定制
Git-cliff 使用基于正则表达式的自定义解析器,并且可以通过配置文件轻松自定义变更日志,以匹配所需的格式。
支持约定式提交
Git-cliff 可以为遵循约定式提交规范的任何 Git 仓库生成变更日志文件。
易于集成
Git-cliff 可以轻松地与你的 Rust/Python/Node.js 项目集成,既可以作为命令行工具使用,也可以作为 Rust 项目的库使用。
6. Show HN: R2R V2 – A open source RAG engine with prod features (github.com)
R2R V2 是一个开源的检索增强生成(RAG)引擎,旨在提供生产环境级别的功能。它构建于RESTful API之上,是一个高级的AI检索系统。
其核心目的是通过集成检索与生成,为复杂的查询提供更丰富、更具上下文感知能力的答案。
主要功能与特性
高级检索与生成能力:
- 基础搜索与RAG:提供基础的语义搜索以及带有引用功能的RAG模式。
- 深度研究代理:集成深度研究API,通过多步推理从知识库和/或互联网获取数据,以生成对复杂查询的深度回答。
生产就绪的基础设施:
- 多模态数据摄入:支持解析多种格式的文件,如
.txt,.pdf,.json,.png,.mp3等。 - 混合搜索:结合了语义搜索和关键词搜索,并通过互惠排序融合(Reciprocal Rank Fusion)技术优化结果。
- 知识图谱:能够自动从文档中提取实体及其关系,构建知识网络。
- 完整的用户与访问管理:包含身份验证和集合(collection)管理系统。
- 多模态数据摄入:支持解析多种格式的文件,如
易于使用与部署:
- 快速安装:可通过
pip install r2r快速安装并以轻量模式运行。 - 完整部署:支持使用 Docker 进行包含完整配置(如PostgreSQL数据库)的部署。
- 多语言SDK:提供 Python 和 JavaScript 的客户端库,便于集成。
- 快速安装:可通过
使用示例
文章展示了三种典型的使用方式:
- 基础搜索:
client.retrieval.search(query="...") - 带引用的RAG:
client.retrieval.rag(query="...") - 深度研究代理:调用
client.retrieval.agent()并配置生成模型参数,进行多步推理。
安装与启动
- 轻量模式:
pip install r2r后设置环境变量并运行python -m r2r.serve。 - 完整模式:克隆仓库后,使用Docker Compose启动全服务(包括数据库)。
社区与支持
项目鼓励社区参与,提供了Discord频道用于支持和讨论,接受功能请求、错误报告和代码贡献。
7. A brief introduction to interval arithmetic (buttondown.email)
核心概念与动机
区间算术通过区间(如 (a, b))而非单一精确值来表示带有不确定性或测量误差的数据。通过比较区间的边界(例如前者的最大值小于后者的最小值),可以更严谨地判断大小关系,从而有效处理现实世界中因测量误差带来的不确定性。
运算规则
- 标量运算:对区间的最小值和最大值同时应用加、减、乘、除操作。
- 区间加减法:将两个区间的最小值与最小值、最大值与最大值分别进行运算。
- 区间乘除法:基本逻辑与加减法类似,但当区间包含负数时,直接相乘会导致错误(必须考虑正负组合以获取真实的最值)。此外,若除数区间跨越
0,则除法结果未定义。
核心问题:过度确定与高估
区间算术在处理同一变量的多次引用时会引发逻辑陷阱,典型表现为 $x^2$ 与 $x*x$ 的结果不同:
- $x^2$:从区间取一个值并自乘,结果更精确(如
(-3, 3)的平方为(0, 9))。 - $x*x$:将两次引用视为独立变量分别取值相乘,导致结果区间更宽(如
(-9, 9))。
这源于对变量的两种解释:[1] 变量是区间内的某个固定未知值;[2] 变量是独立分布于整个区间的值。大多数计算系统倾向于解释 [2],因为其支持局部推理且结果必然包含解释 [1]。但这会导致过度确定(overdetermination)和高估(overestimation),使得计算出的区间边界过宽而失去实际参考价值。
在计算机科学中的应用与争议
- 替代浮点数的潜力:传统浮点数计算存在精度丢失和截断问题。区间算术虽不提供单一精确值,但能保证真实值绝对落在给定的边界内,从而提供更高的准确性。
- 争议与局限:IEEE-754 标准之父 William Kahan 指出,由于上述的“高估”问题,在大多数复杂计算中,区间边界会迅速膨胀至失去意义,因此区间算术无法完全替代浮点数。
- 新发展与特定应用:John Gustafson 提出了通用数字(如 posit)作为相关领域的新探索。此外,区间算术在制造公差等需要严格处理误差界限的特定工程领域中发挥着重要作用。
8. gRPC: The Bad Parts (kmcd.dev)
gRPC 作为高性能 RPC 框架,虽然成功且广泛使用,但也存在一些缺点。
学习曲线复杂
- 术语不直观:例如“unary RPC”对非数学背景开发者不友好,需要反复解释。
- 实现复杂化:简单的 RPC 调用也引入了流式通信才需要的分帧机制,增加了调试难度。
- 工具链繁琐:强制性的代码生成步骤对动态语言开发者不友好,且与现代 Web 开发已有的构建步骤冲突。
Web 兼容性问题
- 依赖 HTTP/2:早期因 HTTP/2 支持不足限制了使用范围,目前浏览器仍无法直接处理 HTTP trailers,因此“原生”gRPC 无法在浏览器中使用。
- gRPC-Web 是折中方案:它通过避免使用 trailers 来解决浏览器兼容问题,但需要运行支持 gRPC-Web 的代理,增加了部署复杂性。
- HTTP/3 采用滞后:未能及时利用 HTTP/3 的性能优势(如解决队头阻塞问题),而其他语言生态已广泛支持 HTTP/2。
数据格式与大小限制
- JSON 映射缺失:早期缺乏标准 JSON 映射,影响了与 JSON 习惯开发者的整合;尽管现在已有标准映射,但 protobuf 文本格式(prototext)的存在被认为多余。
- 消息大小受限:protobuf 要求完整解析消息,处理大文件需自行实现分块逻辑,缺乏标准化方案导致实现不一致且易出错。
生态与工具链
- 社区活跃度不足:部分社区平台显得停滞,可能影响采用。
- 依赖管理复杂:早期自定义脚本下载 protobuf 文件的方式不友好,依赖管理不规范。
- 工具支持在改进:buf CLI 提供了代码生成、linting、变更检测等一体化工具,Postman、Insomnia 等主流工具也已支持 gRPC。
进展与改进
- 部分实现已支持 HTTP/3。
- JSON 映射已标准化。
- 社区在 buf slack 等平台活跃。
- 工具链逐步完善(如 buf CLI 替代 protoc)。
总结来说,gRPC 的缺点主要集中在易用性、Web 集成和标准化方面,但随着社区和工具的发展,这些问题正在逐步得到解决。
9. Will we ever get fusion power? (www.construction-physics.com)
核聚变能源的现状与展望
核聚变是太阳等恒星的能量来源,通过结合轻原子核释放巨大能量。与当前核电站使用的核裂变(分裂原子)相比,聚变燃料(如海水中的氘)几乎取之不尽,能量密度是化石燃料的百万倍,且产生的放射性废物远少于裂变,不会发生堆芯熔毁事故。因此,自1951年起,各国政府已投入数十亿美元进行聚变研究。
主要挑战与技术路径 实现可控聚变的条件极其苛刻:需要将燃料加热至数亿度形成等离子体,并使其保持足够高的密度和约束时间(即满足劳森判据)。高温等离子体无法用物理容器约束(会熔化任何材料),主要技术路径包括:
- 磁约束:利用磁场约束带电等离子体。主流设计包括托卡马克(环形磁场,苏联在1968年取得突破性进展)、仿星器(扭曲磁场)等。
- 惯性约束:利用激光或粒子束瞬间压缩燃料小球,引发聚变(类似氢弹原理)。美国国家点火装置(NIF)在2022年首次实现点火。
研究历程与进展 早期研究乐观,但很快面临等离子体不稳定性、能量损失等复杂物理问题。1970年代因能源危机研究热潮再起,各国建造大型托卡马克(如美国TFTR、欧洲JET、日本JT-60)。虽然不断取得里程碑(如1991年JET实现聚变功率输出,但未达到“能量增益”),但实际反应堆的实现始终遥远。国际热核实验反应堆(ITER)项目自1985年构想,旨在实现能量增益(Q值=10),但建设严重延期超支(预计成本超220亿美元)。
私营部门的兴起 过去十年,尤其是近年来,私营聚变公司大量涌现(截至2023年有43家,累计融资62亿美元)。技术进步(如高温超导磁体、精密控制、先进激光)使更紧凑、经济的反应堆设计成为可能。主要公司采用不同技术路线:
- Commonwealth Fusion Systems:利用新型高温超导磁体建造紧凑托卡马克。
- Helion Energy:采用场反转位形等离子体碰撞方案,试图直接发电。
- Zap Energy:使用剪切流稳定化的Z箍缩装置。 多数公司仍聚焦于成熟的氘-氚燃料和磁约束路径,但探索更少中子产生的替代反应和简化设计以降低成本。
未来展望 尽管历经70余年研发,尚无商业聚变电站。支持者认为,持续的科学理解深化和支撑技术(如超导磁体、模拟计算)正使实用反应堆临近;私营资本涌入可能形成“良性循环”。质疑者则认为,极端工作条件可能使聚变永远无法在成本上与其他低碳电力(如先进裂变、地热、下一代太阳能)竞争。
聚变研究的独特之处在于它结合了基础科学探索(理解高温等离子体行为)与工程技术挑战,进程缓慢。其未来不仅取决于技术突破,也与全球能源政策、投资及能否融入多元化的低碳能源组合密切相关。尽管前景存在不确定性,聚变作为一种理论上丰富、清洁的能源,仍是值得持续探索的选项。
10. Half of Workers Around the World Are Struggling with Burnout (www.bcg.com)
BCG报告:全球近半员工正经历倦怠,职场包容性可使倦怠风险减半
波士顿咨询集团(BCG)最新研究显示,全球八个主要国家(澳大利亚、加拿大、法国、德国、印度、日本、英国、美国)平均有48% 的员工目前正与工作倦怠作斗争。
这项基于1.1万名坐班及一线员工的调查发现,当员工在工作中感到被包容时,其经历倦怠的可能性会降低一半。工作场所的包容性意味着员工感到被重视、被尊重、被支持并拥有归属感,高包容度的员工更可能留任,从而降低企业成本。
研究使用BCG的BLISS指数(一种统计严谨的工具)量化了员工感受到的职场包容性水平,并识别出对员工整体包容感影响最大的四种关键情绪/感受:
- 良好的资源获取渠道
- 高级管理层的支持
- 与直属经理相处时的心理安全感
- 公平且平等的成功机会
报告指出,这四种感受是员工体验包容程度的风向标。当员工在这些方面感受积极时,包容感更强,倦怠感更低。然而,这恰恰是调查中员工满意度最低的几个方面。
此外,倦怠问题在不同群体中分布不均。女性、LGBTQ+群体、残障人士以及无固定办公桌的一线员工的倦怠率比其他群体高出多达26%,且他们报告的包容感也更低。
报告建议,雇主应聚焦于上述四个关键领域,通过倾听员工、诊断当前实践的不足,来识别投入和创新的方向,从而提升包容感并降低倦怠。这不仅有助于企业规避与倦怠相关的成本、吸引人才,更能打造一个健康高效的团队。
11. Anthropic Introduces Claude Projects (support.anthropic.com)
Claude Projects 功能介绍
项目核心功能
Claude Projects 允许用户创建专属项目空间,在其中与 Claude 进行针对性对话,并建立独立的项目知识库。
创建与管理项目
- 创建项目:在项目设置完成后,即可在项目内发起对话。
- 知识库:位于项目主页右侧,上传的内容将用于该项目内所有对话。可添加项目说明文档至知识库。
- 项目共享:Team 或 Enterprise 计划成员可将项目共享给组织内其他成员,并管理共享权限。
- 快速访问:可为重要项目添加星标,方便从项目和对话列表快速查找。
- 对话管理:
- 可将独立对话移入或移出项目。
- 使用 Claude 记忆功能时,每个项目有独立的记忆摘要,非项目对话另有整体摘要。移入/移出项目可管理特定对话所属的记忆上下文。
项目存档与删除
- 归档项目:用于整理项目列表,归档已完成或暂不活跃的项目以便后续查阅。
- 访问归档项目:通过项目页面的“已归档项目”标签页访问。
- 恢复项目:可从归档标签页或项目内操作,将项目重新激活。
- 删除项目:可从项目页面或项目内部进行删除。
相关功能
文章末尾关联了项目权限管理、上下文记忆构建、私密对话及任务组织等相关功能指南。
12. Texture Enhancement for Video Super-Resolution (github.com)
EvTexture: 事件驱动的视频超分辨率纹理增强
概述
本文档是论文 “EvTexture: Event-driven Texture Enhancement for Video Super-Resolution” (ICML 2024) 及其期刊扩展版 “EvTexture++: Event-Driven Texture Enhancement for Video Super-Resolution” (IEEE TPAMI 2026) 的官方PyTorch实现。该技术利用事件相机数据增强视频超分辨率中的纹理细节。
核心信息
- 作者:Dachun Kai, Jiayao Lu, Yueyi Zhang, Xiaoyan Sun (中国科学技术大学)
- 发表:
- EvTexture: ICML 2024
- EvTexture++: IEEE TPAMI 2026 (已接受,代码和预训练模型待发布)
- 仓库动态:包含从2024年5月项目初始化到2026年2月期刊论文被接受的所有重要更新,如视频演示、数据集准备细节、Docker镜像、预训练模型及测试集发布。
功能与演示
项目提供了在Vid4和REDS4测试集上进行 4倍超分辨率 的视频演示结果,展示了模型的性能。
代码与环境
安装依赖
- 基础环境:Miniconda, CUDA Toolkit 11.1.1, PyTorch 1.10.2, torchvision 0.11.3。
- 两种安装方式:
- Conda环境:创建指定Python版本的conda环境,安装对应版本的PyTorch和torchvision,克隆仓库并安装依赖。
- Docker:可直接拉取预构建的镜像或使用提供的Dockerfile自行构建。Docker镜像内含名为
evtexture的完整conda环境。
模型测试
- 下载预训练模型:提供了在REDS和Vimeo-90K数据集上训练的、针对BI退化和4倍超分尺度的模型权重。
- 下载测试数据集:提供了预处理好的REDS4和Vid4测试集(HDF5格式,包含视频帧和事件数据)。
- 运行测试:通过提供的shell脚本指定GPU数量和配置文件进行分布式测试。结果将保存在
results/目录。
数据准备
- 输入要求:模型需要同时输入视频帧和事件数据。
- 数据格式:每个视频及其事件数据被封装在一个HDF5文件中。文件包含
images(视频帧)和voxels_f/voxels_b(前向/后向事件体素)等数据。 - 自定义视频推理:官方表示正在开发方便的脚本,目前尚不可用。
引用与许可
- 引用:提供了ICML 2024和IEEE TPAMI 2026两篇论文的BibTeX格式。
- 联系:遇到问题可通过GitHub Issues或作者邮箱联系。
- 许可与致谢:项目基于Apache-2.0许可证发布。工作建立在BasicSR开源工具箱之上,并借鉴了RAFT、event_utils和EvTexture-jupyter等项目的灵感与代码。
13. Ghosts in the ROM (2012) (www.nycresistor.com)
本文记录了作者对Apple Macintosh SE ROM进行逆向工程,成功提取并还原隐藏开发者照片(彩蛋)的详细过程。
背景与ROM提取
作者获取了一台Macintosh SE,并拆取其两块128KB掩膜ROM芯片进行读取。由于Motorola 68000处理器采用16位数据总线,作者将两块8位ROM的dump数据合并为一个256KB的二进制文件,并通过验证内部可读字符串确认了合并数据的正确性。
逆向工程与代码分析
已知跳转至内存地址 0x41D89A 可触发该彩蛋。为探究其底层机制,作者将二进制文件转换为ELF格式并使用 objdump 进行反汇编分析。
- 核心逻辑:汇编代码显示程序通过A-trap指令调用Macintosh Toolbox。将其还原为C语言伪代码后发现,主函数通过
_GetResource('bbmc')获取资源,并在无限循环中依次绘制四张位图,每次绘制后调用_Delay延迟181个时间单位。 - 渲染机制:绘制函数调用
_UnpackBits,将压缩数据解压至屏幕内存基址(_ScrnBase)。渲染过程为每行解压72字节(对应576像素宽),循环340行,最后额外解压64字节。
数据定位与图像还原
- 定位数据:基于PackBits压缩格式,作者编写了Python解压脚本。通过分析ROM中的资源结构,定位到首张图像的起始偏移地址为
0x1D93C。 - 提取图像:根据ROM中的偏移量指针表,顺利找出其余三张图像的地址(
0x22F3C、0x28040、0x2D024)。 - 还原结果:结合脚本与图像处理工具,成功提取出四张带有1986年11月20日隐藏信息的开发团队照片。
遗留探索
ROM中还存在第五个数据区域(起始于 0x31BA5),该区域未包含图像数据,但根据字符串特征推测可能存储了音频数据,留作后续研究。
14. Google dropping continuous scroll in search results (searchengineland.com)
谷歌搜索结果停止使用无限滚动功能
谷歌搜索将取消无限滚动(Continuous Scroll)的用户体验。此前,当用户滚动浏览完第一页搜索结果后,系统会自动加载更多结果。从现在开始,搜索结果页底部将恢复显示传统的分页导航栏。
生效时间:
- 桌面端:自2024年6月25日起,桌面端谷歌搜索结果将首先移除无限滚动功能。
- 移动端:计划在接下来的几个月内,逐步在移动搜索结果中移除该功能。
功能历史: 无限滚动功能于2021年10月首次在移动搜索中推出,并于2022年12月扩展到桌面搜索。这意味着该功能在桌面端仅持续了约一年半时间。
界面变化:
- 桌面端:页面底部将显示传统的“下一页”(Next)分页按钮。
- 移动端:页面底部将显示“更多结果”(More results)按钮。
谷歌的解释: 谷歌的一位发言人表示,取消无限滚动是为了能更快地响应更多搜索请求,而不是自动加载用户未明确要求的结果。谷歌还指出,自动加载更多结果并未显著提高用户对搜索的满意度。
对网站主和SEO的意义: 这一变化可能影响网站流量和数据。如果用户之前能够通过滚动访问到第二页及之后的内容,现在他们需要主动点击“下一页”按钮。这可能导致来自第二页及之后结果的点击量发生变化。同时,这也可能影响谷歌搜索控制台(Search Console)中的相关数据,因为用户的浏览行为将从“滚动”变为“点击翻页”。
15. Spudguns: Potato Cannon Guide (www.spudguns.org)
文章内容总结
本文介绍了作者为“spudguns.org”网站重新设计并上线的土豆炮指南平台,旨在成为集设计参考、数学计算、创意与相关资源于一体的综合站点。网站主要包含以下功能模块:
- SpudGun Index:作者手动整理的索引,收录了数千个相互关联的土豆炮相关网站,便于用户集中查阅资源。
- Calculators:实用计算工具,可根据土豆炮尺寸计算可用容积、平均炮口压力等参数,帮助用户评估设备性能。
- Physics:提供简明的物理公式,用于推算射击轨迹与结果,支持快速参数输入与近似结果输出。
- Trajectory:包含弹道计算工具及运动数学参考,借鉴自乔治亚州立大学物理与天文学资料,用于预测弹道轨迹。
- 自制高压阀:作者分享了类似市售高价阀门(超过100美元)的自制方案,为爱好者提供低成本替代选择。
网站当前仍在完善左侧菜单内容,但已开放上述核心功能供用户体验。
16. If you're using Polyfill.io code on your site – remove it immediately (www.theregister.com)
17. Brazil's Supreme Court decriminalizes marijuana (www.bloomberg.com)
18. Show HN: Dorkly – Open source feature flags (github.com)
文章标题:Show HN: Dorkly – 开源功能标志
文章内容主要展示了GitHub网站的界面元素和功能列表,未提供Dorkly项目的具体描述。以下为内容摘要:
GitHub核心功能:
- AI代码创建:GitHub Copilot,利用AI辅助编写代码。
- 开发工作流:包括GitHub Actions(自动化工作流)、Codespaces(即时开发环境)、Issues(计划与跟踪工作)、Code Review(管理代码变更)。
- 应用安全:GitHub Advanced Security,用于发现和修复漏洞;代码安全,在构建过程中确保安全;Secret protection,防止信息泄露。
探索选项:
- 按公司大小:适用于企业、中小型团队、初创公司、非营利组织。
- 按用例:涵盖应用现代化、DevSecOps、DevOps、CI/CD等。
- 按行业:包括医疗保健、金融服务、制造业、政府机构。
- 按主题:AI、软件开发、DevOps、安全等。
- 按类型:客户案例、活动与网络研讨会、电子书与报告、商业见解、GitHub技能。
支持与服务:文档、客户支持、社区论坛、信任中心、合作伙伴。
社区与项目:GitHub Sponsors(资助开源开发者)、安全实验室、维护者社区、加速器、GitHub Stars等。
企业解决方案:企业平台、AI驱动的开发者平台,附加功能如GitHub Advanced Security、Copilot for Business、高级支持。
用户交互元素:
- 反馈表单:用户可提交反馈并选择是否包含电子邮件地址。
- 保存的搜索:用于快速过滤搜索结果。
- 登录/注册:用户账户管理选项。
- 外观设置:界面自定义设置。
内容整体强调GitHub的生态系统和工具,但未涉及Dorkly的具体细节或功能标志的实现信息。
19. Supershoes are reshaping distance running (www.technologyreview.com)
超级跑鞋正重塑长跑运动。自2016年Nike推出Vaporfly以来,结合轻质回弹泡沫与碳纤维板的高性能跑鞋彻底改变了精英长跑。这类技术能显著提升跑步经济性——研究显示平均提高约4%,使运动员在马拉松等项目中跑得更快。自2020年以来,所有从5000米到马拉松的公路及室外径赛世界纪录均由搭载此类技术的跑鞋创造。
肯尼亚作为长跑强国,深受影响。像凯尔文·基普图姆(已故)等顶尖运动员依靠超级跑鞋屡创纪录,同时鞋子也被视为减少身体损耗、加速恢复的训练工具,有助于延长职业生涯。然而,这项技术也加剧了不平等:有赞助的运动员可轻松获得装备,而无赞助的贫困年轻跑者则面临高昂成本(一双鞋可能相当于一年房租)。此外,不同运动员对鞋子的生物力学响应存在差异(收益从2%到6%不等),引发了关于比赛公平性及成绩可比性的争议——批评者认为过度关注装备削弱了对运动员自身能力的评价。
鞋厂通过优化泡沫材料(如Nike的PEBA)、加入碳纤维板及极致轻量化设计来提升性能。尽管技术已不可或缺,但基普图姆的教练等强调,其成功仍建立在严酷训练、个人天赋及精神韧性之上。超级跑鞋既推动了成绩飞跃,也改变了长跑运动的经济生态与文化想象。
20. FDA warns top U.S. bakery not to claim foods contain allergens when they don't (www.npr.org)
美国食品药品监督管理局(FDA)于本周二向美国最大商业烘焙企业之一的**宾堡面包公司(Bimbo Bakeries USA)**发出警告,要求其停止在产品标签上标注实际并不存在的潜在危险过敏原成分。该公司旗下拥有Sara Lee、Oroweat、Thomas'、Entenmann's及Ball Park等多个知名品牌。
FDA检查人员发现,该公司产品(如面包)的标签上列出了芝麻或坚果等过敏原,但这些成分并未实际存在于食品中。根据FDA法规,此类产品属于“标签错误”。FDA在发送给宾堡公司宾夕法尼亚州总部的警告信中指出,“食品标签必须真实,不得具有误导性”。此次警告源于FDA去年年底在亚利桑那州凤凰城和堪萨斯州托皮卡两家宾堡工厂的检查。
FDA官员同时强调,过敏原标注并不能替代工厂内预防交叉污染的措施。
非营利组织“食物过敏研究与教育”(FARE)的倡导者表示,这种做法对美国约3300万食物过敏患者“有害无益”。该组织首席执行官Sung Poblete指出,过敏患者必须时刻警惕可能引发危及生命反应的食物,而准确的标签对其健康与安全至关重要。宾堡公司的做法破坏了消费者的信任,并进一步限制了他们的选择。
总部位于墨西哥城的宾堡集团将其美国业务称为美国最大的商业烘焙公司。公司官员在邮件中表示,他们“非常重视保护有过敏敏感性的消费者”,并正与FDA沟通以解决此问题。
此次标签问题的关注,与2022年生效的一项新法律有关。该法律将芝麻添加到了必须在包装上列出的主要过敏原名单中。由于在工厂内防止芝麻污染到其他区域既困难又昂贵,一些公司开始往原本不含芝麻的产品中添加少量芝麻,以规避潜在的责任和成本。FDA认为这违背了相关法规的精神。包括宾堡在内的部分公司,则选择在标签上标注过敏原作为交叉污染的“预防措施”。FDA承认,产品“可能含有”某些过敏原的声明“可能被视为真实且不具误导性”。宾堡公司需在7月8日前采取补救措施,或解释其标签为何未违反FDA标准。
21. Making AI better at math tutoring (blog.khanacademy.org)
22. FICO and the Credit Bureau Cartel (www.thebignewsletter.com)
文章核心摘要
背景与问题
美国抵押贷款行业长期依赖FICO信用评分及三大信用局(Equifax、Experian、TransUnion)的数据,形成近乎垄断的市场结构。近年来,FICO和信用局大幅提高服务价格(部分涨幅达400%-500%),导致抵押贷款机构成本剧增,而消费者间接承担这些费用。消费者金融保护局(CFPB)局长罗希特·乔普拉批评这种现象,称其为“变相税费”,并呼吁监管干预。
历史与垄断形成
信用报告体系源自美国早期的本地化信用调查,1970年《公平信用报告法》(FCRA)推动了全国信用数据标准化,但也促成了行业整合。目前三大信用局控制信用数据,FICO垄断信用评分算法,两者通过合同条款(如“无同等产品”条款和“动态版税”制度)形成卡特尔式联盟,阻止竞争并协调定价。
行业影响
- 抵押贷款机构:面临成本飙升,尤其是独立贷款机构因利润压缩被迫退出市场。
- 消费者:信用报告错误率高(44%消费者发现错误),且无法将信用数据跨机构复用,导致重复付费。
- 市场扭曲:FICO和信用局在抵押贷款萎缩期仍通过提价提升利润(如FICO运营利润率达51%),凸显其定价权。
监管与争议
- CFPB提出动用FCRA中的“价格上限”条款,并探索推动信用数据可移植性(如允许消费者携带信用信息跨机构使用)。
- 联邦住房金融局(FHFA)曾要求同时使用FICO和VantageScore,但未打破垄断,反而增加成本。
- 反垄断诉讼正在推进,参议员乔什·霍利等呼吁调查FICO的垄断行为。
潜在解决方案
- 价格管制:对信用报告服务实施公用事业式监管。
- 促进竞争:允许使用替代评分模型(如VantageScore),改革政府采购标准。
- 数据可移植性:减少重复信用查询成本。
- 加强反垄断执法:针对合同限制条款和协调定价行为进行调查。
总结
FICO与信用局的垄断问题反映了美国信用体系从公共工具向私营卡特尔的演变。监管机构、行业参与者及立法者正寻求平衡创新与公平竞争的路径,但彻底解决仍需系统性改革。这一案例也凸显了中小企业在面对垄断中间机构时的共同困境,以及政府监管在维护市场公正中的关键作用。
23. Navigating Starlink's FCC Paper Trail (blog.apnic.net)
Starlink的FCC文件研究指南
研究背景与挑战
Starlink(由SpaceX运营)作为新兴低轨卫星互联网系统,其公开信息往往缺乏细节且不可靠。学术研究受限于跨学科复杂性(涵盖轨道工程、射频工程、制造、网络等领域)。然而,SpaceX向美国联邦通信委员会(FCC)提交的申请文件成为获取权威技术信息的重要来源。
FCC文件的特点
- 文件繁杂:申请包含大量修订、反对意见及回应,需按时间顺序或逆序梳理以理解全貌。
- 访问不便:在线门户系统易崩溃,增加查阅难度。
- 博弈性质:传统卫星运营商通过技术反对施加阻力,SpaceX则通过系统方案变更增加对手成本,双方指控公开化。
文件类型与结构
核心文件编号
- SAT-LOA-*:卫星发射与运营申请(分第一代与第二代星座)。
- SES-LIC-*:地面设备(如用户终端)许可申请。
- SAT-AMD-* / SAT-MOD-*:对应申请的修订与修改。
关键文档内容
- 法律说明:概述申请理由及系统目标。
- 技术说明:详细技术方案与合规论证(需轨道力学、无线电工程等知识)。
- 豁免请求:申请特殊规则适用。
- 技术报告:列出轨道配置、波束参数等核心数据。
从FCC文件获得的关键发现
第一代星座(Gen 1)
- 初始申请(SAT-LOA-20161115-00118):规划4,425颗卫星,轨道高度1,110-1,325km,最终未实施但揭示技术细节:
- 波束成形技术确保地面覆盖近圆形。
- 卫星动态调整发射功率以保证地表信号均匀,且需符合国际电信联盟(ITU)干扰限制。
- 仰角要求从40°降至25°(保护地面微波链路)。
- 实际部署方案:经多次修改后,星座包含53°、53.2°、70°和97.6°倾角的轨道面,高度540-570km,决定了服务覆盖纬度范围。
用户终端(Dishy)演进
- 初始许可(SES-LIC-20190211-00151):申请100万台Ku波段设备,仰角要求≥25°(后升至40°)。
- 后续扩展:包括动中通终端(ESIM)、无数量限制的V2终端、高性能固定终端等,均未提及Ka波段。
第二代星座(Gen 2)
- 部分批准(SAT-LOA-20200526-00055):2022年12月获部分授权,覆盖7,500颗卫星,分布在525km/53°、530km/43°、535km/33°轨道面。
- 未获批请求:SpaceX多次申请340-360km轨道用于手机直连卫星,截至2024年3月仍未获批准。
- 潜力分析:目前用户下行依赖Ku波段(理论单小区容量≤20 Gbps),若启用Ka波段可额外增加25.2 Gbps,但相关终端许可尚未申请。
其他争议与动态
- 天文观测影响:天文学家多次向FCC提交反对意见,指出卫星过境干扰天文观测。
- 空间安全:SpaceX向FCC报告卫星近距避碰及机动情况,并强调卫星设计寿命较短以加速技术迭代。
- 规避审查猜测:SpaceX通过汤加当局向ITU申请近30,000颗卫星的新星座,可能试图绕过FCC审查,或仅为施压竞争对手的策略。
结语
FCC文件是解密Starlink技术细节的关键渠道,但其查阅过程复杂且充满博弈。这些文件不仅揭示了系统设计演进,也反映了卫星通信领域的监管与商业竞争态势。
24. The album art of Phil Hartman(n) (2022) (www.conorherbert.com)
早期经历与教育
传奇喜剧演员Phil Hartman(原名Phil Hartmann)在凭借《周六夜现场》(SNL)和《辛普森一家》闻名以及遭遇悲剧结局之前,曾拥有一段鲜为人知的专辑封面设计生涯。他早年曾在圣莫尼卡城市学院学习艺术,辍学后为摇滚乐队Rockin' Foo担任巡回管理员,并设计了该乐队的前两张专辑封面。1972年,他从加州州立大学平面设计专业毕业,随后成立了自己的平面设计工作室。
设计生涯与代表作品
通过其哥哥所在的Hartmann & Goodman经纪公司,Phil开始为多支西海岸摇滚乐队设计专辑封面,主要合作对象包括:
- Poco乐队:为其设计了多张专辑,包括极简风格的《Seven》、带有纳瓦霍纺织图案和木屋插图的《Cantamos》,以及1978年让他最为自豪、挂在办公室墙上的极简主义奔马封面《Legend》。他还负责了该乐队后期的《Ghost Town》和《Inamorata》。
- America乐队:设计了畅销精选集《History》(融合成员过往元素的插画),以及《Hideaway》、《Harbor》、《Live》和《Silent Letter》等专辑。
- 其他合作:为Bones、The Pure Food and Drug Act、Harvey Mandel、Michael Murphey、Silver及The Firesign Theatre等音乐人和乐队设计过封面。
转型喜剧与演艺事业
1975年,Phil加入了Groundlings喜剧团,逐渐将重心转向表演。他协助开发了《Pee-wee Herman Show》,并在1985年联合编剧及出演电影《Pee-wee's Big Adventure》。这次成功帮助他获得了SNL的演员职位。1985年,他去掉了姓氏中的第二个“n”,正式更名为Phil Hartman,就此结束平面设计生涯,迈向全国喜剧舞台。
设计遗产与事实澄清
1986年Phil在SNL首秀后不久,他设计封面的America乐队《History》专辑获得了四白金销量认证。文章同时澄清了部分网络谣言,明确指出他并未设计Steely Dan的《Aja》或America的《Hearts》。尽管Phil生前自称设计过40多张专辑封面,但目前Discogs数据库仅记录了21张,意味着仍有许多他的早期设计作品尚未被大众发掘和记录。
25. Paramount Erases Mtv.com Archives, Wipes Music, Culture History After 30+ Years (www.showbiz411.com)
派拉蒙全球公司已清除其旗下MTV.com的全部历史存档,包括自1990年代初期以来的音乐、政治报道及新闻内容,仅保留了一个宣传真人秀节目的占位页面。这一行为导致该网站三十年来积累的报道、采访及文化历史资料几乎全部消失,VH1.com也遭遇了同样情况。
此举被视为没有先例且缺乏正当理由,主要被批评为出于“吝啬和愚蠢”。MTV新闻部门曾以其记者(如Kurt Loder、Sway等)的报道,在音乐、娱乐和政治领域具有重要影响力,尤其在政治竞选期间。如今,这些被形容为“数以十万计小时”的珍贵采访和报道,已被真人秀节目链接取代。
此举引发了MTV.com前员工和自由撰稿人的强烈不满。多名作者表示,他们的职业生涯成果与心血在一夜之间被抹去。一些作者设法将部分文章保存至互联网档案馆,但绝大多数内容已不可逆地消失。
文章指出,这一事件不仅是公司对新闻工作的漠视,也敲响了警钟:互联网内容并非永恒不变,依赖在线存档而没有实体或独立备份,存在巨大风险。
26. Vigorous Exercise, Cognitive Decline, and High Blood Pressure (alz-journals.onlinelibrary.wiley.com)
27. Fixing QuickLook (2023) (foon.uk)
修复macOS QuickLook(2023)
作者在从macOS Mojave升级至Ventura后,发现Apple对QuickLook功能进行了修改:预览图像文件时,系统会自动裁剪图片圆角并添加不合适的边框。此行为影响了照片、游戏素材及UI设计元素的预览准确性。作者经过调查,确认系统设置或defaults.write命令无法关闭此功能,于是决定通过技术手段进行修复。
问题定位与调试
- QuickLook架构分析
QuickLook通过QLPreviewPanel实现预览窗口,该窗口在应用中是单例。作者从Finder进程入手,通过LLDB调试器(需先禁用SIP)附加到Finder,并找到QLPreviewPanel实例。 - 发现关键视图
查看面板的视图层级后,发现预览内容实际由NSRemoteView渲染。通过NSRemoteView的_serviceProcessIdentifier方法,定位到负责渲染的独立进程QuickLookUIService。 - 识别圆角与边框来源
使用Xcode视图调试器附加到QuickLookUIService进程,发现最前端的QLBorderView负责绘制边框,而其父视图的图层设置了cornerRadius导致圆角裁剪。通过手动修改图层属性(setBorderWidth:0和setMasksToBounds:0)临时修复了单个预览窗口的显示。
持久化修复方案
由于每次预览新文件时会创建新视图,需通过代码注入实现持久化修复:
- 禁用边框
找到控制边框的enableBorder和disableBorder方法。通过修改enableBorder函数的入口指令,使其直接跳转至disableBorder方法(使用ARM64的b指令)。 - 禁用圆角
找到更新圆角的updateCornerRadius方法,将其首条指令替换为ret指令(ARM64编码为0xd65f03c0),使该函数直接返回。 - 脚本实现
作者编写了LLDB脚本,自动附加到所有QuickLook进程并执行上述内存补丁。脚本通过符号查找定位函数地址,再通过process.WriteMemory修改指令。
技术细节
- 指令修补:针对ARM64架构,直接修改函数机器码实现行为覆盖。
- 视图层级:问题涉及多层视图嵌套,需定位到具体负责渲染的图层。
- 进程隔离:QuickLook使用独立进程渲染,需跨进程调试。
结论
作者通过逆向工程和运行时修补,成功恢复了QuickLook的原始显示效果。修复脚本已开源(文章末尾提供链接),用户可运行脚本自动修补系统行为。文章体现了对macOS内部机制的深入探索,以及通过黑客精神解决系统限制的过程。
28. The Point of the Banach Tarski Theorem (2015) (www.solipsys.co.uk)
巴拿赫-塔斯基定理的核心意义
本文旨在阐释巴拿赫-塔斯基定理(Banach-Tarski Theorem)在测度论中的深层意义,指出该定理揭示了我们对“测度”的直观期望属性之间存在不可调和的矛盾。
定理的直观描述
巴拿赫-塔斯基定理指出,在三维空间中,一个实心球可被分割成有限个碎片,经移动和重组后,能形成两个与原球大小完全相同的实心球。这一结果严重违背常理与物理直觉。
测度的期望属性与维塔利集矛盾
在数学中,“测度”用于量化长度、面积或体积。人们通常期望测度满足以下自然属性:
- 基础属性:空集测度为0,单位对象测度为1(或大于0)。
- 可数可加性:可数无限个不相交集合的并集测度,等于各集合测度之和。
- 等距不变性:对集合进行平移或旋转等刚体变换(等距变换)不改变其测度。
- 普遍定义:所有有界集合均存在定义的测度。
通过构造维塔利集(Vitali Set) 可证明这些属性相互矛盾:若满足上述条件,推导出的区间测度要么为0,要么为无穷大,无法等于1。因此,这些合理的期望在数学上无法同时成立。
维度差异与有限可加性的局限
为解决矛盾,数学家尝试将“可数可加性”放宽为“有限可加性”。
- 在一维和二维空间中,存在同时满足有限可加性、等距不变性且对所有有界集合有定义的测度。
- 但在三维空间中,巴拿赫-塔斯基定理打破了这一可能。该定理证明三维球体可进行悖论性分解,表明即使降级为有限可加性,也无法在三维空间中同时满足上述测度属性。这正是该定理的核心价值:它界定了测度论在三维及以上空间中的局限性。
选择公理的影响
无论是构造一维不可测集(维塔利集),还是实现三维的悖论分解,均严格依赖于选择公理(Axiom of Choice)。因此,拒绝接受选择公理是避免此类悖论的潜在途径,但这属于数学基础领域的另一探讨范畴。
29. Podman Desktop 1.11: Light mode, Kubernetes features, macOS improvements (podman-desktop.io)
Podman Desktop 1.11 发布总结
Podman Desktop 1.11 版本带来了多项备受期待的新功能、性能优化以及用户体验改进,重点涵盖界面主题、macOS 架构支持、Kubernetes 管理和 UI 升级。
核心新增功能与改进
- 实验性浅色模式 (Light Mode):引入了用户呼声最高的浅色主题。用户可在“设置 > 首选项”中开启更明亮的界面。该功能目前处于实验阶段,后续将持续优化以提升无障碍体验。
- macOS Apple Silicon Rosetta 支持:新增对 macOS Rosetta 的支持(基于 Podman 5.1)。用户可在设置中直接启用或禁用此功能,使得在 Apple Silicon 芯片上构建或运行 AMD64 镜像和容器的速度几乎与 ARM64 架构一致。
- Kubernetes 管理增强:
- 新增 Kubernetes 节点 (Node) 和存储卷 (Volume/PVC) 列表页面。
- 在 K8s Pods 视图中显示节点和命名空间 (namespace) 信息,全面提升集群管理体验。
- 用户界面 (UI) 优化:对容器列表页面等多个 UI 组件进行了显著升级。将
MessageBox、DropdownMenu和QuickPickInput等组件迁移至 Modal 弹窗组件,提升整体交互一致性。 - 增强的 Manifest 支持:优化了多架构 (Multi-arch) 镜像的处理方式,构建为 Manifest 的镜像现在会被自动分组显示,简化了镜像管理流程。
其他重要特性更新
- 底层引擎升级:将底层 Podman 引擎从 v5.0.3 升级至 v5.1.1。
- 扩展 (Extensions) 管理:扩展在应用重启后将保持其禁用状态;允许扩展暴露自身的 API;在扩展请求登录时增加用户确认提示。
- 构建与配置:在构建页面新增构建参数 (build arguments) 支持;支持通过文件组件直接选择文件夹。
- 系统与维护:在更新 Podman Desktop 时自动创建系统任务;优化了文件系统监听 (fs watch) 过程中的目录创建处理。
关键 Bug 修复
本版本修复了大量影响稳定性和用户体验的缺陷,主要包括:
- UI 与交互修复:修复了仪表盘 UI、提供程序卡片 UI、表单页面阴影缺失,以及空屏幕上的扩展链接和文本显示问题。修复了按钮在加载状态下未显示 Spinner 动画的问题。
- 底层逻辑修复:修复了镜像列表中
Image.Id缺少sha256:前缀的问题;修正了使用podman machine inspect判断 rootful 状态的逻辑。 - 环境与兼容性:增加了当 WSL 似乎需要重启时的提示建议;修复了释放
FileSystemWatcher时未正确关闭监听器的问题;增加了扩展激活的默认超时时间。 - 组件状态修复:修复了表格子级选择、表格渲染映射未定义值处理,以及加载图标按钮未正确处理失败状态等问题。
社区与获取方式
本版本合并了众多社区开发者的贡献,并迎来了多位新贡献者。用户可通过官方网站的下载页面获取最新版本,或访问 GitHub 仓库查看完整的修复列表并参与后续开发。
30. My (Neo)Vim workflow (seniormars.com)
文章摘要:我的 (Neo)Vim 工作流
本文详细介绍了作者 SeniorMars 如何围绕 Neovim 构建一个高度个性化且高效的开发环境,旨在展示其工作流的哲学、配置技巧与核心插件。
核心理念:个性化开发环境 (PDE)
- 目标:创建一个介于基础文本编辑器和完整IDE之间、量身定制的开发环境,以提高生产效率、舒适度和自给自足能力。
- 背景:作者因早期硬件限制从 Vim 开始,逐渐深化其使用,并将 Neovim 优化为专属的 PDE。
基础体验优化
这些配置与插件旨在完善 Vim 的核心功能,使其更易用、更强大。
搜索与替换:
- 设置
ignorecase和smartcase实现智能大小写搜索。 - 使用
inccommand = "split"实现实时替换预览。 - 通过插件
vim-grepper集成ripgrep进行快速项目内搜索。
- 设置
命令与移动:
- 使用
wilder.nvim增强 Ex 命令(:命令)的自动补全和模糊查找。 - 自定义键映射优化窗口导航(如
<Space>h/j/k/l)和窗口大小调整。 - 插件
vim-surround、nvim-autopairs、vim-matchup等用于增强文本对象操作、自动配对和括号匹配。
- 使用
撤销与重做:
- 启用
undofile永久保存撤销历史。 - 插件
undotree提供可视化撤销树,并结合auto-session在项目会话间保存状态。
- 启用
实用功能增强:
- 快速修复列表:使用
nvim-bqf插件增强快速修复窗口的交互性。 - 拼写检查:自定义函数一键切换拼写检查,并使用
<Leader>z快速修正错误。 - 状态栏:用纯 Lua 编写自定义状态栏,高效显示模式、Git 分支、文件路径、Git 变更统计、字数统计、行列号、文件大小和类型等信息,并实现缓存机制。
- 格式化:结合内置命令与
neoformat插件进行代码格式化。 - 文件管理:优化
netrw内置文件浏览器设置。 - Git 集成:使用
vim-fugitive进行全面的 Git 操作,并配置 Neovim 为首选的 diff 和合并工具。
- 快速修复列表:使用
释放 Neovim 的全部潜力
利用 Neovim 的现代特性(如 Lua)和强大插件,将编辑器提升到新高度。
Treesitter:
- 核心价值:利用抽象语法树(AST)实现更精确、上下文感知的语法高亮、代码折叠和文本对象操作。
- 配置:通过
nvim-treesitter及相关插件(如treesitter-textobjects)启用高亮、缩进、文本对象(选择、移动、交换参数)和增量选择。 - 应用:在混合语言文件(如嵌入 Rust 和 LaTeX 的 Markdown)中表现优异。
终端集成:
- 使用
toggleterm.nvim创建持久化、可定制的终端。 - 特别配置了与
LazyGit深度集成的浮动终端,实现高效的 Git 可视化操作。
- 使用
模糊查找(Telescope):
- 作为核心的“瑞士军刀”插件,用于查找文件、代码、文档、键映射等。
- 配置了
telescope-frecency(按使用频率排序文件)并自定义预览器以处理大文件和二进制文件。 - 统一设置为
ivy主题,并自定义了按键映射。
代码补全:
- Copilot:使用
copilot.lua集成 GitHub Copilot,主要用于生成样板代码和测试用例,可自定义触发。 - 核心补全引擎:使用
coc.nvim,提供全面的代码补全、LSP 支持、诊断、代码操作和片段功能。- 深度自定义了
coc.nvim的配置,包括按键映射(如 Tab/S-Tab 补全)、悬浮文档、高亮符号等。 - 特别利用
coc.nvim集成了ltex语言服务器,用于 LaTeX 和 Markdown 的语法和风格检查。
- 深度自定义了
- Copilot:使用
LaTeX 支持:
- 使用
vimtex插件提供编译、正向/反向搜索等核心功能。 - 配置使用
sioyek作为 PDF 阅读器。
- 使用
总结
作者展示了其通过多年实践打磨出的 NeoVim 工作流,核心在于根据个人需求(作为一名数学专业学生和开发者)进行深度定制。通过精心选择的插件组合和细致的配置,将 NeoVim 打造成为一个既强大又高效的个性化开发环境,充分体现了“工具服务于人”的理念。文末提供了完整的配置文件仓库链接。
31. Rabbit data breach: all r1 responses ever given can be downloaded (rabbitu.de)
32. Moving objects precisely with sound (actu.epfl.ch)
研究概述
洛桑联邦理工学院(EPFL)的研究团队成功利用声波引导漂浮物体穿过水生障碍物。该研究旨在克服传统“光镊”技术仅在高度受控的静态环境中有效的局限性,开发出一种能在动态、非受控环境中精确操纵物体的新方法,为生物医学等领域带来巨大潜力。
核心技术与原理
- 波动量整形(Wave Momentum Shaping):该方法受光学“波前整形”技术启发,并首次应用于物体移动。与光镊通过光“热点”捕获粒子不同,该技术利用声波轻轻推动物体。
- 环境无关性:基于动量守恒原理,该方法不依赖于物体的物理属性或周围环境,仅需获取物体的位置信息即可实现控制。
- 多维控制:不仅能引导球形物体沿预定路径移动,还能控制物体旋转及操纵复杂形状的漂浮物(如折纸莲花)。
实验设置与功能
- 硬件结构:在大型水缸两端设置扬声器阵列(发射可听声波)和麦克风阵列(接收反馈),顶部配备摄像头捕捉物体位置。
- 运行机制:麦克风收集声波反弹的“散射矩阵”反馈,结合摄像头的位置数据,系统可实时计算出声波的最佳动量,从而精确引导水面上的漂浮物(如乒乓球)。
- 动态避障:通过在水缸中引入静止和移动的障碍物,实验证明该方法能在类似人体的复杂、动态非受控环境中有效导航。
应用前景
- 生物医学:声波具有无害和非侵入性的特点。该技术可用于非侵入性靶向药物输送(如将药物直接推向肿瘤细胞),以及在生物分析或组织工程中无接触操纵细胞,避免物理接触造成的损伤或污染。
- 3D打印:可用于在物体固化前精确排列微观粒子。
未来发展方向
研究团队计划将该技术从宏观尺度缩小至微观尺度,下一步目标是在显微镜下利用超声波移动细胞。此外,研究人员认为该方法未来也有望应用于光波控制。