refactor: PowerShell编码已通过Profile永久配置,移除AGENTS.md中的手动编码修复要求

main
haoliang 1 week ago
parent a0cef659c5
commit 271a7d2c40

@ -32,16 +32,10 @@
### 3. 编码规范
- **PowerShell中文编码修复每次会话必须执行**PowerShell 5.1默认OutputEncoding为GB2312中文路径/文件名输出会乱码。在执行任何涉及中文路径的PowerShell命令前必须先设置编码
```powershell
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
```
- **PowerShell编码**已通过Profile永久配置UTF-8`C:\Users\jiang\Documents\PowerShell\Microsoft.PowerShell_profile.ps1`),无需每次手动设置
- **文件写入编码规范**
- 禁止使用PowerShell `Out-File -Encoding utf8` 写入文件会产生UTF-8 with BOM + CRLF
- 使用Node.js `fs.writeFileSync(path, content, 'utf8')` 写入文件无BOM、LF换行
- 或使用Write/Edit工具直接写入无BOM、LF换行
- 禁止使用PowerShell `Out-File -Encoding utf8` 写入文件PS5.1会产生UTF-8 with BOM + CRLF
- 使用Write/Edit工具直接写入无BOM、LF换行
- 如必须用PowerShell写入需用 `[System.IO.File]::WriteAllText($path, $content, [System.Text.UTF8Encoding]::new($false))` 避免BOM
- 已有BOM文件修复`node -e "const fs=require('fs');let b=fs.readFileSync('文件路径');if(b[0]===0xEF&&b[1]===0xBB&&b[2]===0xBF)b=b.slice(3);let t=b.toString('utf8').replace(/\r\n/g,'\n');fs.writeFileSync('文件路径',t,'utf8')"`

Loading…
Cancel
Save