845 字
4 分鐘
解決Codex編碼導致中文字被影響
2026-04-02

個人覺得Codex被低估很多,產出的內容和Claude比較是55開,可能在OpenAI買服務普遍認為ChatGPT比較精髓,確實但…對…好吧… Codex在社群討論還是處於很陌生的狀態,同樣也是開箱即用還附有CLI和App、Extension可選,推薦還沒用過的可以去體驗GPT-5.3-Codex。

相信你google到這篇是因為CC Token用完想找Codex接手,已經處於斬殺線結果還翻車。

問題來源#

Codex執行時會遇到如下範例中文亂碼的情境,請LLM復原也只認commit記錄,沒備份 = 直接炸開重寫。

const textMap = {
app: '搴旂敤',
topmost: '缁欓《',
refreshList: 'refreshList: '鏇存柊鍒楄〃',
loadingList: '姝e湪鍔犺浇搴旂敤鍒楄〃...',
refreshing: '鏇存柊涓?..',
emptyTopmost: '鏆傛棤宸茬粡缃《搴旂敤锛屽幓娣诲姞鍚?',
emptyAll: '鏆傛棤鍙敤搴旂敤锛屽幓娣诲姞鍚?',
} as const

主因是終端機造成,如果用Extension或CLI會更清楚,Codex執行雖然是在VSCode內,但並不是用VSCode在跑,它還是跟你借用終端機去執行需要的結果,所以我們要做的事情是把終端機編碼調整成utf-8。在開始設定之前先確認電腦目前安裝的PowerShell是7.0+版本。

TIP

新電腦安裝完預設應該都會是藍色icon的5.0版本,7.0版本是要另外安裝的

1. 安裝PowerShell 7.0#

PowerShell 7.0 install guide link: https://learn.microsoft.com/zh-tw/powershell/scripting/install/install-powershell-on-windows?view=powershell-7.6

安裝完打開PowerShell 7(不要開到5.0)輸入以下指令確認版本狀態:

$PSVersionTable

ttt

PowerShell 7除了是新架構之外也新增很多自動化場景,用5.0很容易遇到CLI執行時障礙。

2. 將終端機(PowerShell 7.0)編碼調整為utf-8#

打開PowerShell 7.0,在裡面輸入以下指令,會自動開啟名為Microsoft.PowerShell_profile.ps1的檔案。

notepad $PROFILE

系統找不到的話到這個路徑底下 使用者\Documents\PowerShell (沒有檔案自己建立一個)

然後把這三種啟動參數全部貼進去Microsoft.PowerShell_profile.ps1存檔。

# 1. 強制控制台輸出/輸入使用 UTF-8
[Console]::InputEncoding = [System.Text.UTF8Encoding]::new()
[Console]::OutputEncoding = [System.Text.UTF8Encoding]::new()
# 2. 強制 PowerShell 內部的輸出編碼為 UTF-8
$OutputEncoding = [System.Text.UTF8Encoding]::new()
# 3. 設定常用指令(存檔、外輸)預設使用 UTF-8
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
$PSDefaultParameterValues['Set-Content:Encoding'] = 'utf8'
$PSDefaultParameterValues['Add-Content:Encoding'] = 'utf8'

ttt

存檔後還沒結束,這個啟動參數是需要生效的,回到PowerShell 7.0裡面輸入以下指令

. $PROFILE

輸入後不會跑任何log,可以再次使用指令 notepad $PROFILE 確認裡面的啟動參數確實有保存到。

3. 將PowerShell 7.0設定為預設#

啟動參數保存完後先別關(關了也沒關係),在上方有個下拉小箭頭找到設定。 ttt 然後把PowerShell 7.0設為預設使用。 ttt

4. VSCode更換終端機預設對象#

PowerShell 7.0都設定完後,回到VSCode把終端機預設改成PowerShell 7.0。

在VSCode中點擊左下角齒輪 -> 設定 -> 搜尋設定輸入: Terminal: Select Default Profile

找到 Windows上的預設終端設定檔 透過下拉選單找到PowerShell

ttt

WARNING

底下的Tips提示有標註該終端機啟動檔來源,要記得是7.0版本不要選錯 !

path —> …PowerShell\7\pwsh.exe

設定好之後建議關閉VSCode重開確認設定有生效,之後駕駛Codex就不會再出狀況了,快去趕專案吧 !