posts

交换 ThinkPad X1 Carbon Gen12 的 Fn 和左 Ctrl 键帽

用了快 20 年的 ThinkPad,一直习惯了 Fn 是在键盘最左下角,左 Ctrl 是在更靠近空格一侧,用左手小拇指卷起来压 Ctrl 已经成了肌肉记忆

不过联想在好几年前就允许在 BIOS 里交换这两个键实际的功能,让习惯 Ctrl 在最外面的人,也能用最外 Ctrl 而 Fn 在里面的布局

到了 ThinkPad X1 Carbon Gen12 (2024) 这一代,干脆物理键帽也是 Ctrl 在外了。虽然 BIOS 里能把键位逻辑改回之前的,但盲打按着和视觉上看着是反的,逼死强迫症

好在这一代也让这两个键的键帽尺寸一样,看起来应该是可以物理交换的,之前在 51nb 上也有人说换过,但都是说起来很容易的样子,没有更细节的实操过程,自己担心别手潮给掰断卡扣,反倒出事

最近搜到 https://support.lenovo.com/us/en/documentation/sg10846/Replaceable_keycap_(task)?language=en 有 X1C Gen14 官方替换键帽的详细图文教程,又找到 https://www.reddit.com/r/thinkpad/comments/1eb2ymr/swapped_fn_and_ctrl_key_physically_on_x1_carbon/ 这个帖,目测自己的 Gen12 跟 Gen14 是一样的结构,经过亲自验证,确定拆键帽的操作流程为

  1. 用塑料薄片(比如购物卡)从键帽靠屏幕一侧,分别撬两个角,小幅度抬起一点,听到咔哒声,会感受到卡扣脱离
  2. 手指拉起键帽翘起的一侧,往触摸板方向推一下滑出来

装回去时先从靠触摸板一侧斜着往屏幕方向推,把靠触摸板一侧的两个卡扣滑进去,然后沿平时打字手指往下按的方向,把靠屏幕一侧两个卡扣也摁上就行了

实际撬的时候,注意伸进去不要太深,大概就是我伸进去这个程度或更少一些,翘起来一边

撬键帽时从靠屏幕一侧两个角开始,伸进去一点就好

撬键帽时从靠屏幕一侧两个角开始,伸进去一点就好

撬开后是这样,注意我这里就是撬太深了,导致一开始把蓝色箭头处的剪刀脚结构中轴给撬了出来,还好把整个剪刀脚结构取下来能复原,然后再装回去的

撬开后的键帽和剪刀脚结构,注意蓝色箭头处我把剪刀脚中轴给意外撬出来了

撬开后的键帽和剪刀脚结构,注意蓝色箭头处我把剪刀脚中轴给意外撬出来了

修复 Fn 键下的剪刀脚结构后现在完美交换。全过程以联想官方那个 Gen14 的图文教程为准就好,虽然 Gen12 的官方手册里没有换键帽这个章节,但键帽结构实际是一样的。撬的时候用巧劲,别像我一开始撬板插太深进到剪刀脚下面还往上撬结果把剪刀脚中轴给拉出来

奥奥上小学了

几年过去,奥奥也上小学啦

作为二胎家长,对学校里各种要求更熟悉,没那么多新奇感,也没那么焦虑,一切都更淡定

奥奥目前看来倒是还挺开心的,特别是学校饭菜和点心好像更符合他的期望,每天睡前都特别期待看看明天学校吃什么

最近两年学校越来越强调快乐教育,每节课的时间从我上学那会的 45 分钟压缩到 40 分钟后,现在已经是 35 分钟了。早上莫莫还是按 7 点 50 前到座位的节奏去上学,到奥奥这会就变成「不要来太早,太早到了老师还没来呢」「八点二十能坐到座位上就好」,所以现在分开送两个娃

目前为止学校里学习的内容,大多之前在做幼小衔接时都有覆盖,只是拼音一直没学好,现在要磕磕绊绊多练习了,以及跳绳到现在还没法稳定连续跳起来,更别说冲刺一分钟跳多少下

前一段时间经常忘了带水杯回家,跟哥哥讨论可以用「拍拍法」来在放学时做下检查,从那之后到现在就没再忘。开学快一个月,还没丢过笔和橡皮等文具,甚是欣慰。选的 X 课居然都在自己班教室上课,也省得跑来跑去

小小的身体背着大大的书包

小小的身体背着大大的书包

奇怪的电子设备修理经历

最近“修”好了几台电子设备,给“修”字加引号,是因为其实也没有修这个动作,莫名其妙地坏,又莫名其妙的好了

红米 X65 电视 L65M5-RK 背光不亮

故障表现

这台电视机是 2021 年买了在家里客厅使用的,这个夏天的某一天,娃突然说屏幕没显示,仔细分辨后并不是机器彻底坏了或屏坏了,而是屏下背光不亮了。具体表现是开机后屏幕不亮,或闪一下,但是有声音,贴近看能看到非常暗的画面

排查定位

先用重启大法,长按开关和拔电源长按开关都试过,怎样都不行

上网搜各种表现,说大概率是背光坏了。打电话问官方售后,因为已经过保,且这个屏幕尺寸相对偏大,报价大几百,还不确定能弄好,这个价格就不如换个新的了。在 B 站上搜换背光的视频,还是有点麻烦的,主要就是要两人操作且小心点别把液晶面板给弄坏了

自己动手更换小米电视L65M5-AD背光,省了500块!教程!#小米电视#L65M5-AD#小米65寸电视 BV1U7421K7Am

最终决定还是给家里换个新电视,这个旧的弄来公司,如果能修好就给某个会议室用,修不好么就换铁盆吧

「维修」过程

在淘宝上按型号买好背光条,把家里之前用来拆集成吊顶的吸盘也带来公司,以备拆机时吸液晶面板用

还好有一辆MPV能把电视机扛来办公室

还好有一辆MPV能把电视机扛来办公室

某天中午吃过饭,拉上伞破一起开搞,期间引来一堆人路过围观「原来电视机里面是这样的呀!」「电视机还能修?」

在公司先确认故障表现还是一样的,各种哼哧哼哧拆,螺丝真的多,而且还有好几处是隐藏的,要拆掉前面部分才能露出来

面板拆下来时发现是用胶粘在框上的,看起来跟之前办公室那批面板脱落的 Dell P2418D 显示器一样,难怪现在大部分电视机都说不允许吊装时倾斜向下

最后拆到背光后那层导光纸时,原来是粘上去的,贼难揭下来,中间还撕破了一点

在最后准备换背光条时,还插电验证了一下,还是原来的问题表现,背光闪一下就不亮了。等真正看从哪根开始换时,随口说要不再通电看下?于是插电按了一次开关,亮瞎狗眼的整片背光亮起来,好了!

各种验证,背光的确是好了,就这样莫名其妙也不知道动了哪里,如果是接触不良啥的,那凭什么拆的过程和准备换之前的第一次验证又不行

然后就是继续哼哧哼哧装回去,过程中继续验证面板没被整坏,期间有出现过面板左右两边亮度不一样的情况,估计是走的不同的排线没插好,重新插拔面板排线后没再出现这个情况。后来还发现面板周围那圈胶估计不太牢了,就用宽的打包胶带给四周贴了下,挂到一个电视推车架上,留在公司会议室里给充公吧

后面几天持续验证,确认不是一时的回光返照,而是真的持续可用,但家里新电视都买了,也懒得再拖回去,至于已经到货的背光条,问过淘宝商家说不影响二次销售可以无理由退货,那就退了吧

ThinkPad X1 Carbon Gen6 屏幕无显示

故障表现

这台 X1C2018 笔记本是从闲鱼收的,给娃拿来学编程用,大致配置是 i7-8650U / 16G / 256G / 2560x1440 高分屏 / LTE。机器是好机器,也是一代经典,之前还有一台 i5 处理器 1080p 屏幕的给老爸用了

先是在家偶尔遇到使用过程中屏幕黑掉,调整一下屏幕开合角度可能就会恢复,后面是在带去上课的时候遇到黑屏,开合屏幕也无法自愈,但是关机回家放了半天就好了

再就是月初某次去上课,黑了就再没点亮

排查定位

电脑能开机,外接显示器可用,说明主板啥的都没坏。进到系统里还能看到有内屏,并且分辨率啥的信息都正确,说明至少主板上的显卡部分都是好的,面板大概率也没坏

拆机,插拔各种排线,试图排除接触不良的情况,无果

找 ChatGPT 问,说大概率是屏线坏了,或者是屏线靠面板侧的接触有问题。搜对应的 Hardware Maintenance Manual,看起来自己也能拆,后面又找了视频看,拆到面板这一层还是能自己搞定的

ThinkPad X1 Carbon 6th更换天马2K 120hz屏幕,详细教程 BV1B94y1x7To

「维修」过程

吸取了上次修电视机背光的经验,这次在没有百分百确定故障原因前先别着急下单买屏线

拆到屏幕侧,重新插拔屏线在面板侧的接口,还是不行

拆到这一步再把屏轴卸了就能把面板拿下来的 ThinkPad X1 Carbon Gen6

拆到这一步再把屏轴卸了就能把面板拿下来的 ThinkPad X1 Carbon Gen6

期间伞破拿他的同款 X1Cg6 来,说看看能不能直接上 2K 屏,行的话回头他整个 2K120Hz 的天马屏看(就是上面 B 站视频里那个),换到他那,也是点不亮,但系统能读到屏幕信息

好了,各种排除法,我的电脑其他部位没问题,这个屏带线插到另一台电脑上故障表现一样,去淘宝下单屏线准备再抢救下呗

把裸面板加屏线接回自己电脑,准备移到空工位放着等淘宝屏线到货再说。鬼使神差又按了下电源键,突然发现屏幕上红底的 Lenovo 标志出来了……

对,就是这样又好了,后面任我各种晃悠屏线都没问题,换到伞破电脑上试过也没问题,再继续装回来,跟淘宝商家商量还没发货可以退单的吧,倒是屏幕的 B 面是粘上去的,另外下单胶带来弄

后面自己用胶把 B 面粘回去,有点偏差,而且把摄像头遮挡滑盖的黑阀拨片给卡住了,不过倒是问题不大,继续用吧

ThinkBook 14+ 2022 无法开机

故障表现

某台被当测试机用的 ThinkBook 14+ 2022,i5-12500H 款,正式的型号应该叫 ThinkBook 14 G4+ IAP 21CX

某天被同事反馈开不了机,过去看不管是否插外接电源,按开机键要么没反应,要么键盘背光灯亮几秒,但屏幕没显示,也没听到系统风扇转,然后就完全掉电

此处注意到插外接电源时,机身侧面 USB-C 口旁边的电源指示灯,是黄色闪烁状态,这不符合官方说明里只有白色或黄色常亮或熄灭的状态,看起来整个电源系统都可能有问题

排查定位

既然插电有问题,那先换个电源看?不行。用不同电源插不同的 USB-C 口?也不行。拔电只用电池呢?还是不行

最近这些年的 ThinkPad 和 ThinkBook 都有 EC 重置孔,之前遇到 USB-C 口不能用,几乎都通过重置 EC 的方法解决。那戳 EC 孔 20 秒,再试,依旧不行。除了戳 EC 孔重置,也长按电源键释放可能的残电?不出意外并没有任何反应

拆机,断掉电池和主板的排线,只接外部电源呢?故障表现一模一样

想断掉主板 BIOS 电池,但这个在主板副板的背面,要挑开那个排线得把主板副板整个取下来,觉得太费劲就没在这一段来做这个尝试

最小化主板,把 SSD、无线网卡、屏幕排线、散热风扇、主板副板 这些能从主板上断开的通通断开,用机器原配电源和另一个 ThinkPad 原配电源在两个 USB-C 口交替尝试,依旧是插电闪黄灯

「维修」过程

都拆成这样还不行,也没有更多工具来定位或修复,就这样吧,各种排线装回去,在把电池接上后,心有不甘习惯性没接电源按了下开机键,就,开机了

确认进了系统,这时候再把电源插上,机身侧面的电源指示灯常亮黄色,表示当前通电且在充电,看电池电量接近满格,一会充满指示灯转常亮白色,说明通电且没在充电,一切正常

这里有一个细节是第一次能进系统时似乎看到了 BIOS 升级的「正在升级系统,请不要关闭电源」的提示,所以可能是上次关机重启过程中有在升级 BIOS 但被断了电?不过一般电池也还在的啊,不至于电池电量都不够升级的

最后这台电脑能进之前的系统,确认原系统不再有用后,抹盘装成 Omarchy 尝了下鲜,最后装回 Windows 重置成初始状态,还回公司备件库

将博客所有文章按 markdown 格式化

从上上周开始,把博客从 WordPress 迁移到了 Hugo。如前所说,AI 已经帮助把大部分的元数据给整理好,包括用 Disqus 的评论数据。

不过博客里包括了若干个平台的内容,之前的排版都千奇百怪,用 HTML 控制符不说,有的所有内容都在一行内,再加上中间有一段时间用微软的 Windows Live Writer 写的,总不是 markdown 友好的格式,甚至还有一些 * 或别的字符变成 markdown 控制符的情况,索性把所有内容都整理了一遍

曾经写过字的地方包括

到现在居然只有 QQ 空间还活着,而且注意上面都是 http 而没有 https

以前还在珞珈山水和水木清华 BBS 上有很多内容,大多没有留下来,保留到本站的用类 telnet 的黑底等宽代码块的方式展示,尽量保持原来的感觉

曾经最喜欢的音乐平台是虾米,2013 年到杭州在阿里参加新人培训时,同组的还有虾米的同事,可惜后面就没有然后了,博客里留的链接或播放器也都再也打不开。曾经也用过百度音乐、5sing,也都打不开了

有一些插入的视频链接也失效了,整理时还注意到 2014 年时,B 站的域名还不是 bilibili.com 而是 bilibili.kankanews.com,都是时代的眼泪

自己写字的风格也变了很多。有时候大段,有时候很短,段落之间有只用一个换行黏在一起,或有按 markdown 空行分段。标点用法上,最开始用英文半角且标点后不空格,后来是英文半角接空格,再后来应该是中文字体们终于靠谱点,加上不再唯视觉导向而是遵循中英文排版更通用的规范,才主用中文标点

至于内容,不管是青春热血,还是傲娇中二,或是冲动犯浑,又或无病呻吟,虽然很多看着就羞耻,不过都是过去真实的自己,二十多年的记录,还是留着吧

外接键盘映射苹果 Globe/Fn 键

曾经在 macOS 实用小工具记录 2 里提到苹果修改了锁屏快捷键,可以用 Ctrl+Cmd+Q 锁屏,而不用模拟之前的 Power 键,对 Karabiner 不再有需求,结果最近还是装了回来

macOS 26 开始的全屏快捷键变化

在 macOS 26 Tahoe 之前,对应用全屏(新建占据整个桌面)的快捷键是 Ctrl+Cmd+F,这个在外接键盘上也能直接按出来,但后面改成了 Globe+F,这个 Globe 键就是苹果笔记本电脑或原装外置键盘上原来的 fn 键,上面有个小地球图标的,俗称地球键

这下好了,要全屏要么点窗口左上角的红绿灯按钮,要么用苹果笔记本机身键盘上的 Globe+F 的快捷键,在外接键盘上都无法使用

在外接键盘上切换全屏的尝试

macOS 系统设置里改快捷键

这个方式是说在 macOS 的系统设置里,增加一个「切换全屏」或「Enter Full Screen」的快捷键,然后映射成自己想要的键

我自己试过一下,不是那么灵光,也不太好用,放弃

使用第三方窗口管理工具如 Rectangle

Rectangle 是我近年来替换 Spectangle 后的窗口管理工具,本来随着新版本 macOS 把左半屏、右半屏、最大化等几个操作支持后,连这个工具都可以不用,但偏偏 macOS 原生的都是 Ctrl+Globe+Left、Ctrl+Globe+Right、Ctrl+Globe+F,都还是无法在外接键盘上使用的

等为了在外接键盘上更方便使用窗口布局且不用去改系统快捷键,把 Rectangle 装回来后,发现 Rectangle 无法支持系统级的全屏操作,所以这条路也走不通

使用 QMK/VIA 改键位映射

我现在在办公室使用的 Keychron K8P 支持 QMK/VIA,那么去 usevia.app 可以快速改键映射

但是苹果这里又搞事情,原生的 Globe 键并没有相关键位码,网络上找到的方法要么是通过 QMK 改固件,要么说的用 Any 键传入 0x2100 但现在也不生效,至少没法起到 Globe 键的作用

使用 Karabiner-elements 改键位映射

参照 https://github.com/the-via/releases/issues/92#issuecomment-3805418968 这个 VIA 项目里 Issue 的讨论,最后还是用 Karabiner Elements 解决问题

我把自己 K8P 的截屏快捷键先改成 F24(默认行为是发送 Cmd+Shift+4 调用系统截屏快捷键),然后再到 Karabiner Elements 里把 F24 映射成 fn (globe),现在尝试按 F24+F,可以在支持的应用里切换全屏

现在就是这个键并不在右手小拇指周边,不是太方便,本来考虑把 Fn+L_Option 改成 F24 来达到映射,后来发现不行,因为按下 Fn 后,原来 F 键的逻辑也变了,这时候键盘工作在第二层键位上,而 F 键默认是在改键盘灯光 RGB 的参数

剩余对当前 macOS 里全屏快捷键的吐槽

之前 Ctrl+Cmd+F 的快捷键用的好好的,偏偏要改一个外接键盘无法支持的 globe+F,而且原来的快捷键几乎所有的应用都支持,改的这个好多应用又不响应,比如 VSCode 就不行,Ghostty 也不行

多年前让苹果成为开发者友好的设备,据说是 @dhh 及 Ruby on Rails 这帮人推动,现在 dhh 也对目前 macOS 的状态不满,在推动 Omarchy 项目,看看会不会三十年河东三十年河西,回头 Linux 变成开发者更友好的环境

将博客迁移到用 Hugo 驱动

过去这些年一直用 WordPress 做博客的后端,其实也没什么不好的,任何一个浏览器打开就能写和管理,虽然后端重了点,但一次配置好也不用怎么折腾,现在的 VPS 跑个 PHP 和 MySQL 还是够的

前两年考虑要不要彻底使用 Markdown 来做内容管理,同时把整站变成不用那么多依赖的情况,比如挂 GitHub Pages 上用 Jekyll 直接生成。后面找了下发现 Hugo 这个基于 go-lang 的本地生成服务,当时还尝试看看要不要迁移,不过文档写得总是容易,对我这个历经二十多年,里面糅合了好多历史平台的内容,跑完第一步后就懒得将其往前推进到一个明确可用状态

今年各种 AI 能力突飞猛进到真的可以干活了,于是找 Codex,在 GPT 5.6 Sol 的帮助下,先确认是可以迁移的,需要备份保留哪些数据,怎么转移和验证,并逐步算完成了迁移和整理吧

既有数据迁移倒是还快的,毕竟想要啥我都能给出来,不管是 WordPress 所在目录和之前各种静态文件所在的 wp-content,还是 MySQL 数据库表,或者是 WordPress 导出的 wxr,还包括用作评论的 Disqus 的所有导出数据

接下来的验证整合,确实验证了各种历史沉淀,光是博文,就从最早的教育网博客,到 Live Space、百度空间、QQ 空间、人人网、Blogspot、自建 WordPress 等等

评论早年很多平台的应该都被丢失了,最早接的第三方评论系统应该是多说,这个没了后应该一直用的 Disqus,在整理过程中还把 Disqus 历史迁移没匹配上的好些内容也给匹配上了,AI 真强大

再就是把历史的外链图片都想办法补到本地,包括之前用新浪微博当图床的,还好现在微博还在把相册下载到本地能匹配上,还有用人人当图床的,从我几年前备份的人人网数据里匹配到一些,但也有之前备份就有遗漏的找不到,还好从我自己的照片库,再把当年发文时配的原图人肉找到,在 Live Space 阶段的图,通过 OneDrive 的日志图片找到绝大部分,很诡异的有一张图不在这个目录,还好通过 OneDrive 按日期的照片墙,最终也找到了那张,在 Google Photo 的图现在还能访问,AI 就直接帮忙下载备份到本地了,有两张曾经传在教育网博客的无关紧要的示意图,找不到就算了,还有之前用 163 相册的图,就从自己的照片库里去匹配上,最终还有曾经在水木的一张图也不可能找到,就算了吧

在样式比对时,修复了部分代码块和引用块的问题,同时还发现历史一些应该是通过 Live Writer 发的旧文,是一个单行超大的 HTML 语法,曾经在 WordPress 上转 Markdown 应该也是转到懒得转,这次先把和引用块的临时处理下,后面应该可以借助 AI 的能力可以快速批量处理

不过,加上本地搜索功能后,开发环境需要的依赖还是不少的,从 AI 帮项目生成维护的 README 里就能看到

必须工具

  • Git;
  • GNU Make 或兼容的 make;
  • Python 3.11 或更高版本;脚本只使用标准库,不需要 pip/virtualenv;
  • Node.js 20 或更高版本及 npm;只用于按 package-lock.json 安装和运行 Pagefind;
  • Hugo Extended;当前验收版本为 0.165.0,建议其他机器使用相同版本,至少必须在
    hugo version 输出中包含 extended;
  • 部署机器还需要 OpenSSH client,以及包含安全更新并支持 --link-dest 的 rsync。

可选工具:Docker 或本机 nginx,用于正式切换前的 nginx 配置和 HTTP 冒烟测试。

git 作为版本管理没有什么好解释的,AI 用 make 来串起各种动作,拿 python 运行各种转换和校验脚本,node 是为了安装运行本地搜索支持工具 Pagefind,hugo 是本次核心迁移组件,另外用 ssh 和 rsync 是为了推送发布到 VPS

大头基本完成,后面应该就是把单页目录样式小组件做下样式和功能优化,把整站的主题做做美化,再把历史文章都想办法转成 Markdown 格式,就安心写东西吧

孩子们迷上了疯狂兔子人SuperBunnyMan

前几年在 B 站上看有直播玩疯狂兔子人(Super Bunny Man)这个游戏的切片,当时感觉有血腥画面,加上主播太聒噪,并没有让玩

Steam 链接 https://store.steampowered.com/app/673750/

今年应孩子们再三要求,买了,因为操作相对简单,只需要摇杆左右,加一个 A 跳,和 LB 抓,两个娃都玩得不亦乐乎,并且在玩到特别熟练前通过奇怪的卡 bug 方式把一些正常玩还拿不到的奖励也拿满了,把所有关卡都解锁,虽然后面各种玩熟练后也能正常解锁

后面娃们不满足玩既有地图,说有没有 DLC 出新的地图,或者可以自己编辑,于是找到了 https://github.com/flarfo/SBM-Custom-Levels 这个可以自定义地图的第三方扩展,娃们又自己制作了一些互殴的地图,继续玩得不亦乐乎,目前都玩超过 100 小时了

只是不管是游戏本体还是第三方扩展,目前都不维护也没有活跃的社群,个人感觉如果有活跃的社群来交换地图会更好玩

同一网页引入两个不同版本jQuery引发的问题

昨天在前端工程遇到一个以前没有想到过的问题

在维护了十多年的主项目上,最近完成了把 Knockout.js 从用户侧前端子工程 acorn 完全移除的工作,原来的要么迁移成 React 实现,要么把自家运营运维侧的工作移到 staff 子工程。在 staff 子工程里目前还有 Knockout.js 的前端页面逻辑和组件,以及一些以前仿照 bootstrap 写的样式和 js 组件,以及基于 jQuery 的日期选择器 datepicker 和时间选择器 timepicker

但昨天发现某个页面一个封了 datepicker 的 input,通过 data-bind=“textInput” 跟 knockout.js 绑定有奇怪的行为。鼠标点选,input 输入框内文本改变,用 $(el).val() 取的值也正常,但 ko 绑定的值不变。如果直接在 input 框里输入,ko 绑定的值就能正常更新

直接 input 输入可以改变 ko 绑定值,说明 ko 绑定没出问题,鼠标点选后 ko 绑定值不变,说明监听机制哪里有问题。因为这一波迁移里把原来多个版本混用的 ko 统一到了 3.x,先查是不是 ko 跨版本有监听事件的变化,ko 官网没说,某 AI 说 ko 3.x 开始还是现代浏览器有啥啥啥事件不再绑定,但尝试手工验证, $(el).trigger("input") 和 $(element).trigger("change") 这些明确说应该有效的,也不能让 ko.observable 的值更新

自己看业务代码和 datepicker 的代码(都是十年前自己写的),git 记录都显示没变啊,调试过程该有的事件都正常触发。把问题代码涉及的链路和表现丢给 Codex GPT-5.4 xhigh,一开始还说需要检查 ko 绑定机制和 vm 初始化顺序,但这些跟之前正常工作时都没变化。后面揪出来在 jinja2 模板层,渲染 HTML 时引入了两次不同版本的 jQuery,在 ko 绑定时用的第一版,后续 datepicker 初始化时关联到第二版,两边 $.event 不通?两套 jQuery 各自维护了自己的事件缓存和 handler 列表,所以 datepicker 库通过第二套 jQuery 发出的事件到不了 ko 在第一套 jQuery 上注册的 handler,而人肉改 input 里的内容走的浏览器原生 DOM 事件,ko 用的那一版 jQuery 有正常监听能生效。最终移除没必要多引入了一次的 jQuery 后,确保 Knockout.js 和 datepicker 使用的是同一版 jQuery 后恢复正常

前端这些诡异的大坑啊,以前为了弥补浏览器能力不足而需要 jQuery 去封装的各种基础能力,现代浏览器都原生支持(主要是选择器和事件触发监听),未来能走原生都走原生吧

断电长按电源键可解决绝大部分USB-C/雷电口设备问题

个人和公司都遇到过笔记本电脑或显示器或别的设备的 USB-C 或雷电口,不能充电、传输信号等问题,大部分情况下,断电后长按电源键做重置就可以解决绝大部分问题

  • 断电

    • 笔记本电脑需要拔外接电源,最好在 BIOS 里断掉内置电池供电,取下一切连在笔记本电脑上的外设,包括但不限于 U 盘、无线鼠标接收器、网线等
    • 显示器拔掉电源线,最好也把所有数据线也拔掉
  • 长按电源键

    • 笔记本电脑在 BIOS 断内置电池的情况下长按电源键不会开机,保持按下 10 秒以上,最好 15 秒或 20 秒。如果没有 BIOS 断内置电池的机型,大概率长按下会先开机,再自动关机,不管他一样按够时间
    • 显示器就是长按电源键,按够时间
  • 恢复

    • 笔记本电脑插外接电源适配器,正常开机就行
    • 显示器插好电源线和数据线,正常开机就行

原理:设备的 USB-C 控制器或雷电控制器进入了奇怪的工作状态,断电长按电源键是让其恢复默认状态,就是重置

优派VX2478-4K-HD使用12V5A电源可以消解绝大多数故障

公司在 2020 年开始分批采购了不少优派 VX2478-4K-HD 这款 23.6 英寸的 4K 显示器,官网在 https://www.viewsonic.com.cn/products/lcd/VX2478-4K-HD

从前两年开始,我们陆续有同事反馈这个显示器点亮后需要很久才能让电脑有显示信号传输过来,开机后也不会立即出现优派那三只彩色小鸟的 Logo,一度以为这么快就到使用寿命,后来在 https://www.v2ex.com/t/1068514 这里看到一个闲鱼大佬神奇的说法,这款机型的电路设计有问题,把原装的 19V 2.2A 的外置电源适配器换成 12V 5A 的就好

实践的确如此,我司已经有超过 70% 的这款显示器通过更换电源重获新生,淘宝上买的广东汕头发货十几块钱的「台达12V5A电源,接口55*25」都能用