diff --git a/.obsidian/plugins/cubox-sync/data.json b/.obsidian/plugins/cubox-sync/data.json index dba4b237..399ee129 100644 --- a/.obsidian/plugins/cubox-sync/data.json +++ b/.obsidian/plugins/cubox-sync/data.json @@ -34,7 +34,7 @@ "contentTemplate": "# {{{title}}}\n\n{{{description}}}\n\n{{{article_title}}} //文章内容标题\n{{{content}}} //文章正文\n\n\n[Read in Cubox]({{{cubox_url}}}) \n[Read Original]({{{url}}}) \n\n---\n\n{{#highlights.length}}\n## Annotations \n\n{{#highlights}}\n> {{{text}}} \n\n{{#note}}\n{{{note}}}\n{{/note}}\n[Link️]({{{cubox_url}}}) \n\n{{/highlights}}\n{{/highlights.length}}", "highlightInContent": true, "dateFormat": "yyyy-MM-dd", - "lastSyncTime": 1754817387584, + "lastSyncTime": 1754819228785, "lastSyncCardId": "7350452026397950547", "lastCardUpdateTime": "2025-08-09T15:46:52.780+0800", "syncing": false diff --git a/.obsidian/plugins/obsidian-raindrop-highlights/data.json b/.obsidian/plugins/obsidian-raindrop-highlights/data.json index 16e352df..036392f9 100644 --- a/.obsidian/plugins/obsidian-raindrop-highlights/data.json +++ b/.obsidian/plugins/obsidian-raindrop-highlights/data.json @@ -834,49 +834,49 @@ "id": 38835133, "title": "硬/软件评测", "sync": true, - "lastSyncDate": "2025-08-10T04:46:30.151Z" + "lastSyncDate": "2025-08-10T09:47:11.586Z" }, "38835134": { "id": 38835134, "title": "硬/软件评测/硬件评测", "sync": true, - "lastSyncDate": "2025-08-10T04:46:30.832Z" + "lastSyncDate": "2025-08-10T09:47:12.202Z" }, "38835135": { "id": 38835135, "title": "硬/软件评测/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:46:31.816Z" + "lastSyncDate": "2025-08-10T09:47:12.823Z" }, "38835136": { "id": 38835136, "title": "硬/软件评测/opencore", "sync": true, - "lastSyncDate": "2025-08-10T04:46:32.642Z" + "lastSyncDate": "2025-08-10T09:47:13.740Z" }, "38835137": { "id": 38835137, "title": "硬/软件评测/20230826", "sync": true, - "lastSyncDate": "2025-08-10T04:46:34.018Z" + "lastSyncDate": "2025-08-10T09:47:14.354Z" }, "38835138": { "id": 38835138, "title": "硬/软件评测/elasticsearch", "sync": true, - "lastSyncDate": "2025-08-10T04:46:37.218Z" + "lastSyncDate": "2025-08-10T09:47:15.078Z" }, "38835140": { "id": 38835140, "title": "硬/软件评测/记账软件", "sync": true, - "lastSyncDate": "2025-08-10T04:46:37.891Z" + "lastSyncDate": "2025-08-10T09:47:15.980Z" }, "38835141": { "id": 38835141, "title": "硬/软件评测/图片工具", "sync": true, - "lastSyncDate": "2025-08-10T04:46:38.532Z" + "lastSyncDate": "2025-08-10T09:47:16.872Z" }, "38835142": { "id": 38835142, @@ -957,7 +957,7 @@ "id": 38835159, "title": "群晖NAS/docker", "sync": true, - "lastSyncDate": "2025-08-10T04:46:39.523Z" + "lastSyncDate": "2025-08-10T09:47:17.508Z" }, "38835160": { "id": 38835160, @@ -973,19 +973,19 @@ "id": 38835163, "title": "群晖NAS/20230708", "sync": true, - "lastSyncDate": "2025-08-10T04:46:40.530Z" + "lastSyncDate": "2025-08-10T09:47:18.731Z" }, "38835164": { "id": 38835164, "title": "群晖NAS/20230811", "sync": true, - "lastSyncDate": "2025-08-10T04:46:41.190Z" + "lastSyncDate": "2025-08-10T09:47:19.344Z" }, "38835165": { "id": 38835165, "title": "破解网站", "sync": true, - "lastSyncDate": "2025-08-10T04:46:41.865Z" + "lastSyncDate": "2025-08-10T09:47:20.058Z" }, "38835166": { "id": 38835166, @@ -1006,13 +1006,13 @@ "id": 38835169, "title": "越狱", "sync": true, - "lastSyncDate": "2025-08-10T04:46:42.508Z" + "lastSyncDate": "2025-08-10T09:47:21.304Z" }, "38835170": { "id": 38835170, "title": "越狱/安装ipa", "sync": true, - "lastSyncDate": "2025-08-10T04:46:43.553Z" + "lastSyncDate": "2025-08-10T09:47:21.939Z" }, "38835171": { "id": 38835171, @@ -1028,7 +1028,7 @@ "id": 38835174, "title": "越狱/巨魔", "sync": true, - "lastSyncDate": "2025-08-10T04:46:44.834Z" + "lastSyncDate": "2025-08-10T09:47:22.829Z" }, "38835175": { "id": 38835175, @@ -1194,7 +1194,7 @@ "id": 38835212, "title": "英语学习", "sync": true, - "lastSyncDate": "2025-08-10T04:46:45.467Z" + "lastSyncDate": "2025-08-10T09:47:23.454Z" }, "38835213": { "id": 38835213, @@ -1255,7 +1255,7 @@ "id": 38835225, "title": "幼儿教育", "sync": true, - "lastSyncDate": "2025-08-10T04:46:46.129Z" + "lastSyncDate": "2025-08-10T09:47:24.693Z" }, "38835226": { "id": 38835226, @@ -1386,25 +1386,25 @@ "id": 38835253, "title": "物联网解决方案/产品评估", "sync": true, - "lastSyncDate": "2025-08-10T04:46:46.802Z" + "lastSyncDate": "2025-08-10T09:47:25.294Z" }, "38835254": { "id": 38835254, "title": "物联网解决方案/产品评估/语音机器人", "sync": true, - "lastSyncDate": "2025-08-10T04:46:47.449Z" + "lastSyncDate": "2025-08-10T09:47:25.905Z" }, "38835255": { "id": 38835255, "title": "物联网解决方案/产品评估/语音机器人/智慧农业", "sync": true, - "lastSyncDate": "2025-08-10T04:46:48.415Z" + "lastSyncDate": "2025-08-10T09:47:27.125Z" }, "38835256": { "id": 38835256, "title": "物联网解决方案/产品评估/语音机器人/智慧农业/智慧照明", "sync": true, - "lastSyncDate": "2025-08-10T04:46:49.387Z" + "lastSyncDate": "2025-08-10T09:47:27.722Z" }, "38835257": { "id": 38835257, @@ -1415,7 +1415,7 @@ "id": 38835258, "title": "物联网解决方案/供应商", "sync": true, - "lastSyncDate": "2025-08-10T04:46:50.077Z" + "lastSyncDate": "2025-08-10T09:47:30.669Z" }, "38835259": { "id": 38835259, @@ -1436,7 +1436,7 @@ "id": 38835262, "title": "物联网解决方案/安防网站", "sync": true, - "lastSyncDate": "2025-08-10T04:46:51.083Z" + "lastSyncDate": "2025-08-10T09:47:31.287Z" }, "38835263": { "id": 38835263, @@ -1462,55 +1462,55 @@ "id": 38835268, "title": "学习网站/ChatGPT", "sync": true, - "lastSyncDate": "2025-08-10T04:46:51.927Z" + "lastSyncDate": "2025-08-10T09:47:31.915Z" }, "38835269": { "id": 38835269, "title": "学习网站/ChatGPT/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:46:52.898Z" + "lastSyncDate": "2025-08-10T09:47:32.809Z" }, "38835270": { "id": 38835270, "title": "学习网站/Comic", "sync": true, - "lastSyncDate": "2025-08-10T04:46:53.536Z" + "lastSyncDate": "2025-08-10T09:47:33.761Z" }, "38835271": { "id": 38835271, "title": "开发网站", "sync": true, - "lastSyncDate": "2025-08-10T04:46:54.531Z" + "lastSyncDate": "2025-08-10T09:47:34.421Z" }, "38835272": { "id": 38835272, "title": "开发网站/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:46:55.843Z" + "lastSyncDate": "2025-08-10T09:47:35.378Z" }, "38835273": { "id": 38835273, "title": "开发网站/VSCode", "sync": true, - "lastSyncDate": "2025-08-10T04:46:56.831Z" + "lastSyncDate": "2025-08-10T09:47:36.265Z" }, "38835274": { "id": 38835274, "title": "开发网站/Python", "sync": true, - "lastSyncDate": "2025-08-10T04:46:57.502Z" + "lastSyncDate": "2025-08-10T09:47:37.851Z" }, "38835275": { "id": 38835275, "title": "开发网站/F^Q", "sync": true, - "lastSyncDate": "2025-08-10T04:46:58.473Z" + "lastSyncDate": "2025-08-10T09:47:38.456Z" }, "38835276": { "id": 38835276, "title": "开发网站/F^Q/20230812", "sync": true, - "lastSyncDate": "2025-08-10T04:46:59.158Z" + "lastSyncDate": "2025-08-10T09:47:40.211Z" }, "38835285": { "id": 38835285, @@ -2441,7 +2441,7 @@ "id": 38835489, "title": "群晖NAS", "sync": true, - "lastSyncDate": "2025-08-10T04:46:59.825Z" + "lastSyncDate": "2025-08-10T09:47:40.890Z" }, "38835490": { "id": 38835490, @@ -2452,13 +2452,13 @@ "id": 38835491, "title": "群晖NAS/nginx", "sync": true, - "lastSyncDate": "2025-08-10T04:47:00.499Z" + "lastSyncDate": "2025-08-10T09:47:41.577Z" }, "38835492": { "id": 38835492, "title": "群晖NAS/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:47:01.220Z" + "lastSyncDate": "2025-08-10T09:47:42.205Z" }, "38835493": { "id": 38835493, @@ -2504,13 +2504,13 @@ "id": 38835502, "title": "越狱/IPA", "sync": true, - "lastSyncDate": "2025-08-10T04:47:01.900Z" + "lastSyncDate": "2025-08-10T09:47:42.825Z" }, "38835503": { "id": 38835503, "title": "越狱/IPA提取", "sync": true, - "lastSyncDate": "2025-08-10T04:47:03.917Z" + "lastSyncDate": "2025-08-10T09:47:44.648Z" }, "38835504": { "id": 38835504, @@ -2891,7 +2891,7 @@ "id": 38835584, "title": "物联网解决方案/行业资讯", "sync": true, - "lastSyncDate": "2025-08-10T04:47:04.897Z" + "lastSyncDate": "2025-08-10T09:47:45.541Z" }, "38835585": { "id": 38835585, @@ -2902,19 +2902,19 @@ "id": 38835586, "title": "物联网解决方案/数字孪生", "sync": true, - "lastSyncDate": "2025-08-10T04:47:08.416Z" + "lastSyncDate": "2025-08-10T09:47:46.513Z" }, "38835587": { "id": 38835587, "title": "物联网解决方案/智慧停车", "sync": true, - "lastSyncDate": "2025-08-10T04:47:09.378Z" + "lastSyncDate": "2025-08-10T09:47:47.155Z" }, "38835588": { "id": 38835588, "title": "物联网解决方案/智能家居", "sync": true, - "lastSyncDate": "2025-08-10T04:47:09.985Z" + "lastSyncDate": "2025-08-10T09:47:47.784Z" }, "38835589": { "id": 38835589, @@ -2925,25 +2925,25 @@ "id": 38835590, "title": "物联网解决方案/智慧酒店", "sync": true, - "lastSyncDate": "2025-08-10T04:47:10.529Z" + "lastSyncDate": "2025-08-10T09:47:48.979Z" }, "38835591": { "id": 38835591, "title": "物联网解决方案/智慧园区", "sync": true, - "lastSyncDate": "2025-08-10T04:47:11.073Z" + "lastSyncDate": "2025-08-10T09:47:49.617Z" }, "38835592": { "id": 38835592, "title": "学习网站", "sync": true, - "lastSyncDate": "2025-08-10T04:47:11.629Z" + "lastSyncDate": "2025-08-10T09:47:50.861Z" }, "38835593": { "id": 38835593, "title": "学习网站/博客", "sync": true, - "lastSyncDate": "2025-08-10T04:47:12.207Z" + "lastSyncDate": "2025-08-10T09:47:51.489Z" }, "38835595": { "id": 38835595, @@ -2964,211 +2964,211 @@ "id": 38835599, "title": "开发网站", "sync": true, - "lastSyncDate": "2025-08-10T04:47:12.796Z" + "lastSyncDate": "2025-08-10T09:47:52.465Z" }, "38835600": { "id": 38835600, "title": "开发网站/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:47:13.335Z" + "lastSyncDate": "2025-08-10T09:47:53.085Z" }, "38835601": { "id": 38835601, "title": "开发网站/VSCode", "sync": true, - "lastSyncDate": "2025-08-10T04:47:13.883Z" + "lastSyncDate": "2025-08-10T09:47:53.989Z" }, "38835602": { "id": 38835602, "title": "开发网站/Python", "sync": true, - "lastSyncDate": "2025-08-10T04:47:14.429Z" + "lastSyncDate": "2025-08-10T09:47:54.618Z" }, "38835603": { "id": 38835603, "title": "开发网站/F^Q", "sync": true, - "lastSyncDate": "2025-08-10T04:47:14.965Z" + "lastSyncDate": "2025-08-10T09:47:55.235Z" }, "38835604": { "id": 38835604, "title": "开发网站/F^Q/20230812", "sync": true, - "lastSyncDate": "2025-08-10T04:47:15.511Z" + "lastSyncDate": "2025-08-10T09:47:55.890Z" }, "38835605": { "id": 38835605, "title": "开发网站/SQL", "sync": true, - "lastSyncDate": "2025-08-10T04:47:16.062Z" + "lastSyncDate": "2025-08-10T09:47:56.835Z" }, "38835606": { "id": 38835606, "title": "开发网站/App打包", "sync": true, - "lastSyncDate": "2025-08-10T04:47:16.611Z" + "lastSyncDate": "2025-08-10T09:47:57.794Z" }, "38835607": { "id": 38835607, "title": "开发网站/抓包", "sync": true, - "lastSyncDate": "2025-08-10T04:47:17.161Z" + "lastSyncDate": "2025-08-10T09:47:59.597Z" }, "38835608": { "id": 38835608, "title": "开发网站/抓包/抓音频", "sync": true, - "lastSyncDate": "2025-08-10T04:47:17.718Z" + "lastSyncDate": "2025-08-10T09:48:00.228Z" }, "38835609": { "id": 38835609, "title": "开发网站/抓包/charles", "sync": true, - "lastSyncDate": "2025-08-10T04:47:18.278Z" + "lastSyncDate": "2025-08-10T09:48:00.839Z" }, "38835610": { "id": 38835610, "title": "开发网站/pdf.js", "sync": true, - "lastSyncDate": "2025-08-10T04:47:18.946Z" + "lastSyncDate": "2025-08-10T09:48:01.473Z" }, "38835611": { "id": 38835611, "title": "开发网站/webplayer", "sync": true, - "lastSyncDate": "2025-08-10T04:47:19.678Z" + "lastSyncDate": "2025-08-10T09:48:02.405Z" }, "38835612": { "id": 38835612, "title": "开发网站/加解密", "sync": true, - "lastSyncDate": "2025-08-10T04:47:20.208Z" + "lastSyncDate": "2025-08-10T09:48:03.021Z" }, "38835613": { "id": 38835613, "title": "开发网站/cors", "sync": true, - "lastSyncDate": "2025-08-10T04:47:20.836Z" + "lastSyncDate": "2025-08-10T09:48:03.954Z" }, "38835614": { "id": 38835614, "title": "开发网站/Delphi", "sync": true, - "lastSyncDate": "2025-08-10T04:47:21.385Z" + "lastSyncDate": "2025-08-10T09:48:04.877Z" }, "38835615": { "id": 38835615, "title": "开发网站/APK反编译", "sync": true, - "lastSyncDate": "2025-08-10T04:47:21.915Z" + "lastSyncDate": "2025-08-10T09:48:05.515Z" }, "38835616": { "id": 38835616, "title": "开源项目", "sync": true, - "lastSyncDate": "2025-08-10T04:47:22.497Z" + "lastSyncDate": "2025-08-10T09:48:06.176Z" }, "38835617": { "id": 38835617, "title": "开源项目/siyuan", "sync": true, - "lastSyncDate": "2025-08-10T04:47:23.040Z" + "lastSyncDate": "2025-08-10T09:48:07.076Z" }, "38835618": { "id": 38835618, "title": "开源项目/rustdesk", "sync": true, - "lastSyncDate": "2025-08-10T04:47:23.606Z" + "lastSyncDate": "2025-08-10T09:48:07.991Z" }, "38835619": { "id": 38835619, "title": "开源项目/SiP", "sync": true, - "lastSyncDate": "2025-08-10T04:47:24.144Z" + "lastSyncDate": "2025-08-10T09:48:08.897Z" }, "38835620": { "id": 38835620, "title": "开源项目/GitHub", "sync": true, - "lastSyncDate": "2025-08-10T04:47:24.705Z" + "lastSyncDate": "2025-08-10T09:48:09.523Z" }, "38835621": { "id": 38835621, "title": "开源项目/GitHub/20230709", "sync": true, - "lastSyncDate": "2025-08-10T04:47:25.248Z" + "lastSyncDate": "2025-08-10T09:48:10.170Z" }, "38835622": { "id": 38835622, "title": "开源项目/GitHub/aria2", "sync": true, - "lastSyncDate": "2025-08-10T04:47:25.830Z" + "lastSyncDate": "2025-08-10T09:48:11.372Z" }, "38835624": { "id": 38835624, "title": "开源项目/GitHub/小白羊", "sync": true, - "lastSyncDate": "2025-08-10T04:47:26.382Z" + "lastSyncDate": "2025-08-10T09:48:11.974Z" }, "38835625": { "id": 38835625, "title": "开源项目/GitHub/alist", "sync": true, - "lastSyncDate": "2025-08-10T04:47:26.944Z" + "lastSyncDate": "2025-08-10T09:48:12.620Z" }, "38835626": { "id": 38835626, "title": "开源项目/GitHub/RustDesk", "sync": true, - "lastSyncDate": "2025-08-10T04:47:27.716Z" + "lastSyncDate": "2025-08-10T09:48:13.332Z" }, "38835627": { "id": 38835627, "title": "开源项目/GitHub/imagine", "sync": true, - "lastSyncDate": "2025-08-10T04:47:28.411Z" + "lastSyncDate": "2025-08-10T09:48:13.936Z" }, "38835628": { "id": 38835628, "title": "开源项目/GitHub/Bridge", "sync": true, - "lastSyncDate": "2025-08-10T04:47:28.958Z" + "lastSyncDate": "2025-08-10T09:48:14.592Z" }, "38835629": { "id": 38835629, "title": "开源项目/OnlyOffice", "sync": true, - "lastSyncDate": "2025-08-10T04:47:30.395Z" + "lastSyncDate": "2025-08-10T09:48:15.240Z" }, "38835630": { "id": 38835630, "title": "开源项目/OnlyOffice/20230809", "sync": true, - "lastSyncDate": "2025-08-10T04:47:30.959Z" + "lastSyncDate": "2025-08-10T09:48:15.847Z" }, "38835631": { "id": 38835631, "title": "开源项目/日历", "sync": true, - "lastSyncDate": "2025-08-10T04:47:31.522Z" + "lastSyncDate": "2025-08-10T09:48:16.478Z" }, "38835632": { "id": 38835632, "title": "开源项目/OCR", "sync": true, - "lastSyncDate": "2025-08-10T04:47:32.080Z" + "lastSyncDate": "2025-08-10T09:48:17.128Z" }, "38835633": { "id": 38835633, "title": "开源项目/Bridge", "sync": true, - "lastSyncDate": "2025-08-10T04:47:32.618Z" + "lastSyncDate": "2025-08-10T09:48:17.760Z" }, "38835636": { "id": 38835636, "title": "游戏网站", "sync": true, - "lastSyncDate": "2025-08-10T04:47:33.127Z" + "lastSyncDate": "2025-08-10T09:48:18.388Z" }, "38835638": { "id": 38835638, @@ -3274,25 +3274,25 @@ "id": 38835659, "title": "电子书", "sync": true, - "lastSyncDate": "2025-08-10T04:47:33.615Z" + "lastSyncDate": "2025-08-10T09:48:19.290Z" }, "38835660": { "id": 38835660, "title": "电子书/电子书制作", "sync": true, - "lastSyncDate": "2025-08-10T04:47:34.123Z" + "lastSyncDate": "2025-08-10T09:48:19.895Z" }, "38835661": { "id": 38835661, "title": "电子书/calibre", "sync": true, - "lastSyncDate": "2025-08-10T04:47:34.646Z" + "lastSyncDate": "2025-08-10T09:48:20.514Z" }, "38835662": { "id": 38835662, "title": "电子书/20230826", "sync": true, - "lastSyncDate": "2025-08-10T04:47:35.191Z" + "lastSyncDate": "2025-08-10T09:48:21.136Z" }, "38835663": { "id": 38835663, @@ -3308,7 +3308,7 @@ "id": 38835665, "title": "Favorites", "sync": true, - "lastSyncDate": "2025-08-10T04:47:35.747Z" + "lastSyncDate": "2025-08-10T09:48:21.770Z" }, "38835666": { "id": 38835666, @@ -3324,25 +3324,25 @@ "id": 38835668, "title": "翻译", "sync": true, - "lastSyncDate": "2025-08-10T04:47:36.315Z" + "lastSyncDate": "2025-08-10T09:48:22.404Z" }, "38835669": { "id": 38835669, "title": "智能家居", "sync": true, - "lastSyncDate": "2025-08-10T04:47:36.878Z" + "lastSyncDate": "2025-08-10T09:48:23.301Z" }, "38835670": { "id": 38835670, "title": "智能家居/HomeAssist", "sync": true, - "lastSyncDate": "2025-08-10T04:47:37.424Z" + "lastSyncDate": "2025-08-10T09:48:24.227Z" }, "58561271": { "id": 58561271, "title": "ClipperBox", "sync": true, - "lastSyncDate": "2025-08-10T04:47:37.972Z" + "lastSyncDate": "2025-08-10T09:48:25.187Z" }, "-1": { "id": -1, diff --git a/.obsidian/plugins/rss-reader/data.json b/.obsidian/plugins/rss-reader/data.json index 2d81ea17..67a5f5d9 100644 --- a/.obsidian/plugins/rss-reader/data.json +++ b/.obsidian/plugins/rss-reader/data.json @@ -771,28 +771,6 @@ "hash": "6be8c63fd610f6520a4991c80e051135", "highlights": [] }, - { - "title": "从零开始,改造一张可以用 Siri 控制的升降桌", - "description": "

其实在两年前,我就已经根据我派作者 @EstrellaXD 的文章《HomeKit 智能升降桌是怎样炼成的》,自己搓出来了适合我 HomeKit 升降桌的控制模块,并试产了几块。当时实现的功能很简单,就是通过模拟升降桌控制器模块的按键操作来实现将升降桌接入 HomeKit,进而可以使用 iPhone 和 Siri 来操作。

\n
\n
当时做的小模块
\n
\n

这个方案一用就是三年。直到 25 年,我和伴侣搬进了 188 平的大豪斯,原本只需要承载我一个人需求的桌子,需要负担的事情也更多了。比如一起在我的世界养猫吃饭、码字、缝纫、做开发、化妆……总之,原本四个档位的高度设定对我来说是绰绰有余,但应对两个人的需求就不太够。

\n

于是我又想起了升降桌智能化这事。我想,为什么不能有一个升降桌能让我多设定几个高度模式呢,或者可以让我们直接在手机或者键盘上输入数字,然后就自动升降到指定高度呢?

\n

一开始,我想着能花点钱解决的事情,就别自己费尽心思去搞了。毕竟,前不久才刚做完一个大手术,自己没那个心力,同时自己尝试过开发硬件之后,便也知道了其中的重重困难。所以,我便在网上搜索「智能升降桌」,想着干脆买张新的好了。

\n

事情当然不出意外地——出意外了。(要是没出意外你们现在也看不到这边文章了对吧。)在我搜索的过程中发现,如今很多升降桌的宣传虽然都加上了「智能」俩字,但某种程度上来讲,他们这个「智能」是基于传统「不可升降」桌子来定义的,而非智能家居时代里「能够接入家居平台」。

\n

当然,我也很早就知道有品牌做出了支持米家的智能升降桌,但 3000 块左右的售价多少让我有点难堪——这么多钱,都够我俩去海南自驾旅行一周了。

\n
\n

行吧,既然没有厂家愿意做,愿意做的我买不起,那就还是只能自己上了。

\n

折腾前的准备与忠告

\n

这里先给大家一个重要提醒:请在早上或中午开始探索,千万不要在傍晚开始。因为除了刷机和打《文明 6》,这个点开始探索,你很容易就见到凌晨四点五点六点或者刚刚天亮的城市了。

\n

想要完成这个项目,你需要准备一些工具和环境:

\n\n

目标与核心思路

\n

在开始改造之前,得想明白自己要什么。前情里已经透露了核心的需求,但我又想着做都做了,不如做个完整功能的升降桌,把控制模块上所有的功能都给接入智能化控制好了。因此,现在的目标就比较明确:在不换升降桌控制器的前提下,实现——

\n\n

有了目标,就可以思考改造的思路了。

\n

过去,我根据 @EstrellaXD 所写文章而制作的控制模块里,只是单纯模拟了升降桌按下高度档位的物理按钮来实现 HomeKit 控制。但要实现上面的目标,最核心的问题就是如何获取升降桌当前的高度,否则后面的功能全都无从谈起。

\n

拿到了关键的升降桌高度数据之后,还要让升降桌可以和 Home Assistant 交互:将升降桌数据传入 Home Assistant 实现展示,并通过 Home Assistant 发出控制指令来对升降桌高度进行操作。

\n

这样看来,总体的实现逻辑并不难,只要攻破这两个核心难点,问题就被解决了。

\n

方案一:基于 Upsy Desky 的协议破解

\n

市面上许多升降桌都是通过一根网线来连接升降桌控制盒和控制面板的。如果我们能逆向拿到控制面板和控制盒之间的沟通数据,便可以直接在中间接入一个无线控制模块,来实现读取高度数据并接入智能家居平台。基于这个原理,我很快就在摸索的过程中发现了一个项目:Upsy Desky。

\n

看到这个项目的时候,我有种「哇原来人家早就在这里等着我了」的感觉,感叹现在互联网和开源社区真是越来越厉害了。我迫不及待地下载了 Upsy Desky 项目提供的源文件,打开了里面的电路图和 PCB,发现 Upsy Desky 的思路与我是完全一致了。

\n

根据 Upsy Desky 提供的项目介绍文档和电路图,我了解到,许多升降桌的控制盒与控制面板都会通过 UART 协议来传输数据,只要在中间插入一个支持 UART 协议和能够接入 Home Assistant 的芯片,就能够实现所有的功能。

\n

从电路图里可以看出,Upsy Desky 的核心就是一块 ESP32-WROOM-32 芯片。它是乐鑫科技推出的一款通用型 Wi-Fi 和蓝牙模块。

\n
\n

明白了原理之后,我便开始尝试将这个方案应用到我的桌子上。我选择了更新的 ESP32-C3 芯片,因为它内置了 USB 接口,刷写固件更方便,可以节省一个 USB 转 UART 模块。

\n

ESPHome 介绍与安装

\n

给 ESP32 编译固件用的是 ESPHome。ESPHome 是一个 Home Assistant 的官方加载项,可以让我们简单快速地为 ESP 系列芯片创建自定义固件。简单来说,步骤如下:

\n
    \n
  1. 在 Home Assistant 里,一键安装官方加载项商店里的 ESPHome;
  2. \n
  3. 启动它,新建一个项目,选择对应的芯片;
  4. \n
  5. 将作者提供的 Upsy Desky YAML 代码复制进去;
  6. \n
  7. 修改适配 ESP32-C3 的部分;
  8. \n
  9. 将 ESP32-C3 用 USB 连接到 Home Assistant 的运行主机上;
  10. \n
  11. 保存,等待 ESPHome 自动编译固件和刷写。
  12. \n
\n

要在 Home Assistant 里安装 ESPHome 也很简单,但前提是你运行的 Home Assistant 设置里有「加载项商店」这个选项(使用 Home Assistant OS 或 Supervised 安装方式即可,Docker 版较为复杂)。进入加载项商店里就能看到它,一键安装就行了。

\n
\n

Upsy Desky 固件导入及源代码解读

\n

在 Upsy Desky 的 GitHub 里,作者已经提供了编译好的 bin 固件和源代码。如果和作者采用同款硬件,直接刷入他提供的固件即可。但由于我已经换了 ESP32-C3 作为主控芯片,就得自己编译一个适合 ESP32-C3 的固件。

\n

将 Upsy Desky 的源代码从 GitHub 下载好之后,里面的 firmware 文件夹存放的就是固件源码。先将里面的 addons 文件夹整个复制到 Home Assistant 的 config/esphome 文件夹里(可通过 Samba 或 File Editor 插件访问),然后再将里面的 base.yaml 也复制过来。

\n

现在回到 Home Assistant 里刷新一下 ESPHome,就能看到被导入的 Upsy Desky 源码 YAML 文件了。现在,我们就可以来修改这里面的代码,让它适配 ESP32-C3。

\n

第一步,修改芯片和框架类型:

\n
esp32:\n  board: esp32-c3-devkitm-1\n  framework:\n    type: esp-idf
\n

接着,是定义合适的 GPIO 引脚。这一步至关重要,直接关系到后续能否成功。由于 ESP32-WROOM-32 和 ESP32-C3 的 GPIO 引脚不一致,你需要根据你购买的开发板的引脚图(Pinout Diagram),重新定义要使用的 GPIO 引脚。只要避开图中标记为特殊用途的引脚,一般都可以使用。

\n
\n
请务必查找你所用开发板的引脚图
\n
\n

最后,添加 Wi-Fi 连接信息。建议使用 AP 热点模式,这样首次刷机后可以用手机连接设备创建的 Wi-Fi 来进行网络配置,避免密码输错导致无法联网。

\n
wifi:\n  # ... (省略 ssid 和 password)\n\n# 开启通过 ap 热点设定 Wi-Fi\nap:\n  ssid: \"Upsy-Desky-Setup\"\n  password: \"12345678\"
\n

当所有的代码修改完成后,将 ESP32-C3 开发板用 USB 线连接到 Home Assistant 主机,然后点击 ESPHome 右上角的 INSTALL,选择 Plug into the computer running ESPHome...,再找到你连接的 USB 设备,ESPHome 就会开始编译固件并自动刷写了。

\n
\n

Upsy Desky 的局限性

\n

一言以蔽之,Upsy Desky 方案并不支持我的升降桌类型。如果你的桌子恰好在官方兼容列表中,那么可以无痛使用。否则,就需要具备逆向工程的能力去分析和适配你桌子的 UART 数据,这对我来说难度过高。

\n
\n

方案二:外部传感器(激光测距)

\n

在方案一卡住后,一次偶然的下厨经历给了我灵感:既然无法从桌子「内部」读取高度,为何不从「外部」直接测量呢?

\n

这便引出了我们的最终方案:在桌板底部安装一个激光测距传感器,测量桌板到地面的实时高度。这个高度数据通过 ESP 芯片发送给 Home Assistant。同时,ESP 芯片的 GPIO 引脚连接到升降桌的物理按键上,通过程序模拟按键点击,从而实现精确控制。

\n

这个方案的额外好处是数据更准确。比如我给桌子加装了轮子后,桌子整体抬高了几厘米,传感器能测出真实高度,而桌子内置的高度显示则不会改变。

\n

芯片及传感器选型

\n

芯片我决定继续沿用 ESP32-C3。至于距离传感器,经过一番研究,我锁定了两款 ToF 红外距离传感器:VL53L0x 和它的「进阶款」 VL53L1x。其中——

[......]

查看全文

本文为会员文章,出自《单篇文章》,订阅后可阅读全文。

", - "content": "

其实在两年前,我就已经根据我派作者 @EstrellaXD 的文章《HomeKit 智能升降桌是怎样炼成的》,自己搓出来了适合我 HomeKit 升降桌的控制模块,并试产了几块。当时实现的功能很简单,就是通过模拟升降桌控制器模块的按键操作来实现将升降桌接入 HomeKit,进而可以使用 iPhone 和 Siri 来操作。

\n
\n
当时做的小模块
\n
\n

这个方案一用就是三年。直到 25 年,我和伴侣搬进了 188 平的大豪斯,原本只需要承载我一个人需求的桌子,需要负担的事情也更多了。比如一起在我的世界养猫吃饭、码字、缝纫、做开发、化妆……总之,原本四个档位的高度设定对我来说是绰绰有余,但应对两个人的需求就不太够。

\n

于是我又想起了升降桌智能化这事。我想,为什么不能有一个升降桌能让我多设定几个高度模式呢,或者可以让我们直接在手机或者键盘上输入数字,然后就自动升降到指定高度呢?

\n

一开始,我想着能花点钱解决的事情,就别自己费尽心思去搞了。毕竟,前不久才刚做完一个大手术,自己没那个心力,同时自己尝试过开发硬件之后,便也知道了其中的重重困难。所以,我便在网上搜索「智能升降桌」,想着干脆买张新的好了。

\n

事情当然不出意外地——出意外了。(要是没出意外你们现在也看不到这边文章了对吧。)在我搜索的过程中发现,如今很多升降桌的宣传虽然都加上了「智能」俩字,但某种程度上来讲,他们这个「智能」是基于传统「不可升降」桌子来定义的,而非智能家居时代里「能够接入家居平台」。

\n

当然,我也很早就知道有品牌做出了支持米家的智能升降桌,但 3000 块左右的售价多少让我有点难堪——这么多钱,都够我俩去海南自驾旅行一周了。

\n
\n

行吧,既然没有厂家愿意做,愿意做的我买不起,那就还是只能自己上了。

\n

折腾前的准备与忠告

\n

这里先给大家一个重要提醒:请在早上或中午开始探索,千万不要在傍晚开始。因为除了刷机和打《文明 6》,这个点开始探索,你很容易就见到凌晨四点五点六点或者刚刚天亮的城市了。

\n

想要完成这个项目,你需要准备一些工具和环境:

\n\n

目标与核心思路

\n

在开始改造之前,得想明白自己要什么。前情里已经透露了核心的需求,但我又想着做都做了,不如做个完整功能的升降桌,把控制模块上所有的功能都给接入智能化控制好了。因此,现在的目标就比较明确:在不换升降桌控制器的前提下,实现——

\n\n

有了目标,就可以思考改造的思路了。

\n

过去,我根据 @EstrellaXD 所写文章而制作的控制模块里,只是单纯模拟了升降桌按下高度档位的物理按钮来实现 HomeKit 控制。但要实现上面的目标,最核心的问题就是如何获取升降桌当前的高度,否则后面的功能全都无从谈起。

\n

拿到了关键的升降桌高度数据之后,还要让升降桌可以和 Home Assistant 交互:将升降桌数据传入 Home Assistant 实现展示,并通过 Home Assistant 发出控制指令来对升降桌高度进行操作。

\n

这样看来,总体的实现逻辑并不难,只要攻破这两个核心难点,问题就被解决了。

\n

方案一:基于 Upsy Desky 的协议破解

\n

市面上许多升降桌都是通过一根网线来连接升降桌控制盒和控制面板的。如果我们能逆向拿到控制面板和控制盒之间的沟通数据,便可以直接在中间接入一个无线控制模块,来实现读取高度数据并接入智能家居平台。基于这个原理,我很快就在摸索的过程中发现了一个项目:Upsy Desky。

\n

看到这个项目的时候,我有种「哇原来人家早就在这里等着我了」的感觉,感叹现在互联网和开源社区真是越来越厉害了。我迫不及待地下载了 Upsy Desky 项目提供的源文件,打开了里面的电路图和 PCB,发现 Upsy Desky 的思路与我是完全一致了。

\n

根据 Upsy Desky 提供的项目介绍文档和电路图,我了解到,许多升降桌的控制盒与控制面板都会通过 UART 协议来传输数据,只要在中间插入一个支持 UART 协议和能够接入 Home Assistant 的芯片,就能够实现所有的功能。

\n

从电路图里可以看出,Upsy Desky 的核心就是一块 ESP32-WROOM-32 芯片。它是乐鑫科技推出的一款通用型 Wi-Fi 和蓝牙模块。

\n
\n

明白了原理之后,我便开始尝试将这个方案应用到我的桌子上。我选择了更新的 ESP32-C3 芯片,因为它内置了 USB 接口,刷写固件更方便,可以节省一个 USB 转 UART 模块。

\n

ESPHome 介绍与安装

\n

给 ESP32 编译固件用的是 ESPHome。ESPHome 是一个 Home Assistant 的官方加载项,可以让我们简单快速地为 ESP 系列芯片创建自定义固件。简单来说,步骤如下:

\n
    \n
  1. 在 Home Assistant 里,一键安装官方加载项商店里的 ESPHome;
  2. \n
  3. 启动它,新建一个项目,选择对应的芯片;
  4. \n
  5. 将作者提供的 Upsy Desky YAML 代码复制进去;
  6. \n
  7. 修改适配 ESP32-C3 的部分;
  8. \n
  9. 将 ESP32-C3 用 USB 连接到 Home Assistant 的运行主机上;
  10. \n
  11. 保存,等待 ESPHome 自动编译固件和刷写。
  12. \n
\n

要在 Home Assistant 里安装 ESPHome 也很简单,但前提是你运行的 Home Assistant 设置里有「加载项商店」这个选项(使用 Home Assistant OS 或 Supervised 安装方式即可,Docker 版较为复杂)。进入加载项商店里就能看到它,一键安装就行了。

\n
\n

Upsy Desky 固件导入及源代码解读

\n

在 Upsy Desky 的 GitHub 里,作者已经提供了编译好的 bin 固件和源代码。如果和作者采用同款硬件,直接刷入他提供的固件即可。但由于我已经换了 ESP32-C3 作为主控芯片,就得自己编译一个适合 ESP32-C3 的固件。

\n

将 Upsy Desky 的源代码从 GitHub 下载好之后,里面的 firmware 文件夹存放的就是固件源码。先将里面的 addons 文件夹整个复制到 Home Assistant 的 config/esphome 文件夹里(可通过 Samba 或 File Editor 插件访问),然后再将里面的 base.yaml 也复制过来。

\n

现在回到 Home Assistant 里刷新一下 ESPHome,就能看到被导入的 Upsy Desky 源码 YAML 文件了。现在,我们就可以来修改这里面的代码,让它适配 ESP32-C3。

\n

第一步,修改芯片和框架类型:

\n
esp32:\n  board: esp32-c3-devkitm-1\n  framework:\n    type: esp-idf
\n

接着,是定义合适的 GPIO 引脚。这一步至关重要,直接关系到后续能否成功。由于 ESP32-WROOM-32 和 ESP32-C3 的 GPIO 引脚不一致,你需要根据你购买的开发板的引脚图(Pinout Diagram),重新定义要使用的 GPIO 引脚。只要避开图中标记为特殊用途的引脚,一般都可以使用。

\n
\n
请务必查找你所用开发板的引脚图
\n
\n

最后,添加 Wi-Fi 连接信息。建议使用 AP 热点模式,这样首次刷机后可以用手机连接设备创建的 Wi-Fi 来进行网络配置,避免密码输错导致无法联网。

\n
wifi:\n  # ... (省略 ssid 和 password)\n\n# 开启通过 ap 热点设定 Wi-Fi\nap:\n  ssid: \"Upsy-Desky-Setup\"\n  password: \"12345678\"
\n

当所有的代码修改完成后,将 ESP32-C3 开发板用 USB 线连接到 Home Assistant 主机,然后点击 ESPHome 右上角的 INSTALL,选择 Plug into the computer running ESPHome...,再找到你连接的 USB 设备,ESPHome 就会开始编译固件并自动刷写了。

\n
\n

Upsy Desky 的局限性

\n

一言以蔽之,Upsy Desky 方案并不支持我的升降桌类型。如果你的桌子恰好在官方兼容列表中,那么可以无痛使用。否则,就需要具备逆向工程的能力去分析和适配你桌子的 UART 数据,这对我来说难度过高。

\n
\n

方案二:外部传感器(激光测距)

\n

在方案一卡住后,一次偶然的下厨经历给了我灵感:既然无法从桌子「内部」读取高度,为何不从「外部」直接测量呢?

\n

这便引出了我们的最终方案:在桌板底部安装一个激光测距传感器,测量桌板到地面的实时高度。这个高度数据通过 ESP 芯片发送给 Home Assistant。同时,ESP 芯片的 GPIO 引脚连接到升降桌的物理按键上,通过程序模拟按键点击,从而实现精确控制。

\n

这个方案的额外好处是数据更准确。比如我给桌子加装了轮子后,桌子整体抬高了几厘米,传感器能测出真实高度,而桌子内置的高度显示则不会改变。

\n

芯片及传感器选型

\n

芯片我决定继续沿用 ESP32-C3。至于距离传感器,经过一番研究,我锁定了两款 ToF 红外距离传感器:VL53L0x 和它的「进阶款」 VL53L1x。其中——

[......]

查看全文

本文为会员文章,出自《单篇文章》,订阅后可阅读全文。

", - "category": "", - "link": "https://sspai.com/prime/story/diy-a-siri-enabled-standing-desk", - "creator": "宛潼", - "pubDate": "Wed, 06 Aug 2025 17:32:53 +0800", - "enclosure": "", - "enclosureType": "", - "image": "", - "id": "", - "language": "zh", - "folder": "资讯", - "feed": "少数派", - "read": false, - "favorite": false, - "created": false, - "tags": [], - "hash": "b46104a7c2b0ca5b11900671ecc205ed", - "highlights": [] - }, { "title": "现在的中国男人为啥大多不戴帽子了?", "description": "




本 文 约 6800 字
阅 读 需 要 20 分 钟


这些年来,时尚潮流来了又去,戴帽子的习惯似乎也在不经意间发生着改变。回顾20世纪60-80年代的老照片,还可以看到许多赵本山同款鸭舌帽,和年轻人青睐的草绿色仿军帽。但在几十年后的今天,已经很难找到真正的“群众性”帽子了。



如今,除了军人、警察、医护等职业需要,或是取得学位时履行拨穗仪式,大多数人在正式场合通常不会戴帽子。平时如果戴帽子,主要也是为了保暖、防晒的实际需要,或是和衣服搭配,甚至用来掩盖没洗头等情况。这一习惯和秉承“冠礼”的古代似乎正好相反。

 

为什么现代人,特别是男性不如古人爱戴帽子了?

 

“冠”与“巾”:构成古人头上的风景

 

大概为了修饰脸型,今天的古装剧男主角(清代背景除外)不是潇洒地披散着及腰长发,就是活泼地扎着高马尾,但在现实中,古人并不会以这些发型示人。看似简单的“衣冠”二字,在中国传统文化中被赋予了特殊意义,既是缙绅阶层的代指,又能衍生出文明礼教的含义。

  

究其根源,在宗法制度森严的古代中国,自上而下都需秉承服饰礼制,头上的帽子和身上的着装不仅要满足实际的保暖、装饰功能,更是不同社会地位的直观体现。《礼记》载:

 

“礼义之始在于正容体,齐颜色,顺辞令……故冠而后服备,服备而后容体正,颜色齐,辞令顺。故曰:冠者礼之始也。”



从西周到清代初年,冠帽或巾帻始终是华夏成年男子头顶必备之物。与之对应的“散发”,甚至成为放浪形骸的代称,如袁闳“散发绝世”、李白“散发弄扁舟”等。

 

《说文》对冠的字形和字意做出诠释:

 

“冠,絭也,所以絭发,弁冕之总名也。”

 

冠中的“元”不仅表声,也有“首”的含义,表示冠的作用。《释名》谓:“冠,贯也,所以贯韬发也。”早在周代,“加冠之礼”已经成为贵族男子专属的成年仪式,在二十岁(天子、诸侯可提前至十二岁)举行,改变儿童时梳的“总角”发型,将头发聚拢在头顶束成发髻,髻上戴冠。冠需要用横穿发髻的“簪”和系在下巴下的“缨”来固定,“气昂昂头戴簪缨”便成为显贵者的代指。孔子弟子子路(仲由)任卫国大夫孔悝的邑宰,因反对孔悝叛乱而遭到袭击,交战中冠缨被打断,子路说:“君子死而冠不免。”于是正冠结缨而死,体现出“冠”对于彰显士大夫身份和气节的意义。

 


《后汉书·舆服志》记载的冠式有十九种,后来历代冠式更为多样,形制各异。从周代到西汉,冠的形制还比较小,装饰性大于实用性,《淮南子》总结为“寒不能暖,风不能障,暴不能蔽”。东汉时,冠的形制变大,文官戴“进贤冠”,公侯冠上有三梁,官职越低,梁数越少。武官则戴“武弁大冠”,无需插簪固定。

 


作为礼冠的“冕”,曾是帝王、诸侯、公卿所戴的礼帽,后来专指皇冠。冕由束发的冕圈“武”、绕在颔下固定的冕带“紘”、覆在冕圈上的冕板“延”、延前垂下的玉珠串“旒”组成,周天子之冕十二旒(十二根丝绳,分别串十二枚玉珠),诸侯九旒、上大夫七旒、下大夫五旒。

 



在“礼不下庶人”的古代,平民百姓不能戴冠,但也不能直接袒露着头顶,头巾成为他们必备的覆盖发髻之物,又名“帻”,《仪礼》称:


“二十成人,士冠,庶人巾。”


《方言》记载了头巾的不同别名:


“自关以西,秦、晋之郊曰络头,南楚、江、湘之间曰陌头;自河以北,赵、魏之间曰幧头。”


古代称平民为“黔首”,并不是因为他们头发尚未变白,而是用黑布头巾裹头。“苍头”在战国时原指用青布裹头的军队士卒,汉代因为仆役戴青色头巾,也用此词来代指奴仆,后来才衍生出白头老人的含义。东汉末年,太平道首领张角等发动农民起义,以头裹黄巾作为标志,史称“黄巾军”。甚至在后世道教关于天界的传说里,值勤神将也都是“黄巾力士”。

 

原本地位低下的头巾,随着时间的推移逐渐从民间进入上层,和冠帽悄然融合。汉元帝“额有壮发”,发际线过低,王莽头秃,两人虽然面临的困扰不一样,解决方法却是相同的,都是用巾帻裹住头再戴冠。好在这时冠的形制变大了,可以盖住整个头顶。东汉后期,王公名士“以幅巾为雅”,“袁绍、崔豹之徒,虽为将帅,皆着缣巾”。这和老庄谈玄影响下的不拘礼节的社会风气有一定关系。东汉郭泰(东汉时期名士)的品学为时人所重,一日外出遇雨,折起头巾一角垫着遮雨,人们争相仿效,都将头巾的一角折起来,称为“林宗巾”(郭泰字林宗),侧面体现出头巾在各阶层的普及。


现在熟悉的“帽”字,原本写作“冃(mào)”,含义为“小儿及蛮夷头衣也”,字形也是一顶帽子的形状。北方少数民族的御寒帽子古名“搭耳帽”,用牛皮制作,以羔毛络缝,能够护住头顶和耳朵。赵武灵王实施“胡服骑射”改革,以绫绢仿制搭耳帽,取名“爪牙帽子”,作为赵国军服。汉乐府诗《陌上桑》中,有“少年见罗敷,脱帽著帩头”的诗句,侧面反映出那时的帽子还不登大雅之堂,不如头巾体面。

 


两晋南北朝时期,“帽”已经不局限于便帽,开始具有和“冠”相近的含义。如南朝梁皇帝平时习惯戴白纱帽,百姓戴杂色纱帽,南朝宋的官员戴乌纱帽,隋朝也沿袭此制。但冠与帽毕竟有所区别,即使在古人的口语中帽逐渐取代了冠,诗中“冠”“帽”可为互文,“羞将短发还吹帽,笑倩旁人为正冠”,但在成语中也很难完全替换,比如“怒发冲冠”可以形容愤怒时头发上竖的形态,但“怒发冲帽”别人根本看不见。

 

古代关于帽子最著名的典故之一“侧帽”,来自西魏“八柱国”之一的独孤信,他是北周明帝宇文毓、隋朝开国皇帝隋文帝杨坚的岳父,也是唐高祖李渊的外祖父,在历史上实在罕见。独孤信以“美风仪”著称,在秦州做官时,有一天出城打猎,日暮时骑马入城,帽子被风吹斜了也来不及扶正。很快,全城人都学着他的样子戴帽子,成为独特的风景。《新唐书》称:“天宝初,贵族及士民好为胡服胡帽。”长孙无忌曾用乌羊毛作浑脱毡帽,“浑脱”意为盛装乳酪的牛皮囊。产于扬州的毡帽可能是模仿“胡帽”的创制,唐宪宗时,御史中丞裴度曾遭李师道派来的杀手刺杀,头上挨了一刀,质地厚实的扬州毡帽救了他一命,仅受轻伤。唐代舞女表演从西域传来的“柘枝舞”时,头戴尖顶帽,帽侧缀有铃铛,装饰珠子图案,又名“珠帽”。士人穿便服时多以“乌帽”和“白衣”搭配。



早期头巾的包头方法是从脑后拢起,在前额打结,类似近代陕北农民在头上系手巾的方法。汉代梁冀对头巾进行改制,从前向后包头,折起上角,叫“折上巾”,到北周武帝时,将折上巾裁出四脚(四带),二带系脑后下垂,二带反系头上,发展成巾的一种新类型“襆头”。

 


幞头问世后,经历了材质从软到硬的演变,外形也从头巾变得越来越像帽子。在电影《长安的荔枝》里以反派身份出现的宦官鱼朝恩,曾任“天下观军容宣慰处置使”,专典神策军,权宠一时,其头饰“军容”幞头,时人争效,称为“军容头”。流行头饰“军容头”,应当就是这种权势的视觉展现。



五代末期,更加轻巧的漆纱幞头得以流行,宋代已经直接称幞头为“幞头帽子”。幞头系在脑后的带子,原有“短脚”“长脚”的区别,后来又改制为用竹木或铁丝为骨的硬脚,可以方便地将它们固定成各种形状:平直展开、弯曲、交叉、一上一下、两脚偏向同一侧……显得很有创意。“展脚幞头”是士大夫阶层的象征,伸出的两根长脚可以有效防止官员上朝时交头接耳。明代官员戴的乌纱帽成为幞头最后的一个变体,帽主体由前低后高的两部分组成,称为前屋和后山,后山下固定着两个外伸的帽翅,和幞头帽子的结构相似。

 


元代,在蒙古族服饰的影响下,帽子的种类更为多样,“官民皆戴帽,其檐或圆,或前圆后方,或楼子,盖兜鍪之遗制也”。明代皇帝和官员继承了“直檐大帽”的传统,普通人常戴六瓣合缝的瓜皮小帽,别名“六合一统帽”。《金瓶梅》中,富甲一方的西门庆在送人出门时说:“你休怪我不送你,我戴着小帽不好出去。”体现出小帽在当时通常象征庶民身份。

 


在帽子流行的同时,头巾也在同步使用,明代士人服饰以“方巾圆领”为主要特点,儒巾通常以黑绉纱为表,漆藤丝或麻布为里,质坚而轻。秀才以上士绅惯戴“四方平定巾”,它是一种四角黑漆方巾,据说是杨维祯见明太祖朱元璋时所戴。太祖问:“此巾何名?”杨维桢回答:“此四方平定巾也。”朱元璋认为此名甚佳,便诏令天下士人戴此巾。

 

冠巾之下,明代男性还要戴一种“基本款”束发网巾,以黑丝结成,形如渔网,上有总绳拴紧,意为“一统山河”。据传也是明太祖看到道士以茧丝结网约发后,询问缘由,得知“裹以头,则万发俱齐”,下旨要求推广的。从达官贵人到生员吏隶,都必须在冠下戴网巾,催生了专门的市场,南京有地名“网巾市”,就是制作和出售网巾的集散地。明朝灭亡后,时人笔记中记载了一位在福建邵武被捕的抗清者,坚持不改衣冠,从容赴死,临刑前让仆人用笔墨在他额上画了网巾,表示不忘明制。清将杨名高问他姓名,他回答:“叫我‘画网巾’就可以了。”


清代由于男性发型特殊,剃过的头上更需要帽子挡风遮阳,方巾就无法再用了。官员的官帽用不同的“顶珠”体现官职高低,共有东珠、红宝石、红珊瑚、蓝宝石、青金石、水晶、砗磲(chē qú)、金和银9种。特别在清朝廷看来,产于东北地区松花江流域的东珠有着特殊的地位,一品官以下不得以此做顶戴,否则将以僭越罪论处。其实明代也有关于帽饰的制度,洪武六年(1373)曾规定:职官一品、二品的帽顶、帽珠用玉,三品至五品的帽顶用金,帽珠除玉外都可用,六品至九品帽顶用银,帽珠用玛瑙、水晶、香木。

 


在走向现代化的过程里

帽子曾经仍是国家规定的礼服

 

随着中国走向近代化、现代化的过程,帽子并不是在封建王朝覆灭后的一夜之间离开了人们的头顶,而是经历了较长的演变过程。辛亥革命后,伴随着政治、经济、文化的巨变,普通人的服饰、发型也不可避免地发生了变革。曾作为等级符号而存在的官帽、不同材质的帽顶珠,随着帝制的废除失去了社会基础。在西方潮流的冲击下,与我国传统冠帽不同的西式礼帽甚至一度成为国家规定的礼服组成部分。

 

在欧美的社会传统里,帽子曾经同样和穿着者的地位紧密相关,并衍生出了相关礼仪。一些流行段子称,西方男人戴礼帽,是因为中世纪的欧洲人不讲卫生,经常从城堡高处往下倒垃圾,高礼帽正好可以起到遮挡效果。实际上,这种高顶礼帽在18世纪末才出现。

 


1912年,中华民国临时参议院通过《服制案》,规定了男女礼服制度,其中男子礼服分为大礼服和常礼服两种,大礼服需搭配高而有檐的平顶黑色礼帽,常礼服需搭配较低而有檐的圆顶黑色礼帽。1929年,民国政府重新颁布《民国服制条例》,男子礼服在冬季搭配凹顶椭圆边黑色软礼帽,夏天则是平顶白色硬草帽。

 

尽管基于民国的实际,关于服制的规章并不能普及到全体民众,仍然对礼帽的流行起到了促进作用。头戴西式礼帽、身穿长衫或西服的成年男性,在老照片中定格成特有的“民国范儿”。学生常戴帽围较坚实的鸭舌帽,俗称“学生帽”。陈鸿年著《北平风物》中,写到自己在民国读书时流行的冬季穿戴:


“一条毛围脖儿,一件短大衣,一顶鸭舌帽。俏皮小伙儿不穿棉,耍的是这个漂亮劲儿!”


1938年,民国政府颁布了《学生制服规程》,规定小学、中学学生帽为圆形,大学学生帽为正方形。



为了凸显民族自豪感,政府要求礼帽的制作材料均为国货。市场的需求催生了制帽业的繁荣,各大城市都有专门经营帽子的老字号店铺,如“盛锡福”“马聚源”等等,现代人已经很难想象帽子生意也有过如此繁荣的气象。在北平前门外鲜鱼口,相传有两家从清代开始经营的帽店开展过“logo商战”,一家帽店在门口摆了个捧着元宝的黑漆木猴做招牌,见它生意兴隆,旁边的一家店也摆了个一模一样的木猴,借以迷惑顾客。


与西式礼帽相映成趣的是,广大农民仍然习惯戴清代沿袭下来的瓜皮帽、毡帽,夏季劳动时戴草帽。鲁迅笔下,结实耐用的“乌毡帽”是绍兴农民必备之物——


“是一种黑色的、半圆形的东西,将那帽边翻起一寸多,戴在头上的。”


闰土从小戴到老,阿Q没钱的时候就用乌毡帽抵押几个钱喝酒。陕北农民习惯用白羊肚手巾缠头代替帽子,既能遮挡黄土高原的漫天尘土,又方便解下来擦汗。



民国时期,军人、警察、护士等职业的制服在西方影响下配备了专门的制式帽子。1910年,清末“新军”模仿德国普鲁士风格设计了军服和大檐军帽,北伐战争时期,不同军阀势力的军帽常有模仿日式军帽造型,但源头仍然是西方的军帽。抗战时期,国民党部队佩戴的仿德国式军帽前面有两枚扣子,用来固定护耳,在国共合作阶段,八路军戴的帽子也是这一款式。解放战争期间,国民党军配发仿美式军帽,在相关题材的影视剧里经常有所体现。民国警服样式经历多次改变,配备的帽子主要沿袭了德国、日本等国家的制式。


在1928年召开的全国护士代表大会上,规定护士统一佩戴白色燕尾帽作为行业标志,这一制式一直流传到当代,有些高校的护理专业还会在学生进入临床实习或毕业时专门举办授帽仪式。


现在的中国男性为啥大多不戴帽子了?

 

新中国成立后,帽子经历了一段流行期。但和过去的时代最大不同的是,除了军人、警察等职业规范和统一了制服和对应的帽子外,国家层面并没有面向民众规定专门的“礼服”形制。尽管如此,大众的着装选择很自然地受到社会大潮的影响,帽子也不例外。

 

民国盛行的西式礼帽在1949年后逐渐退出了历史舞台,男性群体特别是城市居民群体中流行戴外形类似军帽的“解放帽”,灵感源于列宁在十月革命期间戴过的八角帽,也叫列宁帽,和当时的“干部服”“人民装”搭配协调。冬季,同样源自军人制服的护耳剪绒帽在北方几乎人手一顶,既保暖又显示出威武之气。因为雷锋最为人熟知的照片上戴着这种帽子,它又名“雷锋帽”。对军帽的推崇在20世纪60、70年代达到了顶峰,在那个特殊的历史时期,群众的服装款式、色彩趋于整齐划一,民谚称:“远看一大堆,近看蓝绿灰。”由于军人受到尊崇,绿军帽在此时最受欢迎,成为独特的身份象征而广受追捧,在反映“大院子弟”生活的影视剧里,身穿父兄军装、头戴军帽的年轻人骑着二八大杠(自行车的一种),在街头呼啸而过,囿于“出身”而没有资格戴的人只能望而生羡。

 


改革开放后,国外和港澳台影视剧的陆续热播,让观众见识到了风格更多的帽子。市场经济的繁荣为人们带来了更多的选择余地,城乡居民之间原本的落差可以通过购买力来弥补,民众对帽子的选择进一步趋于多样化,不再千篇一律。《平凡的世界》里,成为“农民企业家”的孙少安给自己置备了城里人穿戴的毛料制服和单帽,为的是更加自如地谈生意。进入90年代,港台明星影响下发型时尚的不断变化,也潜移默化地影响着人们对帽子的态度。“四大天王”火遍大江南北的时候,同款发型在年轻人里备受追捧,如果在精心打理的四六分“郭富城头”上扣一顶帽子,反而影响了帅气的外观。

 

而在这个大变迁的时期,需要佩戴统一帽子的行业却在增多。不仅军装和警服经历了数次变化,其他职业的帽子也逐渐走向统一化。比如,在20世纪70年代,工地施工者戴的“安全帽”还是柳条编的头盔,具有一定硬度和弹性,常常被工人扣过来当小凳子坐,但这种安全帽比较笨重,保护效果也难以实现,甚至有人因为不戴而发生了事故。80年代后,随着安全管理相关规章制度的完善,安全帽经历了塑胶材质、高密度聚乙烯材质、玻璃钢材质的不断演化,现在已经出现了带有智能芯片和物联网卡的智能安全帽,让安全系数再上一个台阶。中国传统厨师行业并没有戴帽子的习惯,1984年,中国成立了第一个厨师帽会组织,象征卫生的白色工作帽逐渐成为“官方认证”的标志,成为现在人们最熟悉的厨师形象。帽子越高、褶皱越多,代表等级越高。总厨、大厨佩戴29.5厘米高的厨师长帽,普通厨工的帽子高度仅有10.5厘米。这些职业帽向着规范化的演变,正是高速发展的中国社会现代化的缩影。

 



和“职业帽”的普及相映成趣的是,成年男性群体的“生活帽”少了。私家车、公共交通等便捷的出行工具,让人们的上班之路不再有风吹日晒之苦,不断提高的卫生条件和城市环境也减少了灰尘弄脏头发的烦恼,即使遇到降温,连帽外套也可以基本解决需要。可能只有头发稀疏的老年人,还在降温后保留着戴帽子的习惯。农民虽然劳动时还会戴帽子,这一习惯也在悄然发生着变化。有关报道称,近年来陕北黄土高原全面绿化,原本农民出门必扎的白羊肚手巾正在宣告“退休”。

 


不过,时尚常常是轮回的。由于现代人在快节奏的生活和较大的工作压力下常常面临脱发的困扰,或许某个时候需要继续重拾帽子来修饰外表也未可知。

 

参考文献:

1、蒋栋元.帽子民俗的文化解读[J].西北民族大学学报(哲学社会科学版),2005(01).

2、牛佳鑫.古代头衣常用字“帽、冠、巾”的演变研究[J].文教资料,2017(12).

3、滕维雅.帽文化之瑰宝──巾[J].上海大学学报(社会科学版),1997(03).

4、钟林轩.冠巾纵横谈──历史剧服装设计杂谈之一[J].戏剧(中央戏剧学院学报),1994(03).

5、骆文.巾帽 头上的“革命”[J].中华遗产,2015,(第2期).

6、刘小方.中华冕冠与欧美自由帽——帽子旅行记[J].百科知识,2021(13).


*本文系“国家人文历史”独家稿件,欢迎读者转发朋友圈。



\"图片\"
END
作者 | 瑶华
编辑 | 胡心雅 
 主编 | 周斌
排版 | 刘是琪(实习)
校对 |  火炬 李栋 张斌 古月 戈雨
\"图片\"

国历好物
\"图片\"

蓄势、顺势、借势、逆势

于危机中寻先机

于危局中开新局

历史的每一步转折

都是危机与机遇的博弈

《国家人文历史》团队最新力作

讲透中国古代多个关键转折时期

新旧更迭的内在逻辑

\"图片\"


点击下方封面,即可购买



↓↓↓


\"图片\"
\"图片\"

“在看”的永远18岁~

\n \n\n \n
\n\n \n 文章原文\n
\n \n\n \n\n \"\"
", @@ -1724,7 +1702,7 @@ { "title": "关于沉浸式翻译的两个疑问:泄漏隐私 && 限制第三方 API", "description": "今天,当我还沉浸在沉浸式翻译的时候,有同学已经把瓜喂到嘴边了: 然后我就去研究了一下,事情…大概是这样的。 沉浸式翻译是什么? 这是一款非常流行的浏览器翻译插件,青小蛙也一直在用。(沉浸式 ", - "content": "\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

今天,当我还沉浸在沉浸式翻译的时候,有同学已经把瓜喂到嘴边了:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
来自 Appinn 频道群组
\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
来自小众软件论坛
\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

然后我就去研究了一下,事情…大概是这样的。

\n\n\n\n

沉浸式翻译是什么?

\n\n\n\n

这是一款非常流行的浏览器翻译插件,青小蛙也一直在用。(沉浸式翻译 – 支持 PDF、EPUB、网页,可同时显示原文与译文的双语翻译工具[Chrome/Firefox/油猴脚本])

\n\n\n\n

最方便的地方是,只需要将鼠标放到需要翻译的地方,按下快捷键,就能翻译该行。如果需要全文翻译,也可以按快捷键实现。并且,是双语显示,方便你对照原文,还能使用 AI 来翻译内容。

\n\n\n\n

沉浸式翻译的第一个问题:快照泄漏隐私

\n\n\n\n

如果你没用过生成网页快照这个功能,那么这个问题和你无关。

\n\n\n\n

如果你用过网页快照,那么:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
青小蛙找到酱紫表的微博看到的这张图片(网络上流传的也是这张图片)
\n\n\n

沉浸式翻译有一个功能叫做生成网页快照,它能为翻译后的网页生成一个快照,然后分享给别人。但由于权限设置问题,这个翻译后的快照被搜索引擎爬到了,于是…这些用户翻译的内容就被泄漏了:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n

截止目前,该地址 readit.plus 在常见的搜索引擎中还有一些内容:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

不过,这些页面都已经无法打开了:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

但是,根据蓝点网的消息,终究还是泄漏了一个 readit.site.tar.zst 文件,这个文件中包含了大量敏感内容:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

关于这个功能,沉浸式翻译官方是这样解释的:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

所以,如果你曾经分享过一些什么东西…就仔细回想一下吧,别无他法。

\n\n\n\n

沉浸式翻译的第二个问题:限制第三方API使用【已撤回】

\n\n\n\n

就在昨天晚上(2025年8月8日),沉浸式翻译在公众号发布了一则公告(已删除),大意是:

\n\n\n\n

用户使用了自己的 API Key 接入沉浸式翻译,但沉浸式翻译认为有些 API 属于非正规渠道,甚至是盗刷信用卡得来的,会影响使用体验。以及为了保证沉浸式翻译所有用户(包括免费、Pro 和 Max 用户)的体验与合法权益,决定从下周起,沉浸式翻译将仅支持来自官方渠道、大型云服务商或已认证第三方的 API。

\n\n\n\n

这则公告目前已撤回,并且在流传的沉浸式翻译 Telegram 群组内容截图(图片来自 linux.do)显示:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

目前尚不知未来情况如何,截止 2025年8月9日,1.19.6 版本的沉浸式翻译插件还能使用第三方 API Key,以及修改「自定义 API 接口」。

\n\n\n\n

不过,青小蛙觉得这有点多管闲事了。

\n\n\n\n

以及还有一些瓜,由于没有明确的证据,就这样吧。

\n\n\n\n

用还是能用的,问题不大。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/immersive-translate-2-questions/

\n

[ 点击前往获取链接 ]


", + "content": "\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

今天,当我还沉浸在沉浸式翻译的时候,有同学已经把瓜喂到嘴边了:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
来自 Appinn 频道群组
\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
来自小众软件论坛
\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

然后我就去研究了一下,事情…大概是这样的。

\n\n\n\n

沉浸式翻译是什么?

\n\n\n\n

这是一款非常流行的浏览器翻译插件,青小蛙也一直在用。(沉浸式翻译 – 支持 PDF、EPUB、网页,可同时显示原文与译文的双语翻译工具[Chrome/Firefox/油猴脚本])

\n\n\n\n

最方便的地方是,只需要将鼠标放到需要翻译的地方,按下快捷键,就能翻译该行。如果需要全文翻译,也可以按快捷键实现。并且,是双语显示,方便你对照原文,还能使用 AI 来翻译内容。

\n\n\n\n

沉浸式翻译的第一个问题:快照泄漏隐私

\n\n\n\n

如果你没用过生成网页快照这个功能,那么这个问题和你无关。

\n\n\n\n

如果你用过网页快照,那么:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
青小蛙找到酱紫表的微博看到的这张图片(网络上流传的也是这张图片)
\n\n\n

沉浸式翻译有一个功能叫做生成网页快照,它能为翻译后的网页生成一个快照,然后分享给别人。但由于权限设置问题,这个翻译后的快照被搜索引擎爬到了,于是…这些用户翻译的内容就被泄漏了:

\n\n\n
\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n

截止目前,该地址 readit.plus 在常见的搜索引擎中还有一些内容:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

不过,这些页面都已经无法打开了:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

但是,根据蓝点网的消息,终究还是泄漏了一个 readit.site.tar.zst 文件,这个文件中包含了大量敏感内容:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

关于这个功能,沉浸式翻译官方是这样解释的:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

所以,如果你曾经分享过一些什么东西…就仔细回想一下吧,别无他法。

\n\n\n\n

沉浸式翻译的第二个问题:限制第三方API使用【已撤回】

\n\n\n\n

就在昨天晚上(2025年8月8日),沉浸式翻译在公众号发布了一则公告(已删除),大意是:

\n\n\n\n

用户使用了自己的 API Key 接入沉浸式翻译,但沉浸式翻译认为有些 API 属于非正规渠道,甚至是盗刷信用卡得来的,会影响使用体验。以及为了保证沉浸式翻译所有用户(包括免费、Pro 和 Max 用户)的体验与合法权益,决定从下周起,沉浸式翻译将仅支持来自官方渠道、大型云服务商或已认证第三方的 API。

\n\n\n\n

这则公告目前已撤回,并且在流传的沉浸式翻译 Telegram 群组内容截图(图片来自 linux.do)显示:

\n\n\n\n
\"关于沉浸式翻译的两个疑问:泄漏隐私
\n\n\n\n

目前尚不知未来情况如何,截止 2025年8月9日,1.19.6 版本的沉浸式翻译插件还能使用第三方 API Key,以及修改「自定义 API 接口」。

\n\n\n\n

不过,青小蛙觉得这有点多管闲事了。

\n\n\n\n

以及还有一些瓜,由于没有明确的证据,就这样吧。

\n\n\n\n

用还是能用的,问题不大。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/immersive-translate-2-questions/

\n

[ 点击前往获取链接 ]


", "category": "业界消息", "link": "https://www.appinn.com/immersive-translate-2-questions/", "creator": "青小蛙", @@ -1768,7 +1746,7 @@ { "title": "GPT-5 也嫌弃表情符号了,还说它不再谄媚,少拍马屁", "description": "GPT-5,它来了。 详细文字在这里:《Introducing GPT-5》,好长不想看 但看到了这里: 并且:减少谄媚,少拍马屁 在发布 GPT-5 之前,我看到的都是这样的内容: 当时内心充满激动 ", - "content": "\n

GPT-5,它来了。

\n\n\n\n
\"GPT-5
\n\n\n\n

详细文字在这里:《Introducing GPT-5》,好长不想看

\n\n\n\n

但看到了这里:

\n\n\n\n
\"GPT-5
\n\n\n\n

并且:减少谄媚,少拍马屁

\n\n\n\n
\"GPT-5
\n\n\n\n

在发布 GPT-5 之前,我看到的都是这样的内容:

\n\n\n\n
\"GPT-5
\n\n\n\n

当时内心充满激动,世界又要变啦!

\n\n\n\n

在发布之后,我去问了GPT-5,它是这样总结的:

\n\n\n\n

问:总结一下GPT-5与之前版本的区别

\n\n\n\n

答:总的来说,GPT-5在智能对话、生成内容、跨模态处理、语言支持等方面都超越了前几代,带来了更强的通用性和灵活性。

\n\n\n\n

然后,我又问了一个诛心的问题:

\n\n\n\n
\"GPT-5
\n\n\n\n

为什么看起来没有革命性提升?

\n\n\n\n

渐进式优化:从GPT-3到GPT-4再到GPT-5,OpenAI逐步解决的是模型的局部瓶颈,例如推理能力、偏见控制和多模态处理的改进,而不是彻底改变现有的架构或计算原理。因此,GPT-5更像是对已有模型的不断优化,而不是从零开始的创新。

\n\n\n\n

技术已趋于成熟:GPT系列的基础架构已经非常强大,提升的空间逐渐收窄,更多的是在细节上的调整和提升。例如,之前版本在长对话中可能会断裂,GPT-5解决了这个问题,但从宏观角度看,这只是一个细节的改进,而非革命性的变化。

\n\n\n\n

革命性的突破难度大:像GPT-3那样的巨大飞跃,涉及的是神经网络模型架构和大规模计算资源的突破,这种飞跃的难度是极大的。GPT-5虽然强大,但它并没有在模型架构上做根本性的创新(例如GPT-4已基本摸索出了“Transformer架构”的边界),所以突破显得更为渐进。

\n\n\n\n

多模态和多语言的优化:虽然GPT-5的多模态处理能力增强了,但这一点对于大多数应用来说还是在进一步完善和拓展。对于大多数用户来说,单纯的文本生成和推理能力的提升仍是最为直观的感受,而这一领域的提升与之前版本相比,并不会带来一种“革命性的体验”。

\n\n\n\n

总之,GPT-5是一次强有力的进化,但从“革命性”角度来看,确实算是一个渐进性的提升。

\n\n\n\n

说的很有道理啊 

\n\n\n\n

而且,真的是一个 Emoji 都没有用呢。

\n\n\n\n

另外目前的限制是:

\n\n\n\n

Free – 每 5 小时 10 条 GPT-5 消息,然后是 mini 模型,外加每天 1 条 GPT-5 思考消息

\n\n\n\n

Plus – 每 3 小时 80 条 GPT-5 消息,然后是 mini 模型,手动 GPT-5 思考最多每周 200 条,从 GPT-5 自动切换到思考不计入每周限制,达到限制后仍然有效  

\n\n\n\n

Team/Pro – 无限制访问 GPT-5 模型

\n\n\n\n

另外的另外,目前的 Sora(就是之前火爆出圈的文生图 sora.chatgpt.com)还能每日画图好几张。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/gpt5-no-emoji-no-flattery/

\n

[ 点击前往获取链接 ]


", + "content": "\n

GPT-5,它来了。

\n\n\n\n
\"GPT-5
\n\n\n\n

详细文字在这里:《Introducing GPT-5》,好长不想看

\n\n\n\n

但看到了这里:

\n\n\n\n
\"GPT-5
\n\n\n\n

并且:减少谄媚,少拍马屁

\n\n\n\n
\"GPT-5
\n\n\n\n

在发布 GPT-5 之前,我看到的都是这样的内容:

\n\n\n\n
\"GPT-5
\n\n\n\n

当时内心充满激动,世界又要变啦!

\n\n\n\n

在发布之后,我去问了GPT-5,它是这样总结的:

\n\n\n\n

问:总结一下GPT-5与之前版本的区别

\n\n\n\n

答:总的来说,GPT-5在智能对话、生成内容、跨模态处理、语言支持等方面都超越了前几代,带来了更强的通用性和灵活性。

\n\n\n\n

然后,我又问了一个诛心的问题:

\n\n\n\n
\"GPT-5
\n\n\n\n

为什么看起来没有革命性提升?

\n\n\n\n

渐进式优化:从GPT-3到GPT-4再到GPT-5,OpenAI逐步解决的是模型的局部瓶颈,例如推理能力、偏见控制和多模态处理的改进,而不是彻底改变现有的架构或计算原理。因此,GPT-5更像是对已有模型的不断优化,而不是从零开始的创新。

\n\n\n\n

技术已趋于成熟:GPT系列的基础架构已经非常强大,提升的空间逐渐收窄,更多的是在细节上的调整和提升。例如,之前版本在长对话中可能会断裂,GPT-5解决了这个问题,但从宏观角度看,这只是一个细节的改进,而非革命性的变化。

\n\n\n\n

革命性的突破难度大:像GPT-3那样的巨大飞跃,涉及的是神经网络模型架构和大规模计算资源的突破,这种飞跃的难度是极大的。GPT-5虽然强大,但它并没有在模型架构上做根本性的创新(例如GPT-4已基本摸索出了“Transformer架构”的边界),所以突破显得更为渐进。

\n\n\n\n

多模态和多语言的优化:虽然GPT-5的多模态处理能力增强了,但这一点对于大多数应用来说还是在进一步完善和拓展。对于大多数用户来说,单纯的文本生成和推理能力的提升仍是最为直观的感受,而这一领域的提升与之前版本相比,并不会带来一种“革命性的体验”。

\n\n\n\n

总之,GPT-5是一次强有力的进化,但从“革命性”角度来看,确实算是一个渐进性的提升。

\n\n\n\n

说的很有道理啊 

\n\n\n\n

而且,真的是一个 Emoji 都没有用呢。

\n\n\n\n

另外目前的限制是:

\n\n\n\n

Free – 每 5 小时 10 条 GPT-5 消息,然后是 mini 模型,外加每天 1 条 GPT-5 思考消息

\n\n\n\n

Plus – 每 3 小时 80 条 GPT-5 消息,然后是 mini 模型,手动 GPT-5 思考最多每周 200 条,从 GPT-5 自动切换到思考不计入每周限制,达到限制后仍然有效  

\n\n\n\n

Team/Pro – 无限制访问 GPT-5 模型

\n\n\n\n

另外的另外,目前的 Sora(就是之前火爆出圈的文生图 sora.chatgpt.com)还能每日画图好几张。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/gpt5-no-emoji-no-flattery/

\n

[ 点击前往获取链接 ]


", "category": "AI", "link": "https://www.appinn.com/gpt5-no-emoji-no-flattery/", "creator": "青小蛙", @@ -1812,7 +1790,7 @@ { "title": "运行你自己的 Firefox 同步服务器,替代 Firefox 中国", "description": "今天早上 @huaingabc 同学在 Firefox 中国关闭,如何备份数据一文中说: 昨天亲测,把国内账号改为国际账号就行了;退出登录,(退出前最好备份一下数据,且退出的时候不 ", - "content": "\n
\"运行你自己的
\n\n\n\n

今天早上 @huaingabc 同学在 Firefox 中国关闭,如何备份数据一文中说:

\n\n\n\n
\n

昨天亲测,把国内账号改为国际账号就行了;退出登录,(退出前最好备份一下数据,且退出的时候不要清除数据)然后地址栏输入 about:config → 搜索并修改以下参数identity.fxaccounts.autoconfig.uri → “https://accounts.firefox.com/, 重启就行了。国际账号为新账号,简单设置下就好了。

\n
\n\n\n\n

青小蛙表示很好奇,就搜索了下,没想到发现了新大陆:

\n\n\n\n\n\n\n\n
\"运行你自己的
\n\n\n\n

这是 Mozilla 官方发布的全套 Firefox 同步服务器教程文档(Mozilla Services Documentation)啊。

\n\n\n\n

包括两个部分:

\n\n\n\n\n\n\n\n

Sync-1.5 Server(自托管同步服务器)

\n\n\n\n\n\n\n\n

Firefox Accounts Server(Firefox 账户服务器)

\n\n\n\n\n\n\n\n

也就是说,根据这个教程最终可以实现:

\n\n\n\n

一个完整的自托管 Firefox 数据同步服务,与 Firefox 官方一模一样…除了自己用,你还可以为别人提供服务,只需要在 about:config 里面修改服务器地址就好了。

\n\n\n\n

甚至,你都能通过 Firefox 的源码,直接自定义同步服务器地址,重新编译后,发给自己的用户,默认就使用了你的同步服务器,就像之前 Firefox 中国做的那样…

\n\n\n\n

或者可以这样说:Firefox 官方的同步功能,就是这个东西。

\n\n\n\n

就…正经的开源项目,还挺酷的。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/run-firefox-sync-server/

\n

[ 点击前往获取链接 ]


", + "content": "\n
\"运行你自己的
\n\n\n\n

今天早上 @huaingabc 同学在 Firefox 中国关闭,如何备份数据一文中说:

\n\n\n\n
\n

昨天亲测,把国内账号改为国际账号就行了;退出登录,(退出前最好备份一下数据,且退出的时候不要清除数据)然后地址栏输入 about:config → 搜索并修改以下参数identity.fxaccounts.autoconfig.uri → “https://accounts.firefox.com/, 重启就行了。国际账号为新账号,简单设置下就好了。

\n
\n\n\n\n

青小蛙表示很好奇,就搜索了下,没想到发现了新大陆:

\n\n\n\n\n\n\n\n
\"运行你自己的
\n\n\n\n

这是 Mozilla 官方发布的全套 Firefox 同步服务器教程文档(Mozilla Services Documentation)啊。

\n\n\n\n

包括两个部分:

\n\n\n\n\n\n\n\n

Sync-1.5 Server(自托管同步服务器)

\n\n\n\n\n\n\n\n

Firefox Accounts Server(Firefox 账户服务器)

\n\n\n\n\n\n\n\n

也就是说,根据这个教程最终可以实现:

\n\n\n\n

一个完整的自托管 Firefox 数据同步服务,与 Firefox 官方一模一样…除了自己用,你还可以为别人提供服务,只需要在 about:config 里面修改服务器地址就好了。

\n\n\n\n

甚至,你都能通过 Firefox 的源码,直接自定义同步服务器地址,重新编译后,发给自己的用户,默认就使用了你的同步服务器,就像之前 Firefox 中国做的那样…

\n\n\n\n

或者可以这样说:Firefox 官方的同步功能,就是这个东西。

\n\n\n\n

就…正经的开源项目,还挺酷的。

\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/run-firefox-sync-server/

\n

[ 点击前往获取链接 ]


", "category": "Firefox", "link": "https://www.appinn.com/run-firefox-sync-server/", "creator": "青小蛙", @@ -1856,7 +1834,7 @@ { "title": "Proxmox VE 9.0 正式发布:基于 Debian 13,内核更前沿,快来体验极客级虚拟化环境", "description": "Proxmox VE 9.0 在昨天晚上正式发布(北京时间2025年8月5日晚9点),基于 Debian 13 Trixie 打造,使用很新的 Linux 内核 6.14.8-2 作为稳定默认版本。重 ", - "content": "\n

Proxmox VE 9.0 在昨天晚上正式发布(北京时间2025年8月5日晚9点),基于 Debian 13 Trixie 打造,使用很新的 Linux 内核 6.14.8-2 作为稳定默认版本。重要软件也都紧跟主流,QEMU 升级到 10.0.2、LXC 用上 6.0.4、ZFS 2.3.3,还有 Ceph Squid 19.2.3 等。@Appinn

\n\n\n\n
\"Proxmox
\n\n\n\n

Proxmox VE 是什么?

\n\n\n\n

Proxmox VE 是一个开源的虚拟化平台,它能把一台(或多台)物理服务器虚拟成好多台小电脑,里面可以跑 Windows、Linux、甚至是轻量级的容器。

\n\n\n\n
功能PVE 能干什么?
虚拟机(VM)在一台物理机器上,像在一块硬盘里再装一台完整的电脑(比如 Windows、Ubuntu 等)。
容器(LXC)更轻量的“子系统”,只装需要的应用,启动快、资源占用小(类似于 Docker 但更简单)。
集中管理有一个 网页界面,在浏览器里就能创建、启动、迁移、备份这些虚拟机和容器,完全不需要敲命令行。
多台服务器一起管理(集群)把几台物理服务器连在一起,统一调度资源;即使某台机器挂了,别的机器还能接着跑。
存储和网络内置支持 ZFS、Ceph、NFS、SMB 等多种存储方式,还能用 Open‑vSwitch 做高级网络(VXLAN、SR‑IOV 等)。
免费 + 商业版社区版免费、开源,想要官方技术支持可以购买企业版的订阅。
\n\n\n\n

Proxmox VE 9.0 具体更新了什么

\n\n\n\n
组件名称版本号说明
Debian13 “Trixie”底层操作系统,提供稳定现代基础环境
Linux 内核6.14.8-2提升硬件支持和安全性
QEMU10.0.2虚拟机管理器,支持更多新特性和性能优化
LXC6.0.4Linux 容器组件,功能和兼容性增强
CephSquid 19.2.3分布式存储系统,适合企业级存储需求
ZFS2.3.3开源文件系统,支持快照和动态扩容
\n\n\n\n\n\n\n\n

升级和兼容性

\n\n\n\n

社区关心的问题,Proxmox 都专门 FAQ 了一遍:

\n\n\n\n\n\n\n\n

获取

\n\n\n\n\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/proxmox-ve-9-0-released/

\n\n\n\n

小众软件的青小蛙觉得,如果你还在使用 VMware ESXi,不妨考虑下 Proxmox VE 9.0。

\n

[ 点击前往获取链接 ]


", + "content": "\n

Proxmox VE 9.0 在昨天晚上正式发布(北京时间2025年8月5日晚9点),基于 Debian 13 Trixie 打造,使用很新的 Linux 内核 6.14.8-2 作为稳定默认版本。重要软件也都紧跟主流,QEMU 升级到 10.0.2、LXC 用上 6.0.4、ZFS 2.3.3,还有 Ceph Squid 19.2.3 等。@Appinn

\n\n\n\n
\"Proxmox
\n\n\n\n

Proxmox VE 是什么?

\n\n\n\n

Proxmox VE 是一个开源的虚拟化平台,它能把一台(或多台)物理服务器虚拟成好多台小电脑,里面可以跑 Windows、Linux、甚至是轻量级的容器。

\n\n\n\n
功能PVE 能干什么?
虚拟机(VM)在一台物理机器上,像在一块硬盘里再装一台完整的电脑(比如 Windows、Ubuntu 等)。
容器(LXC)更轻量的“子系统”,只装需要的应用,启动快、资源占用小(类似于 Docker 但更简单)。
集中管理有一个 网页界面,在浏览器里就能创建、启动、迁移、备份这些虚拟机和容器,完全不需要敲命令行。
多台服务器一起管理(集群)把几台物理服务器连在一起,统一调度资源;即使某台机器挂了,别的机器还能接着跑。
存储和网络内置支持 ZFS、Ceph、NFS、SMB 等多种存储方式,还能用 Open‑vSwitch 做高级网络(VXLAN、SR‑IOV 等)。
免费 + 商业版社区版免费、开源,想要官方技术支持可以购买企业版的订阅。
\n\n\n\n

Proxmox VE 9.0 具体更新了什么

\n\n\n\n
组件名称版本号说明
Debian13 “Trixie”底层操作系统,提供稳定现代基础环境
Linux 内核6.14.8-2提升硬件支持和安全性
QEMU10.0.2虚拟机管理器,支持更多新特性和性能优化
LXC6.0.4Linux 容器组件,功能和兼容性增强
CephSquid 19.2.3分布式存储系统,适合企业级存储需求
ZFS2.3.3开源文件系统,支持快照和动态扩容
\n\n\n\n\n\n\n\n

升级和兼容性

\n\n\n\n

社区关心的问题,Proxmox 都专门 FAQ 了一遍:

\n\n\n\n\n\n\n\n

获取

\n\n\n\n\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/proxmox-ve-9-0-released/

\n\n\n\n

小众软件的青小蛙觉得,如果你还在使用 VMware ESXi,不妨考虑下 Proxmox VE 9.0。

\n

[ 点击前往获取链接 ]


", "category": "业界消息", "link": "https://www.appinn.com/proxmox-ve-9-0-released/", "creator": "青小蛙", @@ -1897,28 +1875,6 @@ "hash": "d99d02b2ceb6f7c5f242c18306f90c17", "highlights": [] }, - { - "title": "NestHive – 一个 3.3MB 的物品收纳应用,连沙发都要收纳,强迫症都不敢玩!", - "description": "NestHive 是一款 iOS 上的物品收纳管理应用,通过极其复杂的四级空间管理,来精准定位你的物品。所谓四级空间管理,即场所→房间→家具→位置,虽然精准,但绝对只有强迫症患者才能用。@Appinn ", - "content": "\n

NestHive 是一款 iOS 上的物品收纳管理应用,通过极其复杂的四级空间管理,来精准定位你的物品。所谓四级空间管理,即场所→房间→家具→位置,虽然精准,但绝对只有强迫症患者才能用。@Appinn

\n\n\n\n
\"NestHive
\n\n\n\n

说实话,第一次打开 NestHive,小众软件的青小蛙是有点崩溃的,因为界面太太太复杂了。

\n\n\n\n

在创建了 客厅 > 沙发 > 抽屉 三个层级之后,才明白如何添加物品:

\n\n\n
\n
\"NestHive
\n\n\n

而且,这个界面,也太复杂了,我已经劝退了。

\n\n\n\n

不过,如果你熟悉这个四级空间管理,那么管理物品起来,的确事半功倍。

\n\n\n\n
\"NestHive
\n\n\n\n

你可以非常精准的找到每一件物品,但前提是你一件一件,进行了收纳登记。

\n\n\n\n

这可能是最难的一个步骤,想要把整个房间的物品都管理起来,大概…需要一两周时间吧?

\n\n\n\n
\"NestHive
\n\n\n\n

针对视频和药品,NestHive 还提供了过期提醒功能。

\n\n\n\n

断舍离 && 随机物品整理

\n\n\n\n

另外,还有一个有趣的功能,就是当你录入了很多物品之后,可以使用「随机物品整理」功能,来选择是否保留,断舍离必备啊。

\n\n\n\n
\"NestHive
\n\n\n\n

整理报告

\n\n\n\n

甚至,NestHive 还有一个整理报告 \"😱\"

\n\n\n\n

这已经不是强迫症患者能用的应用了…

\n\n\n\n
\"NestHive
\n\n\n\n

获取

\n\n\n\n\n\n\n\n
\n\n\n\n

原文:https://www.appinn.com/nesthive/

\n

[ 点击前往获取链接 ]


", - "category": "iOS", - "link": "https://www.appinn.com/nesthive/", - "creator": "青小蛙", - "pubDate": "Mon, 04 Aug 2025 09:49:07 +0000", - "enclosure": "", - "enclosureType": "", - "image": "", - "id": "", - "language": "zh", - "folder": "资讯", - "feed": "小众软件", - "read": false, - "favorite": false, - "created": false, - "tags": [], - "hash": "cb60085bc29896d550e12554f59370f9", - "highlights": [] - }, { "title": "China urges U.S. to abandon excessive use of national security concept", "description": "

BEIJING, June 5 (Xinhua) -- China has urged the United States to abandon its generalized and excessive use of the national security concept, and to collaborate with all parties in maintaining a rules-based multilateral trading system, the Ministry of Commerce said on Thursday.

At a regular press conference, He Yongqian, spokesperson for the ministry, made the remarks when asked to comment on the U.S. decision to raise tariffs on imported steel, aluminium and their derivative products from 25 percent to 50 percent.

He said that such U.S. moves not only harm others and itself, but also will severely disrupt the stability of global industrial and supply chains.

The United States should abandon the zero-sum mentality, address respective concerns through equal dialogue, and jointly maintain the stability of global industrial and supply chains, He said.

Source: Xinhua

",