[游戏] 分享一个免费网页游戏平台: https://www.xrhshui.com
不用下载或注册,有赛车、火柴人格斗、坦克、猫狗大战和下 100 层,部分支持同屏双人。想随手玩一局的可以试试,欢迎反馈体验~
via V2EX (author: Xrhshui)
不用下载或注册,有赛车、火柴人格斗、坦克、猫狗大战和下 100 层,部分支持同屏双人。想随手玩一局的可以试试,欢迎反馈体验~
via V2EX (author: Xrhshui)
[分享创造] 同型号的两台显示器,系统怎么分清谁是谁:聊聊按 EDID 认屏的几个坑
做 LayoutKeeper 的时候,我以为最难的是把窗口搬回原来的桌面(前面两篇日志写过这个)。后来发现,排第二难的是一个看起来很 trivial 的问题:**怎么认出"这是哪块屏"**。
LayoutKeeper 是个 macOS 菜单栏小工具(开源 GPL-3.0 ),干的事很简单:记住外接屏上每个窗口的位置和它所在的 Mission Control 桌面,拔线再插回来时一键还原。家里和公司各一块屏,就得各存一份布局——认错了屏,恢复出来的就是另一套布局,灾难。
macOS 给每个显示器分配的 `CGDirectDisplayID`,拔插一次就可能变,根本不能当身份证用。真正靠谱的是 EDID:显示器固件里的一小块数据,里面有厂商 ID 、型号、序列号。我一开始的做法是直接拿"厂商+型号+序列号"拼成 key ,每块屏一份布局文件,存在本机 `~/Library/Application Support/LayoutKeeper/` 里,JSON ,明文,谁都能打开看。
然后翻车了,而且是连环翻车:
**翻车一:有些屏的序列号是假的。** 不少便宜显示器 EDID 里的序列号直接填 0 ,两台同型号的屏插上去,key 一模一样,布局互相覆盖。后来加了 fallback:序列号为 0 或重复时,再叠加上端口信息和首次见到它的时间戳做区分,至少保证"这次插的这两台"不会打架。完美吗?不完美,但比覆盖强。
**翻车二:同一台屏,换根线/换个扩展坞,macOS 给的标识会变。** EDID 本体没变,但系统侧的 display UUID 变了。我最早只认系统 UUID ,结果用户(就是我自己)换了个扩展坞,布局"丢了"。0.6.7 把这块重写了:认屏以 EDID 为主,系统标识只当辅助,换线换坞不再丢布局,换一台没见过的显示器也能正常走"新屏"流程而不是报错。
**翻车三:窗口认错。** 认出屏只是第一步,还得认出窗口。Chrome 是个大坑:我公司和家里登的是不同 profile ,但进程名和 bundle id 一模一样。以前按 bundle id 匹配,经常把"公司 profile 的窗口"塞进"家里 profile 的位置"。0.6.7 改成按 Chrome 的用户配置( profile )目录匹配,世界清净了。同理,同名窗口实在分不清的,LayoutKeeper 会标"需要确认"让你手动选,绝不猜着移——这个原则从第一版就没变过。
布局数据本身长什么样?每块屏一个 JSON:窗口列表( bundle id 、窗口标题、frame 、所在桌面序号),外加最近 5 个历史版本自动轮换。恢复时先逐窗口预览,搬一个回读确认一个,没到位的回滚,整轮还能一键撤销(⌃⌥⌘Z )。数据只存本机,不收集任何东西,唯一的联网是去 GitHub 查更新(可关)。
局限照例写前面,不藏着:
- 只支持**一块**外接屏,多屏用户先别试。
- 跨桌面恢复要 macOS 26+(同桌面内的位置恢复 macOS 14+ 就行),用的是 SkyLight 私有接口,不用关 SIP 、不用注入 Dock ,只要"辅助功能"权限;系统大更新后可能失效,启动时自动检测,失效就自动关掉这个功能。
- Finder 窗口没法跨桌面移动(拿不到进程启动时间)。
仓库: https://github.com/tumingke0/LayoutKeeper
如果你也在写跟显示器打交道的 macOS 工具,EDID 解析这块欢迎交流——我踩过的坑,Issue 里基本都记着。上一帖有朋友说 AI 味重,这篇尽量说人话了,继续求拍砖。
via V2EX (author: tumk)
做 LayoutKeeper 的时候,我以为最难的是把窗口搬回原来的桌面(前面两篇日志写过这个)。后来发现,排第二难的是一个看起来很 trivial 的问题:**怎么认出"这是哪块屏"**。
LayoutKeeper 是个 macOS 菜单栏小工具(开源 GPL-3.0 ),干的事很简单:记住外接屏上每个窗口的位置和它所在的 Mission Control 桌面,拔线再插回来时一键还原。家里和公司各一块屏,就得各存一份布局——认错了屏,恢复出来的就是另一套布局,灾难。
macOS 给每个显示器分配的 `CGDirectDisplayID`,拔插一次就可能变,根本不能当身份证用。真正靠谱的是 EDID:显示器固件里的一小块数据,里面有厂商 ID 、型号、序列号。我一开始的做法是直接拿"厂商+型号+序列号"拼成 key ,每块屏一份布局文件,存在本机 `~/Library/Application Support/LayoutKeeper/` 里,JSON ,明文,谁都能打开看。
然后翻车了,而且是连环翻车:
**翻车一:有些屏的序列号是假的。** 不少便宜显示器 EDID 里的序列号直接填 0 ,两台同型号的屏插上去,key 一模一样,布局互相覆盖。后来加了 fallback:序列号为 0 或重复时,再叠加上端口信息和首次见到它的时间戳做区分,至少保证"这次插的这两台"不会打架。完美吗?不完美,但比覆盖强。
**翻车二:同一台屏,换根线/换个扩展坞,macOS 给的标识会变。** EDID 本体没变,但系统侧的 display UUID 变了。我最早只认系统 UUID ,结果用户(就是我自己)换了个扩展坞,布局"丢了"。0.6.7 把这块重写了:认屏以 EDID 为主,系统标识只当辅助,换线换坞不再丢布局,换一台没见过的显示器也能正常走"新屏"流程而不是报错。
**翻车三:窗口认错。** 认出屏只是第一步,还得认出窗口。Chrome 是个大坑:我公司和家里登的是不同 profile ,但进程名和 bundle id 一模一样。以前按 bundle id 匹配,经常把"公司 profile 的窗口"塞进"家里 profile 的位置"。0.6.7 改成按 Chrome 的用户配置( profile )目录匹配,世界清净了。同理,同名窗口实在分不清的,LayoutKeeper 会标"需要确认"让你手动选,绝不猜着移——这个原则从第一版就没变过。
布局数据本身长什么样?每块屏一个 JSON:窗口列表( bundle id 、窗口标题、frame 、所在桌面序号),外加最近 5 个历史版本自动轮换。恢复时先逐窗口预览,搬一个回读确认一个,没到位的回滚,整轮还能一键撤销(⌃⌥⌘Z )。数据只存本机,不收集任何东西,唯一的联网是去 GitHub 查更新(可关)。
局限照例写前面,不藏着:
- 只支持**一块**外接屏,多屏用户先别试。
- 跨桌面恢复要 macOS 26+(同桌面内的位置恢复 macOS 14+ 就行),用的是 SkyLight 私有接口,不用关 SIP 、不用注入 Dock ,只要"辅助功能"权限;系统大更新后可能失效,启动时自动检测,失效就自动关掉这个功能。
- Finder 窗口没法跨桌面移动(拿不到进程启动时间)。
仓库: https://github.com/tumingke0/LayoutKeeper
如果你也在写跟显示器打交道的 macOS 工具,EDID 解析这块欢迎交流——我踩过的坑,Issue 里基本都记着。上一帖有朋友说 AI 味重,这篇尽量说人话了,继续求拍砖。
via V2EX (author: tumk)
[推广] 各位自主创业的老板们,欢迎找我买企业 AI Token 路由服务。
我们采用全球多区域企业级账号和 [自研] 智能路由架构,实现低延迟、高可用性、无限 Token 使用、无时间窗口限制,并支持故障自动切换。
https://nxtpath.ai/
这个是我们网站
https://nxtpath.ai/download/
我们有 NXTPATH APP 可以一键配置连接。用量,耗费随时查。
欢迎联系我测试
via V2EX (author: aaazwy)
我们采用全球多区域企业级账号和 [自研] 智能路由架构,实现低延迟、高可用性、无限 Token 使用、无时间窗口限制,并支持故障自动切换。
https://nxtpath.ai/
这个是我们网站
https://nxtpath.ai/download/
我们有 NXTPATH APP 可以一键配置连接。用量,耗费随时查。
欢迎联系我测试
via V2EX (author: aaazwy)
[生活] 带父母去北京后的碎碎念
10.7-10.12 带父母去北京转了一下, 我日常工作在杭州, 10.1 返回到山西老家, 和父母国庆躺了 7 天休息好以后, 出发去了北京;
7 号是国庆的尾声了, 返京的车票提前买的还好, 给我父母买的 D/F, 我自己买了 C, 正好一排, 这样买有两个人出入都方便, 我妈在窗边, 她会看看风景;
我姐也想去, 在我做决定的后面了, 车票不好买了, 她在去北京的中途她家的站也上了车, 没有座位了; 我就站了一路, 因为是静音车厢, 他们三个人边小声吃东西, 边细细碎碎的聊天. 我站在车厢连接处看着外面, 感觉很幸福;
酒店是日常出差攒下来的积分兑换的, 刚参加工作的时候我记得第一次同事带我们去的亚朵, 我以为是大家要一起住, 开标间之类的, 结果是一人一间, 我在偌大的房间里不知所措; 东翻翻, 西看看, 我记得有饼干, 可以泡茶, 还有小冰箱. 后来不需要别人带自己出来以后各种品牌的酒店都去住了住, 感受了一下. 后来又有人领路, 注册了亚朵会员, 可以换枕头;
再后来没有换下枕头, 改用了另一家的会员体系至今攒了很多积分, 可以换房间了. APP 里面提前换好了一个标间, 看到的是双人床 2, 我以为是两个双人床, 就邀请了我姐姐. 后来我又打电话确认才知道是 1.35 的双单人床, 不过酒店回复可以视当天情况给我升级成家庭房;
当前 7 号的时候携程查看家庭房已经满房了, 到达酒店的路上一直惴惴不安, 家庭房有没有, 有的话能不能让我入住四人. 到达后没想到很简单, 没人问我们住几人, 只是登记. 家庭房也提前给预留了, 6 天 5 晚 我们可以一直住.
感觉这个积分很有意义;
行程是提前让 gemini 生成的, 包括在哪里买票, 交通和天气等等都让它整理了出来, 确实很有用;
当天 3 点入住, 在海淀. 下午先吃了南门涮肉, 大概 3.40 到了颐和园, 因为其闭园比较晚, 在湖边看到了美美的夕阳. 也叫了官方的导游, 我们 4 个人 220, 我以为是跟多年前我游园时蹭的那种, 可以很长, 会走山上那种; 但其实就走了一会儿连廊, 就到舫那里, 还会推荐一些园内消费. 后面感觉这个非常不值. 颐和园出来坐地铁去了护国寺小吃, 没什么好吃的东西, 各样小吃都点了一些让家人也尝尝, 豆汁我妈妈说像家里以前腌酸菜, 做酸菜拌面吃完面以后剩下的酸菜面汤, 容易接受了许多. 其他乏善可陈, 要好吃的话 我在杭州应该也能看到.
第二天去的故宫, 景山公园, 提前小红书找的导游, 500 4h 带珍宝馆. 这个很值, 唯一的缺点就是导游有点大舌头, 吐字不是很清晰. 但全程专业在线, 配合我们全家拍照, 服务非常好, 也不会隐式推销. 故宫大概花了 5 个小时, 中午出来在最近的一家饭店吃了点东西, 炸酱面, 贝勒爷烤肉什么的都不好吃. 说实话可以考虑吃炸酱面就好了, 贝勒爷烤肉后面去了四季民福感觉还不错. 吃完去了景山公园, 转了一圈出来坐公交去了南锣鼓巷, 吃了什么肉饼, 也不好吃. 紫光园的酸奶还可以.
第三天去的国博, 国博没有请导游, 是看有公益讲解, 实际到场以后发现 要么人围成很多, 要么声音很小, 体验上非常差; 没办法搞了一个讲解仪, 然后手机上公众号有讲解无线耳机两个人, 另外一个人去蹭公益, 总算都不显得那么尴尬. 古代中国逛完以后, 那些馆其实可以各自挑喜欢的逛逛就可以了, 但因为是家庭出游, 父母没有单独逛的那种意识, 一时也不知道究竟是谁陪谁来玩了. 最后一起都走马观花了下, 很累. 国博出来没想到可以直接去天安门, 在天安门广场, 父母明显比在国博开心多了. 拍了很多照片, 人不多, 很开心. 然后去了天坛, 那天是周五, 天坛有亮灯活动, 拍照很出片, 时间原因联票只去了祈年殿, 但够了. 晚上打车去吃了四季民福, 800 多的烤鸭套餐, 服务和食物本身都没得说, 非常美好的体验;
第四天去了长城, 高铁直达过去, 比以前做公交车体验好很多. 父母缆车上下 140 一个人, 前面几天走的很累, 他们多休息了一下, 两个人上去以后先往北 8 走, 我和我姐爬上去一起拍拍照, 因为是周六人稍微有点多. 后来父母直接下, 我和我姐又去了北 12, 从北 11 下来 赶高铁又一起回了北京北, 然后是鸟巢, 水立方. 下午让爸妈在 川湘菜, 淮扬菜, 新疆菜等挑一个, 就去了附近一家湘菜馆; 说实话一般般, 出来玩吃什么还是得掌握主动, 他们刻板印象以为淮扬菜会没味, 哎.
第五天晚上候补的清北都中了, 上午清华 -> 圆明园 -> 下午北大. 清北周日但是人不多, 拍照也很出片, 这几天北京天气都很不错. 而且校园内可以骑自行车, 都没有太累; 圆明园太大了, 走的很痛苦, 去北大后就没怎么高强度转了, 只是湖 + 塔 + 门, 下午去了阳坊涮肉, 第二美好的美食体验;
第六天是周一趁着来北京, 提前协和挂了号(候补上的), 约了陪诊带我姐在西院让专家看了看, 开了一堆检查, 当天能预约, 也不能叫预约 是去窗口临时让护士加号做了血检, 其他的检查都改约到了下次行程, 并找专家约了复查的号, 后面我姐她自己就可以去了; 我爸妈的行程他们自己安排的, 想去恭王府, 结果去了人家闭馆, 哎.
整体来说是一段非常美好的体验, 消费预计在 7K 以内, 大头是交通+吃饭, 下来是导游, 最后是门票; 住宿如果用钱的话 大概在 500/day. 有几天中午都是背的吃的, 早餐酒店只提供两份, 靠吃饭的人回来带一些吃的解决另外两个人的.
活在当下, 朋友有想法的也不妨行动起来, 我想这真的是我生命以及我父母他们生命 中一段非常美好的体验.
今年他们刚满 60 岁,没娃没带老婆。我和我姐围着他俩转。
via V2EX (author: siddharth)
10.7-10.12 带父母去北京转了一下, 我日常工作在杭州, 10.1 返回到山西老家, 和父母国庆躺了 7 天休息好以后, 出发去了北京;
7 号是国庆的尾声了, 返京的车票提前买的还好, 给我父母买的 D/F, 我自己买了 C, 正好一排, 这样买有两个人出入都方便, 我妈在窗边, 她会看看风景;
我姐也想去, 在我做决定的后面了, 车票不好买了, 她在去北京的中途她家的站也上了车, 没有座位了; 我就站了一路, 因为是静音车厢, 他们三个人边小声吃东西, 边细细碎碎的聊天. 我站在车厢连接处看着外面, 感觉很幸福;
酒店是日常出差攒下来的积分兑换的, 刚参加工作的时候我记得第一次同事带我们去的亚朵, 我以为是大家要一起住, 开标间之类的, 结果是一人一间, 我在偌大的房间里不知所措; 东翻翻, 西看看, 我记得有饼干, 可以泡茶, 还有小冰箱. 后来不需要别人带自己出来以后各种品牌的酒店都去住了住, 感受了一下. 后来又有人领路, 注册了亚朵会员, 可以换枕头;
再后来没有换下枕头, 改用了另一家的会员体系至今攒了很多积分, 可以换房间了. APP 里面提前换好了一个标间, 看到的是双人床 2, 我以为是两个双人床, 就邀请了我姐姐. 后来我又打电话确认才知道是 1.35 的双单人床, 不过酒店回复可以视当天情况给我升级成家庭房;
当前 7 号的时候携程查看家庭房已经满房了, 到达酒店的路上一直惴惴不安, 家庭房有没有, 有的话能不能让我入住四人. 到达后没想到很简单, 没人问我们住几人, 只是登记. 家庭房也提前给预留了, 6 天 5 晚 我们可以一直住.
感觉这个积分很有意义;
行程是提前让 gemini 生成的, 包括在哪里买票, 交通和天气等等都让它整理了出来, 确实很有用;
当天 3 点入住, 在海淀. 下午先吃了南门涮肉, 大概 3.40 到了颐和园, 因为其闭园比较晚, 在湖边看到了美美的夕阳. 也叫了官方的导游, 我们 4 个人 220, 我以为是跟多年前我游园时蹭的那种, 可以很长, 会走山上那种; 但其实就走了一会儿连廊, 就到舫那里, 还会推荐一些园内消费. 后面感觉这个非常不值. 颐和园出来坐地铁去了护国寺小吃, 没什么好吃的东西, 各样小吃都点了一些让家人也尝尝, 豆汁我妈妈说像家里以前腌酸菜, 做酸菜拌面吃完面以后剩下的酸菜面汤, 容易接受了许多. 其他乏善可陈, 要好吃的话 我在杭州应该也能看到.
第二天去的故宫, 景山公园, 提前小红书找的导游, 500 4h 带珍宝馆. 这个很值, 唯一的缺点就是导游有点大舌头, 吐字不是很清晰. 但全程专业在线, 配合我们全家拍照, 服务非常好, 也不会隐式推销. 故宫大概花了 5 个小时, 中午出来在最近的一家饭店吃了点东西, 炸酱面, 贝勒爷烤肉什么的都不好吃. 说实话可以考虑吃炸酱面就好了, 贝勒爷烤肉后面去了四季民福感觉还不错. 吃完去了景山公园, 转了一圈出来坐公交去了南锣鼓巷, 吃了什么肉饼, 也不好吃. 紫光园的酸奶还可以.
第三天去的国博, 国博没有请导游, 是看有公益讲解, 实际到场以后发现 要么人围成很多, 要么声音很小, 体验上非常差; 没办法搞了一个讲解仪, 然后手机上公众号有讲解无线耳机两个人, 另外一个人去蹭公益, 总算都不显得那么尴尬. 古代中国逛完以后, 那些馆其实可以各自挑喜欢的逛逛就可以了, 但因为是家庭出游, 父母没有单独逛的那种意识, 一时也不知道究竟是谁陪谁来玩了. 最后一起都走马观花了下, 很累. 国博出来没想到可以直接去天安门, 在天安门广场, 父母明显比在国博开心多了. 拍了很多照片, 人不多, 很开心. 然后去了天坛, 那天是周五, 天坛有亮灯活动, 拍照很出片, 时间原因联票只去了祈年殿, 但够了. 晚上打车去吃了四季民福, 800 多的烤鸭套餐, 服务和食物本身都没得说, 非常美好的体验;
第四天去了长城, 高铁直达过去, 比以前做公交车体验好很多. 父母缆车上下 140 一个人, 前面几天走的很累, 他们多休息了一下, 两个人上去以后先往北 8 走, 我和我姐爬上去一起拍拍照, 因为是周六人稍微有点多. 后来父母直接下, 我和我姐又去了北 12, 从北 11 下来 赶高铁又一起回了北京北, 然后是鸟巢, 水立方. 下午让爸妈在 川湘菜, 淮扬菜, 新疆菜等挑一个, 就去了附近一家湘菜馆; 说实话一般般, 出来玩吃什么还是得掌握主动, 他们刻板印象以为淮扬菜会没味, 哎.
第五天晚上候补的清北都中了, 上午清华 -> 圆明园 -> 下午北大. 清北周日但是人不多, 拍照也很出片, 这几天北京天气都很不错. 而且校园内可以骑自行车, 都没有太累; 圆明园太大了, 走的很痛苦, 去北大后就没怎么高强度转了, 只是湖 + 塔 + 门, 下午去了阳坊涮肉, 第二美好的美食体验;
第六天是周一趁着来北京, 提前协和挂了号(候补上的), 约了陪诊带我姐在西院让专家看了看, 开了一堆检查, 当天能预约, 也不能叫预约 是去窗口临时让护士加号做了血检, 其他的检查都改约到了下次行程, 并找专家约了复查的号, 后面我姐她自己就可以去了; 我爸妈的行程他们自己安排的, 想去恭王府, 结果去了人家闭馆, 哎.
整体来说是一段非常美好的体验, 消费预计在 7K 以内, 大头是交通+吃饭, 下来是导游, 最后是门票; 住宿如果用钱的话 大概在 500/day. 有几天中午都是背的吃的, 早餐酒店只提供两份, 靠吃饭的人回来带一些吃的解决另外两个人的.
活在当下, 朋友有想法的也不妨行动起来, 我想这真的是我生命以及我父母他们生命 中一段非常美好的体验.
今年他们刚满 60 岁,没娃没带老婆。我和我姐围着他俩转。
via V2EX (author: siddharth)
[推广] 7 折, DeepSeek V4.1 Flash 1017 最新模型 API 7 折
DeepSeek V4.1 Flash 1017 的 DeepSWE 达 77.0 ,超过 Claude Opus 5 ,任务完成更果断、输出更短,整体成本更低 7 折 DeepSeek API 访问: https://tokenra.io
via V2EX (author: sakurajiayou)
DeepSeek V4.1 Flash 1017 的 DeepSWE 达 77.0 ,超过 Claude Opus 5 ,任务完成更果断、输出更短,整体成本更低 7 折 DeepSeek API 访问: https://tokenra.io
via V2EX (author: sakurajiayou)