#!/bin/sh # i18n 消息特殊字符门禁(机制优先):暂存区含 src/i18n/ 改动时,跑 vue-i18n 消息编译预检。 # 背景:字面 @ / | / 裸 {} 未转义只在 prod runtime 抛 "Invalid linked format",dev 宽松、 # vue-tsc 捕获不到,已两次导致生产回归(2026-06-15 白屏 / 2026-10-10 输入框消失)。 # 修法:字面量转义为 {'@'} 等;详见 scripts/check-i18n.cjs git diff --cached --name-only | grep -q '^src/i18n/' || exit 0 command -v node >/dev/null 2>&1 || exit 0 node scripts/check-i18n.cjs || { echo "✗ [i18n] 消息含未转义特殊字符(prod 运行时会报 Invalid linked format)" echo " 字面 @ 改写为 {'@'}(同理 | 与裸 {});本机可先跑 node scripts/check-i18n.cjs" exit 1 } exit 0