阅读视图

发现新文章,点击刷新页面。

天然气热水器国补下单

Photo by Risa / Unsplash

前些日子家电国补线上线下宣传的如火如荼,但是一直觉得国补这个东西好像我占不到啥便宜,因为我暂时没有任何更换家电、手机的想法。

但是老天爷似乎都要推波助澜让我去凑凑热闹——家里的电热水器忽然坏了。

是的,但是其实也并不意外,这台和这个我们家房子同样年纪的万和热水器服役已经十多年了,其实也就这两年开始慢慢有些小毛病,这个时候即便坏了我也不觉得意外。

其实也叫不上坏,热水器的错误码为E1,是点火器故障,去年还是前年开始就出现过几次,我拆开打磨了一下点火器的头子后其实就好了。不过我妈说干脆让这个老家伙退役算了,修来修去的也麻烦。

线上的热水器品牌五花八门,如海尔、美的、万和、樱花等等。不过价格在一片绿色国补到手价的标签下显的尤其划算。16L带增压、水伺服的一级能耗的机器线上基本上只要1100-1300左右,二级能耗就更低了,基本都在1000以下。

我也去线下的实体店看了一下,因为保护线下市场的缘故,线上线下基本上不会售卖同型号的机器,不过同配置参数线下始终要贵个几百,毕竟像是京东、淘宝这种平台还有平台优惠不是。

而且线下不卖一级能耗的产品,不知道为啥。

刚开始的时候我选的美的、海尔的牌子,后来我妈提醒让我看看万和,这才了解到万和才是国内专业做热水器的,而且我们之前那个台服役十多年的热水器也是万和,后来安装的师傅也认同了这个看法。

我最后选的是万和的F9DMAX ,各种优叠加下来价格如下,性价比相当高,国补真的没毛病。👍

  • 商品总价:¥2199.00
  • 运费:+ ¥0.00
  • 商品优惠:- ¥110.00
  • PLUS专享立减:- ¥8.80
  • 以旧换新:- ¥130.00
  • 国家补贴:- ¥390.04
  • 实付款:¥1560.16

产品主要参数如下。

  • 16L水量
  • 国家一级能效
  • 水伺服
  • 下置风机
  • TSI 210% 增压
  • 8年质保

其中我体验下来,各项参数参考的优先级为,排前的我认为重要性更高:

  1. 质保:热水器强制报废是8年,现在几乎都是8年质保了,不过也有5年的。
  2. 能效:国家一级能效每年能比二级的少个1000块左右,我感觉还是相当重要,就是会产生冷凝水,需要有排水的地方,但是这个水量很小,我没观察过,但是估计和空调差不多把。
  3. 水量:我们家之前那台是13L的,有两个地方同时用水时,水量会变的非常小,十分影响体现。
  4. 水伺服:这个其实就是控制水温的,保证多地同时用水时的水温恒定,之前那台没有这个功能,经常厨房用水后洗澡水温度会忽然变凉,很不爽。
  5. 下置风机:相比于上置,下置风机因为做了密封,噪音真的小了非常多,以前那台上置的一开,我在卧室都能听到动静,现在站在旁边都不容易发觉,还得用眼睛看热水器面板。
  6. 增压:之前想着带这个增压会不会让多个地方用水的时候水量变大,其实不会,这个因为热水管、烧水量只有那么大,同时经过的热水是恒定的,不会有非常明显的变化,复式楼层可能感知会明显很多。

最后,还要注意上门安装的费用,一般情况下安装人员上门安装是不收费用的,但是他们只会免去箱子内所有材料的费用(毕竟那是你已经花钱买了的),如果需要使用额外的材料是需要另外付费的,但是一般品牌放会明码标价。

我这次因为是替换旧机,原有管路什么都是现成的,没有用他们的任何材料,所以师傅上门安装好后就能直接使用,也没做任何推销和歪心思,没出任何费用,体验还是相当不错的。

我们家的情况师傅说如果冷热水管安排到位,其余材料用他们的费用也只会在100多一点,也不算太贵。

另附我这次整理的热水器型号清单。

长毛象新通知推送TGBot

其实蜗牛哥之前开发过一个Chrome扩展,可以在浏览器里显示一个图标和通知数量。但是我电脑上现在Chrome一打开十几个进程,我实在不想再新增扩展了。

所以这两天用Deepseek糊了一个搭配Cloudflare推送到TGBot的Worker脚本,效果如截图。设置好长毛象和TGBot的设置后,程序会每5分钟检测一次有没有新通知,有的话才进行推送操作。

准备KV

先添加一个KV,名称 KV_STORE ,备用。

准备长毛象TOken

获取长毛象Access Token,不放心的话在权限部分可以单独只设置通知获取权限

  1. 登录你的 Mastodon 实例(如 https://mastodon.social)。
  2. 进入 "Preferences(偏好设置) > Development(开发)(或直接访问 https:///settings/applications)。
  3. 点击 "New Application(新建应用):
    1. Application Name(应用名称):填写你的应用名称(如 MyBot)。
    2. Website(网站)(可选):填写你的应用网站(如果没有可留空)。
    3. Scopes(权限):选择你需要的 API 权限(如 read、write、follow 等)。
  4. 点击 "Submit(提交),系统会生成:
    1. Client Key(客户端 ID)
    2. Client Secret(客户端密钥)
    3. Access Token(访问令牌)(可直接使用)

准备Cloudflare Worker

再添加一个Worker,代码如下,并修改代码中的 config 部分的配置为你自己的设置,其中长毛象token

// 配置部分
const config = {
  // Mastodon 配置
  mastodon: {
    instance: 'https://your-instance.social', // 替换为你的 Mastodon 实例地址
    accessToken: 'ZTDJN2ZMZMZI5MTU1MZHH',  // 替换为你的 Mastodon 访问令牌
    lastNotificationIdKey: 'last_notification_id' // KV 存储中保存最后通知ID的键名
  },
  
  // Telegram 配置
  telegram: {
    botToken: 'your-bot-token', // 替换为你的 Telegram Bot Token
    chatId: 'your-tg-chart-id'               // 替换为接收消息的聊天ID
  },
  
  // 检查间隔(分钟)
  checkInterval: 5
};

// 主处理函数
export default {
  async scheduled(event, env, ctx) {
    // 执行检查通知任务
    await checkNotifications(env);
  },
  
  async fetch(request, env) {
    // 手动触发检查
    if (new URL(request.url).pathname === '/check') {
      await checkNotifications(env);
      return new Response('Notification check triggered');
    }
    
    return new Response('Not found', { status: 404 });
  }
};

// 检查未读通知
async function checkNotifications(env) {
  try {
    // 获取上次处理的通知ID
    let lastNotificationId = await env.KV_STORE.get(config.mastodon.lastNotificationIdKey);
    lastNotificationId = lastNotificationId || '0';
    
    // 获取新通知
    const notifications = await fetchMastodonNotifications(lastNotificationId);
    
    if (notifications.length > 0) {
      // 有新通知,发送到 Telegram
      await sendToTelegram(notifications, env);
      
      // 更新最后处理的通知ID
      const latestId = notifications[0].id;
      await env.KV_STORE.put(config.mastodon.lastNotificationIdKey, latestId);
      
      console.log(`Sent ${notifications.length} new notifications to Telegram. Latest ID: ${latestId}`);
    } else {
      console.log('No new notifications.');
    }
  } catch (error) {
    console.error('Error checking notifications:', error);
  }
}

// 从 Mastodon 获取通知
async function fetchMastodonNotifications(sinceId) {
  const url = new URL(`${config.mastodon.instance}/api/v1/notifications`);
  url.searchParams.append('exclude_types[]', 'follow');
  url.searchParams.append('exclude_types[]', 'follow_request');
  url.searchParams.append('since_id', sinceId);
  
  const response = await fetch(url.toString(), {
    headers: {
      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36',
      'Authorization': `Bearer ${config.mastodon.accessToken}`
    }
  });
  
  if (!response.ok) {
    throw new Error(`Mastodon API error: ${response.status} ${response.statusText}`);
  }
  
  return await response.json();
}

// 发送通知到 Telegram
async function sendToTelegram(notifications, env) {
  // 按时间倒序排列通知
  notifications.sort((a, b) => new Date(b.created_at) - new Date(a.created_at));
  
  let message = `📨 你有 ${notifications.length} 条新通知:\n\n`;
  
  notifications.forEach(notification => {
    const sender = notification.account; // 通知发起者
    const senderName = sender.display_name || sender.username;
    const senderHandle = `@${sender.acct}`;
    const senderUrl = sender.url;
    
    // 根据不同通知类型构建不同消息
    switch(notification.type) {
      case 'mention':
        const mentionContent = stripHTML(notification.status.content);
        message += `💬 <b>${senderName}</b> (${senderHandle}) 提到了你:\n${mentionContent}\n\n`;
        break;
        
      case 'reply':
        const replyContent = stripHTML(notification.status.content);
        message += `↩️ <b>${senderName}</b> (${senderHandle}) 回复了你:\n${replyContent}\n\n`;
        break;
        
      case 'reblog':
        const reblogContent = notification.status 
          ? stripHTML(notification.status.content) 
          : "[内容不可用]";
        message += `🔁 <b>${senderName}</b> (${senderHandle}) 转发了你的嘟文:\n${reblogContent}\n\n`;
        break;
        
      case 'favourite':
        const favContent = notification.status 
          ? stripHTML(notification.status.content) 
          : "[内容不可用]";
        message += `⭐ <b>${senderName}</b> (${senderHandle}) 喜欢了你的嘟文:\n${favContent}\n\n`;
        break;
        
      case 'poll':
        message += `📊 <b>${senderName}</b> (${senderHandle}) 的投票已结束\n`;
        break;
        
      case 'follow':
        message += `👤 <b>${senderName}</b> (${senderHandle}) 关注了你\n`;
        break;
        
      case 'follow_request':
        message += `🫂 <b>${senderName}</b> (${senderHandle}) 请求关注你\n`;
        break;
        
      default:
        message += `ℹ️ 你有一条新通知 (${notification.type}) 来自 <b>${senderName}</b>\n`;
    }
  });
  
  // 添加来源链接
  message += `\n查看所有通知: ${config.mastodon.instance}/notifications`;
  
  // 发送到 Telegram
  const url = `https://api.telegram.org/bot${config.telegram.botToken}/sendMessage`;
  
  const response = await fetch(url, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      chat_id: config.telegram.chatId,
      text: message,
      disable_web_page_preview: true,
      parse_mode: 'HTML'
    })
  });
  
  if (!response.ok) {
    throw new Error(`Telegram API error: ${response.status} ${response.statusText}`);
  }
}

// 去除 HTML 标签
function stripHTML(html) {
  return html.replace(/<[^>]*>?/gm, '');
}

配置KV和定时执行

去Cloudflare Worker设置页面绑定KV和设置定时执行。

除了定时执行外,你还可以用 https://wokrerurl.dev/check 手动触发

258、谷雨

null

谷雨时节,春雨润物,万物生长,宜早睡早起,顺应阳气升发。晨起可漫步庭院,吸纳清新之气,活络筋骨,畅通气血。饮食宜甘淡平和,多食芽菜、香椿、荠菜等时令春鲜,少食生冷厚味,以健脾祛湿。
此时肝气渐弱,心气将旺,当调畅情志,戒怒戒躁,保持恬淡安然。衣着需随温增减,尤护腰腹,防湿邪入侵。常饮谷雨新茶,清火明目,助排浊气。运动宜选八段锦、慢步等和缓方式,滋养阳气而不耗散。

宜宾李庄、僰王山一日游

飞雾洞

这些年的清明节几乎都是在小雨中渡过,今年依旧不例外。

好在假日后的第一个工作日天气转晴,川内大部分地区的温度几乎是直线上升,自贡气温也临近了30°,似乎春夏的界限在这几天又开始模糊起来。

起因是平时不怎么会主动想出去玩的母上大人在清明节最后一天提出想出去转转,不过清明节三天,天气都不太好,而且假期中的后两天还漂着毛毛雨。所以和她商量了一下,我们换个班,换到了节后的第一个工作日出去,既能错峰出行,也能有个好天气。

因为只有一天,所以不能走太远,还要有充足的游玩时间,所以车程得压缩到2个小时之内。

之前 内江甜城一日游 去过一次内江,体验还是非常棒的。不过内江我们已经去过了,得换个对我们来说有新鲜感一些的。

目的地

在做攻略的时候想起之前徒步群内有群友策划过去 宜宾僰王山 徒步,宜宾离自贡也就100来公里左右,不到一个小时即可抵达,是十分不错的目的地。

其实宜宾我在很多很多年前来过一次,第一印象是——酒香!

我们当时走的老路去的宜宾,开始进入宜宾地界没多久,忽地就闻到一股淡淡酒香,开窗四处眺望无果,只发现我们正在经过一条长江支流,当时心理想着:真不愧是是五粮液产地、酒都宜宾,这河里都她妈是一股子淡淡酒香味。而后复行一里地后才发现经过一家酒厂时才恍然大悟,所以之后只要一闻到就为就能知道旁边必定有酒厂无疑了。

我们当时是自驾去的蜀南竹海,盛夏的十万亩竹海在微风的吹拂下用竹叶给我奏响了大自然的舒缓乐章我至今难以忘记。但是竹海除了竹子其他能有深刻体验的项目太少了,所以这次被我放弃了,准备还是以群友们之前去过的僰王山为主来做路线规划。

  1. 这次准备先去,因为做攻略的时候发现市区有好几个景点,担心李庄古镇玩起来太单薄所以先去,其次李庄白肉享誉全国,中午饭可以在镇子上解决,而且古镇临江而建,自有一股江南水乡的韵味。
  2. 然后去这次重点目的地 僰王山 ,山里的核心景点 飞雾洞 幽暗诡秘,十分有盗墓笔记的感觉,山中连绵不断的竹林和数个瀑布相信也会有不一样的体验,而且恰逢开春说不定还能挖到竹笋。
  3. 最后晚上再赶去合江门,逛一逛冠英古街,感受一下宜宾人的夜生活。

最后行程规划如下:

  • 8点30出发
  • 10点到李庄古镇,游玩加吃饭下午1点左右出发去僰王山
  • 2点左右到僰王山,开始爬山,来回两个小时,5点左右往回走去合江门
  • 7点左右到合江门,吃晚饭看夜景。
  • 接下来看时间回家。

总结

当时想着李庄离市中心比较远,又只是一个古镇,万一踩坑了就没地儿玩了,所以安排的上午去李庄,晚上去市中心。其实可以白天去晚上也去,听说晚上还有节目表演和白天是不一样的风格。

僰王山只有核心景点飞雾洞最值得一看,其他景点都有点可有可无了。

这种一天来回的旅程真的很不错,强度不会很高,也有非常不错的体验,以后可以常安排。

图记

下了高速不久就能看见长江大桥。

长江大桥

到了李庄停在了月亮田的停车场,在车库里进入了一个古建筑,似乎是一个酒店的大唐,雕梁画柱,气派的很。

李庄建筑

江南水乡味十足的李庄古镇。

水乡

水乡

古镇内

中午吃的李庄白肉,片肉的师傅说每片肉在2mm左右,肥而不腻。

李庄白肉和小煎鸭

吃过饭休息了一会便赶往了僰王山,竹林之内的僰王山特别凉快。

1. 僰王山入口 2. 山内石径

飞雾洞入口

探洞

天坑一景

下山时还在路边偷了春笋一根,哈哈。

第二天炒了腊肉,味道好极了。

春笋

合江门很热闹,三江交汇之处,也是老百姓们晚间活动的地方。

合江门两景

好像国外哪里也有个这个玩意儿,是拉斯维加斯吗?

3D小巨蛋

一大群叔叔阿姨、大爷大妈群魔乱舞,算是感受到「酒都人民」的松弛感了。

酒都人民的夜生活

入夜后的夹镜楼更漂亮了。

夹镜楼

冠英古街内的合江园

Memos同步至Mastodon(长毛象)

Photo by Chethan / Unsplash

我一直把Memos当作微博来用,偶尔也会手动同步到长毛象,但也只是偶尔。原因是即便在用梯子的情况下长毛象打开也太慢了,毕竟大多数实例都在墙外,且长毛象挺吃服务器资源的。

目前又不太想自建实例,虽然现在弄了NAS,理论上可以搭在上面,但是Ghost似乎在6月份要推出联邦宇宙服务了,到时候可以直接迁移到那个上面去,也就一直没下手。

之前看到过蜗牛哥出过一期长毛象同步到Memos的方案,和我的需求是相反的,因为今天周末恰好有空,所以就捣鼓了一下,弄了一版。

因为Memos可以设置WebHook调用,所以我的思路是:

Memos发布 -> 触发WebHook调用 -> 数据转发给Cloudflare Worker -> Worker里用Mastodon API发布嘟文

实现

先去长毛象上申请Access token ,路径为 :

偏好设置 -> 开发 -> 创建新应用 -> 起个名字,勾选 write:statuses、write:media 权限

然后就是Cloudflare Worker的实现了,我用DeepseekR1跑了一版,稍加改动就能初步使用了。

💡
如果你的Memos服务器在国内,那可能需要给Cloudflare worker绑定一个域名,不然会无法访问。
// cloudflare-worker.js
const MASTODON_INSTANCE = ""; // 实例地址
const ACCESS_TOKEN = ""; // 访问token

async function uploadMediaFromUrl(imageUrl, mimeType) {
  try {
    // 从 URL 获取图片数据
    const imageResponse = await fetch(imageUrl);
    if (!imageResponse.ok) throw new Error(`下载图片失败: ${imageResponse.status}`);
    
    // 转换为可上传的格式
    const blob = await imageResponse.blob();
    const formData = new FormData();
    formData.append("file", blob); // 文件名按需处理
    
    // 上传到 Mastodon
    const uploadRes = await fetch(`${MASTODON_INSTANCE}/api/v2/media`, {
      method: "POST",
      headers: { Authorization: `Bearer ${ACCESS_TOKEN}` },
      body: formData
    });
    
    if (!uploadRes.ok) throw new Error(`上传失败: ${await uploadRes.text()}`);
    return uploadRes.json();
  } catch (error) {
    console.error("媒体上传错误:", error);
    throw new Error(`图片处理失败: ${error.message}`);
  }
}

async function handlePost(request) {
  try {
    const { memo } = await request.json();
    const { content, visibility, resourceList = [] } = memo;
    
    

    // 验证内容
    if (!content) return new Response(JSON.stringify({ error: "内容不能为空" }), { status: 400 });

    // 处理最多 4 张图片
    const validResources = resourceList
      .filter(res => res.type?.startsWith("image/"))
      .slice(0, 4);

    // 并行上传所有图片
    const mediaUploads = validResources.map(async res => {
      const media = await uploadMediaFromUrl(res.externalLink, res.type);
      return media.id;
    });

    const mediaIds = await Promise.all(mediaUploads);

    // 构建嘟文参数
    const params = new URLSearchParams({
      status: content,
      visibility: visibility.toLowerCase() || "public" // 默认公开
    });
    mediaIds.forEach(id => params.append("media_ids[]", id));

    // 发布嘟文
    const postRes = await fetch(`${MASTODON_INSTANCE}/api/v1/statuses`, {
      method: "POST",
      headers: {
        Authorization: `Bearer ${ACCESS_TOKEN}`,
        "Content-Type": "application/x-www-form-urlencoded"
      },
      body: params
    });

    if (!postRes.ok) throw new Error(await postRes.text());
    return new Response(JSON.stringify(await postRes.json()), { status: 200 });
    
  } catch (error) {
    console.error("处理错误:", error);
    return new Response(JSON.stringify({ error: error.message }), { status: 500 });
  }
}

// Worker 入口
export default { fetch: handlePost };

CloudFlare Worker代码

给Memos启用Webhook

设置 -> 偏好设置 -> Webhook -> 创建 -> 起个名字,填入Cloudflare Worker的地址

一些不足

这种方式同步速度应该会稍快,但是还是有一些限制,比如

  1. 图片太大超过Worker可运行时间会上传失败。
  2. Mastodon API好像最大只能传4张图片。
  3. 向Memos的TG机器人发的消息不会触发Webhook。
  4. 长毛象好像不支持 Markdown。
  5. 我使用的Memos后端版本为 v0.18.1
  6. 等等,目前只发现上面2个,应该不止。

257、清明

晚上出门散步,路边画坛的小蘑菇

清明时节,阳气渐长,宜早起散步,呼吸新鲜空气,舒展筋骨,调和气血。饮食宜清淡,多食新鲜蔬菜,少食油腻辛辣,以养肝护脾。
心境宜平和,避免情绪波动,保持乐观心态,以顺应春生之气。适时添减衣物,防寒保暖,以防春寒侵袭。多饮温水,促进新陈代谢,排毒养颜。适度运动,如太极、瑜伽,以增强体质,提升免疫力。清明养身,顺应自然,方能健康长寿,福寿安康。

今天放假,和S终于能安安心心休息一天了。

一直睡到十一点起床,发现爸还在家,便叫上S出门中午的菜,S做了一个川味的腰花,我做了一个孜然鸡腿肉,都挺成功了。

上午出门的时候下了一部短剧 《家里家外》,下午两口子便我在沙发上看完了,全四川话台词的小短剧,还挺过瘾的,演员演技也还算在线,因为是短剧,所以笑点、爽点都很足。

256、春分

null

春分时节,昼夜均分,阴阳平衡,养生之道亦需调和。
此时,万物复苏,阳气渐升,宜早睡早起,顺应自然。
饮食上,宜清淡为主,多食新鲜蔬菜,如菠菜、韭菜等,以养肝明目。

254、雨水

null

脾土润泽运水谷,慎避地湿浸腠理。
此时天地阳气初萌,地气升腾化雨,养生当以护脾胃为要。饮食宜增甘减酸,多用山药、茯苓、莲子等甘淡之品健脾渗湿,晨起可饮陈皮姜米茶温运中焦。春寒挟湿尤伤下焦,宜着护腰腹,睡前以掌心熨关元穴九转。情志贵在疏达,可临窗观雨听檐滴,使肝气如草木逢润,舒展而不亢逆。

无题

生活苟且,为碌碌无为而羞愧。

当然,并不指要挣到多少钱,而是自己问心有愧,活的不够自我和尽力,对不起自己。

253、立春

阳气上升,万物更生,新岁开启

新的一年来了,祝各位博友,巳巳如意,福启新岁。

My App Defaults 2024

Photo by Iyus sugiharto / Unsplash

看到仓颉小胡都在发,也做个整理。

记录一下过去一年的常用应用,明年此时再更新,观察是否有所改变。

📨 Mail Client: 用的企业微信自带的邮件功能。。
📮 Mail Server: 如上。
📝 Notes: 基本上抛弃其他笔记软件了,主要使用Obsidian,同时还能自动发布数字花园 「好奇心花园」。
✅ To-Do: 企业微信代办功能、Obsidian的TODO List。
📷 iPhone Android Photo Shooting: 使用 小米12s Ultra 系统自带相机。
🟦 Photo Management: OneDrive 和 Google Photos。
📆 Calendar: 企业微信日历,同时同步到手机端。
📁 Cloud File Storage: 使用Alist,搭配OneDrive、百度网盘、123盘等,Windows上的文件同步等还是主力使用OneDrive,同时使用Syncthing对手机和电脑的部分文件进行同步。
📖 RSS: Miniflux 和 follow
🙍🏻‍♂️ Contacts: 使用系统自带联系人应用。
🌐 Browser: PC 端 Chrome,手机端 Via。
💬 Chat: 微信、QQ、Telegram 。
🔖 Bookmarks: 感兴趣的网站会存在 Memos 上,并打上对应的标签。
📑 Read It Later: 感觉这个需求对我来说是垃圾篓,所以没用。
📜 Word Processing: Obsidian为主,同时搭配 Notepad4
📈 Spreadsheets: WPS的一个精简版本。
📊 Presentations: 没有这方面的需求。
🛒 Shopping Lists: 一般直接加到购物车里。
🍴 Meal Planning: 刷抖音、B站、小红书等跟着做,或者有想吃的菜去微信小程序「下厨房」找菜谱。
💰 Budgeting and Personal Finance: 一木记账,应为有自动记录功能,目前几乎所有出账都做了登记。
📰 News:  follow,TG频道。
🎵 Music: lxmusic
🎤 Podcasts: 我的听书。
🔐 Password Management: vaultwarden

以下是小胡文章中提到的 extra categories 部分:

✈️ VPN: 路由器上MihomoProxy,移动端使用 FlClash
😘 Blog Platform: Ghost+Astro+GithubAction的构建流。
⌨️ Text input: PC 端使用小狼毫搭配雾凇方案,手机端为小企鹅搭配雾凇方案,输入法方案为小鹤双拼。
📖 Translation app: ​Pot以及一些AI工具。
📚 Reading app: 微信读书。
🔧 Screenshot app: Pinx。
🌁 Image Hosting: 感谢又拍云联盟。
☁️ VPS Hosting: 腾讯轻量云。

Ending

252、大寒

null

神志深藏于内,避免急躁发怒

节气的照片终于论完一次了,这一个轮次的引用信息为百度百科节气中关于「养身」的谶语。

用峨眉山的第一缕阳光给25年开个好头【完】

null

夜爬峨眉山强度挺大的,不是那么好拿捏,不要被抖音、小红书给你洗脑了!
去之前一定要能理解爬20多公里的楼梯是个什么概念!
我应该不会再爬第二次了....!

感冒

上次写完行程规划之后,不知道是不是早上晨跑衣服穿少的缘故,我忽然得了重感冒。

那几天开始全身酸痛,同时伴有咽痛、咳嗽,而且连续两个晚上发烧 + 白天退烧,为了不影响 31 号的出发,所以请了两天假在家中休息,调养。

好在出发前的早上,感冒的大部分症状都痊愈了,但是还是能明显感觉到体力依旧还是没有恢复。但是行程、人员都已经确定好,可不能放大家的鸽子。

所以不管如何都要先把大家送过去,如果身体实在跟不上就放弃徒步上山,坐观光车上金顶去等大家。

人员

在前面的行程规划一文中提到了当时确定要去的只有我、霜、小罗三人,我到时候打算开我台上不了台面的破 7 坐面包车过去,因此最好还是再找至少 4 人同行,以最大化平摊大家的费用,同时因为人多了后,玩起来也更有意思。

所以,出发前的几天我们就陆续在自己熟悉的圈子内寻找合适同行的队友,但是我这边进展不太顺利,频频碰壁,其中一个户外微信群居然还直接把我踢出群,不过我也庆幸被踢出去了,玩户外的这么小心眼即便在玩在一起也不会有多大意思。

好在小罗那边进展顺利,一直都有拉人进来,虽然其中有些朋友因为行程问题、装备问题赶不上,但是都非常好沟通,部分表示虽然这次不能参与,但是依旧期待下次同行。

最后,在出行前一天把终于把人员都确定好了,分别为:我、霜、小罗、太阳(兵哥哥)、vivi 姐、高兴哥、成歌。

1.太阳 2. 小罗 3. 霜 4.我 5. 成歌
1. 高兴哥 2. vivi姐

集合

31 号集合日当天,晴空万里艳阳高照,因为有成员担心赶不上日出,所以们把集合的时间提早了一个小时,也就是中午十二点。

我们是第二个到集合地点的,最先到集合地点的是小罗,她依旧穿着上次的淡绿色冲锋衣,装备齐全,精神头看起来不错。她男朋友这次有事,没有和她一起同行,小伙子倒还挺胆大的,也不怕女朋友被其他单身汉给挖走了,哈哈哈。

之后是成歌,是一位 50 多岁的大哥,湖北人,性格和蔼沉稳,非常好相处,脸上时刻带着和煦、云淡风轻的微信。他因为工作缘故经常在各地出差,又喜欢户外运动,所以经常在各地出差的时候就会参与当地的户外活动。别看大哥年纪上去了,可是个十足的老鸟,爬过的山都数不清了,还去冈仁波齐转过山。

然后是 vivi 姐和高兴就好哥,他们是两口子,年纪应该 40 左右把,装备齐全,透着一股子专业劲。高兴哥是退伍军人,平时喜欢摩旅,微信头像就是他摩旅的照片,非常帅。他们其实也去过非常多的地方旅行,但是这是他们第一次进行户外徒步。

最后就是太阳了,也是一个兵哥哥,性格腼腆,后续登山的时候也不爱参与拍照,而且他过来的时候把我们给惊呆了,原因是他居然没有登山包,拿的就是一个白色的大单肩挎包,也没有登山杖,雪爪等等,补给也就带了一盒饼干和一些能量饮料,他说没什么问题,他们当兵时再难的都体验过,我们想着实在不行山上也有的买,就到时候再说
了。

登山

自贡出发到峨眉山只有 150 多公里,全程都是高速,一个多小时就能到,一路上阳光万里,倒也不觉得累,不多时就到了报国寺,还没进停车场就一大堆大爷大妈上来给我引导停车,一个劲的给我往另外一个山坡上引,估摸是当地的村民拉收入呢,我最后还是停在了报国寺的官方停车位上,贵了 5 元一天,停车场管理员还给我们送了一个红色的祈福带。

然后就是下车收整行李,因为没有住宿,其实大家带的东西都不多,唯一多的是这次在山上吃火锅需要用到的东西,一套一次性铝锅盒燃料,然后两大包食材,霜怕山上海拔高煮不熟,把牛羊肉、丸子都提前煮好了,上山后烫一烫便能开吃,我包里放了面饼,丸子、肉给经验、体力更好的成歌大哥,一次性铝锅给了高兴哥,我老婆则背上了香菜、蒜沫等配料。

然后我们便迎着 3 点的斜阳出发了。

传过停车场便来到一处广场,右侧是报国寺,我们在入口处拍了一个出发视频。

之后要步行 30 多分钟后到达雷音寺才算是正式开始爬山之行。

不过不要高兴太早,目前我们连检票处都还没到呢,接下来的十几个小时将会是无尽的楼梯与我们相伴,期间还会经过猴区、高山区。

现在有多兴奋,之后就会有多狼狈。

遇到的第一个红牛墙。

不知道是不是感冒刚好,还是因为冲锋衣没到,我穿的羽绒服散热不好的原因,体力消耗的非常快,才走了一个多小时就感觉自己被掏空了,只感觉浑身都是汗水,脚也重的抬不起来。

接近 5 点时到达圣水阁

山民搭建的原始蜂箱

到达清音阁,这边是一个分叉路口,分上行和右行两条路,上行是去往九十九道拐方向,另一侧则是去往报国寺方向。

经过猴区,峨眉山的猴子和地痞流氓差不多,会强抢你身上任何有颜色的饮料,塑料袋,零食,经过这里时最好拿衣服罩住你的包。

在这里把直接放在高兴哥背后的一次性铝锅接了过来,用的外套罩住,不然肯定要遭殃,不过因此我也没有余力带着我老婆了,中途被猴子隔开,等了她好久,着实是无奈之举,如果不护着锅,晚上可就没得吃了。

穿的老婆的羽绒背心,狼狈不堪

到达洪春坪,天色已经完全暗下来了,开始需要头灯照明,我也彻底红温了。

开始攀爬让人闻风丧胆的九十九道拐,垂直落差 300 米,迂回 2500 米,约有 1840 余石阶。

路上遇到了一只网红猫,入夜降温,估计它冷的不行,看我坐在椅子上,直接就跳到我身上来取暖。

晚上九点半,开始进入雪线。

到达财神庙门口,我的羽绒服内里已经完全打湿,我索性将衣服反穿,终于没那么闷热了。

霜的表现则完全不像是第一次爬山,一路上健步如飞,如履平地。

路上的其他登山者看到都不由纷纷侧目,不由发出大佬牛逼的惊叹,基本上都是她走到前面后等我爬上去,休息一会后再继续出发,期间为了帮我减重还和我互换了背包,我可是彻底成为了拖后腿的人了。

财神庙门口的阶梯

到财神庙这里我才发现我们的队伍已经分成了三个梯队,小罗、成歌一个梯队,已经远远跑在了前面,我、霜、太阳,我们三个则是第二梯队,后面则是 vivi 姐、高兴哥。

小罗太牛了,上次笔架山之行他们也是第一梯队,紧紧跟着向导,这次又没落下 ,和老驴成歌同步,这时我就不由感叹,年轻真好。

本来我们是打算在财神庙吃火锅的,但是因为我们第二梯队、第三梯队落后第一梯队太远,他们等了我们半个小时我们都还没到,所以他们去了下一个地方等我们。

我们在财神庙休息了半个小时,在出发后终于碰到了 vivi 姐他们,他们为了赶我们,都没在财神庙休息。

我们本来盘算着的是聚在一起后大家吃着火锅跨年,小罗、成歌他们在上面的遇仙寺等我们,我们估摸着还要个半个小时才能到。

但是此时已是夜晚 11 点 58,已经临近跨年,我们和 vivi 姐、高兴哥、太阳和路上爬山的小伙伴们都相继在拐角处停下,大家开始倒计时,等待着阳历新年的第一秒到来。

终于到达遇险寺,小罗、成歌已经等了我们半个多小时,表示这个地方太冷了,可算把我们盼来了。没有废话,直接去寺庙拿了热水,架锅,准备吃火锅。

当火锅底料放入锅内,滚烫的热水浇灌在底料上时,火锅的香味开始慢慢弥漫,寺庙门口的小广场上开始随着山风飘荡起了火锅的香味,接下来是放入牛肉、羊肉、牛肉丸、鱼豆腐、金针菇,把矿物油小炉子放在锅下,点燃后稍热便能吃了。

其他路过的小伙伴都不可思议的看着我们的锅,不少人还跑过来拍照,这一刻我们都感觉背着这么多东西爬山的辛苦都值了,哈哈哈。

最后吃完用火锅汤煮好的泡面后我们便接着出发了,目前已经爬了十多个小时了,还有七八个小时的路程在等着我们。

雪已经挺厚的了。

山上的光污染很弱,能看见不少星星

又一个难关:钻天坡

夜眺峨眉市

山上积雪覆盖的台阶,走多了都自然而然的变成了这种规律的小三角坑。

到达洗象池!这里开始精神、肉体能量已经双双见地,霜也有点顶不住了,说走路都是飘的。不少爬山客选择在洗象池的大厅里眯一会。

接着爬!碰到一个穿短裤的大佬,前面看他从山下往山上跑着登山,这会儿居然已经从金顶下来了了....从金顶....下来了,你敢信??

路过一个休息点,买了一个 10 元的苹果,12 元的八宝粥,18 元的冷量饮料。

这个休息站有火盆,本来想着顺便烘烤一下衣服,哪知道把羽绒服屁股后面的下摆烧坏了...。

眼神已经迷离、恍惚,坐下就想坐化...。

还有多久是每一个休息点老板回答的最多的问题,但是不用问都知道还有很久很久!

到!雷!洞!坪!拉!!!!

我们实在走不动了,选择坐缆车上金顶,雷洞坪到缆车那里工作人员说很近,一会儿就到,但是我们怎么就感觉始终走不到呢?

等索道的人们

在索道上能看到即将日出

大家互相祝贺新年快乐。

烧香祈福

金顶遥望雪山

看日出

专门买了个小旗子拍照

才发现我衣服还是反穿着呢。

勇闯天涯一下

最后再来点情绪照片

251、小寒

null

跨年时峨眉金顶日出和第一缕阳光
### columns1 Lorem markdownum insigne. Olympo signis Delphis! Retexi Nereius nova develat stringit, frustra Saturnius uteroque inter! Oculis non ritibus Telethusa protulit, sed sed aere valvis inhaesuro Pallas animam: qui quid, ignes. Miseratus fonte Ditis conubia. --shortcode--
### 副标题 Markdown内容。

用峨眉山的第一缕阳光给25年开个好头【一】

峨眉山官方图片

自上次笔架山之旅后,对山的渴望就像是心底深处的地下泉水被打通了一般狂涌而出。

前几天林老师他们又在群里谋划着去峨眉山夜爬 ,不过不巧的是他们的时间和赶不上,但是又被他们把瘾给钓了起来。

所以想着:「实在不行就我们自己去吧?」

而且又恰逢新年的这个节点,干脆去感受一下新年的第一缕阳光,并且虔诚的去拜拜菩萨,希望能赶走去年的坏运气,新的一年顺顺利利。

所以,有了以下的规划。

目前人员为我,老婆,小罗,目前还在招募队员中。

夜爬峨眉行程规划

两步路助手路线图:2024-02-07 爬峨眉山(报国寺~峨眉山金顶)-GPS导航轨迹下载|行程线路图-步行轨迹-两步路

24 年 12 月 31 日 Day1

  • 下午 1 点左右出发,3 点左右到报国寺
  • 4 点左右开始上山,预计 15 个小时左右,总计 27 公里,3068 米爬升
    • 日出时间为早上 7 点 59,尽量争取在 8 点前到达。

25 年 1 月 1 日 Day2

  • 早上 7-8 点到金顶,烧香拜佛拍照 1 小时。
  • 9 点后坐索道去雷洞坪,缆车大概十来分钟到,然后再走一个小时左右的楼梯到雷洞坪坐车下山,大概 2 小时。
  • 预计 12 点左右到报国寺,大家吃中午饭。
  • 下午 3 小时自由时间,滑雪、温泉
    • 要滑雪的在雷洞坪滑,滑完在时间内到报国寺集合
    • 温泉我选的红珠山森林温泉,价格在下面有提到
  • 结束后 4 点左右出发去乐山找吃的
  • 回家

注意事项

  • 注意高反,要在两三千海拔高强度徒步,死可能死不了,但会无力继续攀爬。
  • 心脏病高血压等疾病别爬,坐车,要听劝!
  • !当天拉肚子、心悸、胸闷、低血糖、头疼...等身体不适的,请直接坐车,一点小问题在山上都会被放大!
  • 要有一定的体力基础,力量、爆发力等身体素质在这没多大用,全靠心肺和肌耐力。马拉松、越野跑、铁三等项目的选手大多没问题,请随意
  • 全程 27 公里左右,爬升约 3390m,下降约 830m,强度大概相当于平地快走 60 公里,请自行斟酌。

准备清单

装备、实物等

  • 速干 T 恤 (千万别穿纯棉,出汗后会很冷)
  • 冲锋衣 (防雨,厚点,最好是可拆卸内胆)
  • 冲锋裤 (防雨)(瑜伽裤鲨鱼裤会冷死)
  • 便携雨衣,建议买好点材料的,不容易坏。
  • 鞋 (轻便、防滑、防水)厚长袜 (不磨脚,两双换)
  • 登山杖:看个人,省力,防膝盖不好的带护膝,如果下雪带冰爪
  • 背包 (中等大小,双肩,专业的最好)
  • 塑料鞋套
  • 雪爪,必须带哈,不要那种建议的,买链式的
  • 能量胶、盐丸、士力架、香蕉、橘子等高热量食物
  • 保温杯(不结冰)、软水袋 (轻,很多地方可补水)
  • 身份证、手机
  • 电筒 (或头灯),这个最好都备个头灯,夜晚山上黑。
  • 充电宝 (路上拍摄多的话)
  • 如果要泡温泉的话要带泳衣。

门票

  • 峨眉山门票 108¥
  • 金顶索道单程票,20¥
  • 交通票,山脚至雷洞坪的往返观光车票 45¥
  • 温泉票,我买的峨眉山红珠山森林温泉,在报国寺附近,单人 136.3,双人 267,三人票 398.8,想去温泉的可以互相拼一下票,更划算。
  • 滑雪场在雷洞坪,上午场 116.5 一小时,232 两小时,含雪具。

户外保险

  • 自行上淘宝、jd 购买户外保险,保额 20w,大概 5 元一天。

24、冬至

null

一候蚯蚓结;二候麋角解;三候水泉动

四川自贡冬至的习俗为食服滋补药食。

冬季自古以来就是滋补季节,更有俗语「冬季进补,来年打虎」之说法,寒冷冬季食用大补药膳却不必担心过补上火的问题。

通过搭配不同滋补功效的药材,辅以猪脚、鸡鸭、猪肚等食材小火慢慢炖煮,晚餐十分,全家人齐聚餐桌前,一人一个小碗乘上热气腾腾的汤汁,真是好不惬意。

DIY明信片互换计划

null

前些天收到了 品味苏州 小伙伴发来的明信片,非常欣喜。

在现在网络发达、信息快餐化的时代,能有一封经过漫长里程、时间送到你手上的信件,会更能体会到时间的味道。

因为我刚好有一台彩色打印机,每次出去玩了以后会习惯性把出行的照片精选一些打印出来放到相册里。这次在打印时我就在想:「既然我有打印机,那我能不能每次出去玩了以后自己做一些明信片寄给这些好友呢?」

打印的相片

所以昨天试着找了九张此次出行的照片,并调色打印,设计了一版,附上了临时想到的标语「现在网络太快,所以跨越千山而来的信件更值得我们等待和珍惜...」。

感觉效果好像还不错?

明信片背面

从左至右,从上到下,分别为1至9

所以,我也准备开启一个明信片互换计划。

各位小伙伴可以可以直接留言你的收件信息,并说明你要的图片序号,我会在看到你的留言后给你寄出。

我的博客已经开启审核模式,你们发出的信息不会直接公开展示,不用担心自己的信息泄露,我会在删掉你们的收件信息后通过留言审核,我会认真根据我对你的了解和想法填写后面给你的留言,祝好。

我需要第6张照片。
收件信息:
- 姓名:1900
- 地址:四川自贡xxxxxxxx
- 邮编:643000

另外;

家里没有打印机,也想自己做这种明信片的朋友,可以试着在淘宝、PDD找找代打服务,价格非常便宜,有众多模板可以选择,只需要简单把照片发给商家即可。

不知道能否号召大家一起参与这个活动,把自己的快乐,所看到的风景,想说的话传达给远在千里之外的另一个人。

谢谢。

川西笔架山,冬季雪山登山实操

null

前言

因为经常有看到阿均哥在周末时间出去爬山,很是羡慕。

我其实也是非常喜欢户外运动的人,2014 年和朋友去过一次牛背山,2015 年去过一次阿合哈洛,其实这种集体户外出行有不少好处:

  • 一是每次出行都是十来号人,一车形形色色的人在一起,在旅途中互相帮助、认识、了解、解放自我,总是能擦出不一样的火花,也能将平时积累的压力在旅途过程中完全释放出去。
  • 二是因为人多,旅途中产生的各种费用都大大降低了。

所以也想着自己能不能也经常这样出去玩一玩。

2014年牛背山徒步

2015年啊合哈洛徒步

驴友群

所以向他询问了都是通过什么渠道找的出行队伍,后被告知是加入了当地的一些户外微信群,跟着群里的其他人一起出行的。

在那之后偶然在骑行群里看到其他骑友说周末要跟着户外群里的人去爬山,所以顺嘴说了一下,让对方拉我进群,然后一下就像是打开了潘多拉墨盒,东拉西拉的进了三四个户外群里,这才知道原来我们这个小地方也有这么多活跃分子,几乎每周都有组团出去玩的驴友。

这些驴友群的组员出行规则几乎都是统一的

  • 出车的司机不承担邮费、过路费
  • 提前买好户外保险,一般在 20w 保额的在 5 元一天左右
  • 其他公共费用大家 AA。
  • 各自承担自己的风险。

因为行程有长有短,蹲了一两天后才加入了标题中提到的「笔架山冬季登山」活动。

笔架山冬季登山

景点介绍

笔架山位于四川理县,木卡羌寨前行 10 来公里左右,总徒步距离来回 14.47 公里,预计花费时间 5-6 小时左右,总爬升 1343 米,最高海拔 3766 米。上山后积雪覆盖,几乎没有路,可以说是一条完全的野生线路,有一名当地向导带路。

笔架山徒步路线图

人员

本次出行原本是 10 人,后有两人临时有事放弃,最终 8 人出行,两对情侣,另外 2 男、2 女。平均年龄没超过 35 岁。

行程安排

  • 第一天:星期六中午一点左右出发,司机来接的我们,开车 4 个小时左右到达理县,下高速后走 8 公里盘山公路,到达第一晚露营地「坞瓦布露营地」,晚上就着日落吃烤鸡烤兔 + 铁板烧烤,然后围着篝火唱歌喝酒。
  • 第二天:早上 8 点起床,客栈安排了当地的手工面 + 煎鸡蛋,吃完后 9 点左右出发爬山,整个行程走完下午 6 点左右回到露营地,吃完牦牛火锅后返程回家,最后 11 点 30 到家。

费用

  • 油费 + 过路费 380
  • 住宿 + 餐饮 492 两人
  • 合计 380+492=872

装备

冬季登山危险系数不比平日 ,所以装备一定要带齐全。我这次爬山除了没带登山杖,其他装备基本上都准备没有问题。

  • 贴身穿速干衣物:上衣可以是跑步的速干衣,下面穿速干骑行裤或者瑜伽裤,因为在登山过程中会大量出汗,普通棉质保暖衣可能无法快速排汗,会导致失温。
  • 保暖内衣两套:一套穿在速干衣物上面,另外一套备用。
  • 冲锋衣三件套:没有的话穿耐磨的羽绒服之类的也行。但是一定要是防水面料,避免粘上积雪,溶化后把里衣打湿。
  • 毛线帽:主要是要护住耳朵,在穿林时最好把冲锋衣帽子带上,避免落下的积雪掉进衣领。
  • 手套:这个一定要准备一款好一点的防水手套,进雪水后的冰凉感你一定不会想体验的。
  • 袜子:厚一点的长筒羊毛袜,多备几双,方便意外替换。
  • 雪套:这个一定要备,山上积雪厚的话没有雪套你的鞋几分钟就湿透了,冰冷的脚会加速失温。
  • 冰爪:雪地必备,增加摩擦力,避免打滑,这次我是在半山出现落叶堆积腐烂打滑后开始装备上,瞬间就不打滑了,下山时也能避免脚滑跌倒,非常好用。
  • 登山鞋:高帮登山鞋最好,可以保护脚踝,更保暖,也不容易进雪水。
  • 墨镜:雪地里反光容易雪盲,必备,其实骑行那种防风镜要更好一些,不容易掉,而且保护的更周全。
  • 登山杖:最好两根,质量一定要好,折叠优先,实在没有也可以在山上砍截树枝替代,我这次没带,用的树枝,也没啥问题,下山的时候别用,容易打滑戳伤自己。
  • 防晒:山上紫外线强,做好皮肤保护。
  • 登山包:最好是有背负、透气系统的背包,耐磨系数要高。
  • 热水壶、水袋:在雪地里喝一口热水是真的舒服。
  • 零食:在登山途中补充热量,体力。
  • 保鲜袋、塑料袋:可以多带几个保鲜袋,一是装垃圾,二是万一鞋子湿了也能套脚,作用很多,我的每次出门旅行都会带上七八个这玩意儿。

旅行后记

这次的行程其实终点的风景、餐食、住宿都算不上很好。

但是雪林穿越的体验是非常棒的,总共 1300 多米的爬升,而且后半段全是雪路,因为积雪覆盖,基本上已经看不到原来的路线了,我们一路在雪林里穿梭,都是现场开辟的路线,很多地方都要手脚共用才能爬上去,非常有挑战和刺激感。

而且这次出行认识了不少谈的来的本地朋友,如我们车的司机林老师、本地大学里的一对情侣小罗和小刘,出发和返程在车上的时间大家唠嗑渡过,一点也不觉得无聊和犯困。

不过这次行程难度对于我老婆来说挺大的。

因为之前她是不准备爬山的,而且她也没有户外经验,算是个小白,不过出行前我还是把她的雪套、雪爪一起带上了,怕万一需要上山。哪知道还真用上了,出发后当时另外一个也说在营地休息的人放鸽子没来了,现在只有她一个人在营地,挺没意思,索性就跟着我们一起上山了。

不过毕竟是小白,而且以前也没搞过户外,所以装备准备的不是很充分,没有冲锋衣裤,裤子这次就穿的普通牛仔裤,爬山途中遇到那些容易滑倒的地方都害怕的要命,都是屁股划着雪地走的,后半段的时候裤子有些地方就已经湿透了。

所以最后登顶的那一刻忽然就绷不住了,哭的稀里哗啦,她说就我们两个人在后面吊车尾,前面的人都走的很快,看不到了人,害怕的很,而且身上又冷,经常滑倒会觉得万一我们一不小心就滑到山下去,没准就死在山上。

在我看来其实整条线路都是在树林里,基本上没有悬崖峭壁的情况,即便是滑倒了也能很快抓住旁边的树枝,而且坡度都不是很大,风险是有,但是在我看来并不危险。

不过她在下山后回味起来又觉得特别有成就感,感觉好像瘾一下就起来了,还问我下次准备去哪里,哈哈。

图记

途中和小伙伴们

营地和住宿

日出

营地中

烧烤小啤酒+篝火晚会

上山中

集体照

「工人们」

山腰+自拍

雪路

望雪
屁股蹲
登顶,绷不住了,hhh

缓缓后美美自拍

集体照
下山
山脚
已经筋疲力尽,头顶的雪和树枝暗暗体现了狼狈
❌