diff --git a/ClaudeCode/setup-claude-code.ps1 b/ClaudeCode/setup-claude-code.ps1 index 7983d46..e042108 100644 --- a/ClaudeCode/setup-claude-code.ps1 +++ b/ClaudeCode/setup-claude-code.ps1 @@ -1,4 +1,4 @@ -# Claude Code Configuration Script for XCodeCLI (Windows) +# Claude Code Configuration Script for XCodeCLI (Windows) # This script configures Claude Code to use your XCodeCLI instance # Run with: powershell -ExecutionPolicy Bypass -File setup-claude-code.ps1 -ApiKey YOUR_KEY # Or via one-liner: & { $key='YOUR_KEY'; iwr -useb https://api.xcodecli.com/setup-claude-code.ps1 | iex } @@ -17,14 +17,12 @@ if (-not $ApiKey -and (Test-Path Variable:key)) { $ApiKey = $key } # 确保中文字符在各种 PowerShell 环境中正确显示 # 兼容: Windows PowerShell 5.x, PowerShell 7.x, Windows Terminal, conhost, ISE, iwr|iex try { - if ($Host.Name -eq 'ConsoleHost') { - [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 - [Console]::InputEncoding = [System.Text.Encoding]::UTF8 - } - $OutputEncoding = [System.Text.Encoding]::UTF8 if ($env:OS -eq 'Windows_NT') { & cmd /c "chcp 65001 >nul" 2>&1 | Out-Null } + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + [Console]::InputEncoding = [System.Text.Encoding]::UTF8 + $OutputEncoding = [System.Text.Encoding]::UTF8 } catch { } # Configuration diff --git a/GeminiCLI/setup-gemini.ps1 b/GeminiCLI/setup-gemini.ps1 index c148465..388f60d 100644 --- a/GeminiCLI/setup-gemini.ps1 +++ b/GeminiCLI/setup-gemini.ps1 @@ -1,4 +1,4 @@ -# Gemini CLI Configuration Script for XCodeCLI (Windows) +# Gemini CLI Configuration Script for XCodeCLI (Windows) # This script configures Gemini CLI to use your XCodeCLI instance # Automatically tests multiple API endpoints and selects the working one # Run with: powershell -ExecutionPolicy Bypass -File setup-gemini.ps1 -ApiKey YOUR_KEY @@ -17,14 +17,12 @@ if (-not $ApiKey -and (Test-Path Variable:key)) { $ApiKey = $key } # 确保中文字符在各种 PowerShell 环境中正确显示 # 兼容: Windows PowerShell 5.x, PowerShell 7.x, Windows Terminal, conhost, ISE, iwr|iex try { - if ($Host.Name -eq 'ConsoleHost') { - [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 - [Console]::InputEncoding = [System.Text.Encoding]::UTF8 - } - $OutputEncoding = [System.Text.Encoding]::UTF8 if ($env:OS -eq 'Windows_NT') { & cmd /c "chcp 65001 >nul" 2>&1 | Out-Null } + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + [Console]::InputEncoding = [System.Text.Encoding]::UTF8 + $OutputEncoding = [System.Text.Encoding]::UTF8 } catch { } # Configuration diff --git a/codex/setup-codex.ps1 b/codex/setup-codex.ps1 index a1ced7f..5467e97 100644 --- a/codex/setup-codex.ps1 +++ b/codex/setup-codex.ps1 @@ -1,4 +1,4 @@ -# Codex Configuration Script for XCodeCLI (Windows) +# Codex Configuration Script for XCodeCLI (Windows) # This script configures Codex to use your XCodeCLI instance # Automatically tests multiple API endpoints and selects the working one # Run with: powershell -ExecutionPolicy Bypass -File setup-codex.ps1 -ApiKey YOUR_KEY @@ -17,14 +17,12 @@ if (-not $ApiKey -and (Test-Path Variable:key)) { $ApiKey = $key } # 确保中文字符在各种 PowerShell 环境中正确显示 # 兼容: Windows PowerShell 5.x, PowerShell 7.x, Windows Terminal, conhost, ISE, iwr|iex try { - if ($Host.Name -eq 'ConsoleHost') { - [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 - [Console]::InputEncoding = [System.Text.Encoding]::UTF8 - } - $OutputEncoding = [System.Text.Encoding]::UTF8 if ($env:OS -eq 'Windows_NT') { & cmd /c "chcp 65001 >nul" 2>&1 | Out-Null } + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + [Console]::InputEncoding = [System.Text.Encoding]::UTF8 + $OutputEncoding = [System.Text.Encoding]::UTF8 } catch { } # Configuration diff --git a/ef01e1d7cb66896f9c042ca96ba35f2e.png b/ef01e1d7cb66896f9c042ca96ba35f2e.png new file mode 100644 index 0000000..6a39688 Binary files /dev/null and b/ef01e1d7cb66896f9c042ca96ba35f2e.png differ diff --git a/setup-claude-code.ps1 b/setup-claude-code.ps1 index 7983d46..e042108 100644 --- a/setup-claude-code.ps1 +++ b/setup-claude-code.ps1 @@ -1,4 +1,4 @@ -# Claude Code Configuration Script for XCodeCLI (Windows) +# Claude Code Configuration Script for XCodeCLI (Windows) # This script configures Claude Code to use your XCodeCLI instance # Run with: powershell -ExecutionPolicy Bypass -File setup-claude-code.ps1 -ApiKey YOUR_KEY # Or via one-liner: & { $key='YOUR_KEY'; iwr -useb https://api.xcodecli.com/setup-claude-code.ps1 | iex } @@ -17,14 +17,12 @@ if (-not $ApiKey -and (Test-Path Variable:key)) { $ApiKey = $key } # 确保中文字符在各种 PowerShell 环境中正确显示 # 兼容: Windows PowerShell 5.x, PowerShell 7.x, Windows Terminal, conhost, ISE, iwr|iex try { - if ($Host.Name -eq 'ConsoleHost') { - [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 - [Console]::InputEncoding = [System.Text.Encoding]::UTF8 - } - $OutputEncoding = [System.Text.Encoding]::UTF8 if ($env:OS -eq 'Windows_NT') { & cmd /c "chcp 65001 >nul" 2>&1 | Out-Null } + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + [Console]::InputEncoding = [System.Text.Encoding]::UTF8 + $OutputEncoding = [System.Text.Encoding]::UTF8 } catch { } # Configuration diff --git a/setup.ps1 b/setup.ps1 index 59fa096..d7141dd 100644 --- a/setup.ps1 +++ b/setup.ps1 @@ -1,4 +1,4 @@ -# XCodeCLI Setup Launcher (Windows) +# XCodeCLI Setup Launcher (Windows) # 一站式安装和配置 Claude Code, Gemini CLI, Codex param( @@ -13,18 +13,17 @@ if (-not $ApiKey -and (Test-Path Variable:key)) { $ApiKey = $key } # 确保中文字符在各种 PowerShell 环境中正确显示 # 兼容: Windows PowerShell 5.x, PowerShell 7.x, Windows Terminal, conhost, ISE, iwr|iex try { - if ($Host.Name -eq 'ConsoleHost') { - [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 - [Console]::InputEncoding = [System.Text.Encoding]::UTF8 - } - $OutputEncoding = [System.Text.Encoding]::UTF8 - # Windows 下同步控制台代码页为 UTF-8 + # 1. 先设置控制台代码页为 UTF-8 if ($env:OS -eq 'Windows_NT') { & cmd /c "chcp 65001 >nul" 2>&1 | Out-Null } + # 2. 设置 .NET 控制台编码 (Write-Host 依赖此设置) + [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 + [Console]::InputEncoding = [System.Text.Encoding]::UTF8 + # 3. 设置 PowerShell 管道/cmdlet 输出编码 + $OutputEncoding = [System.Text.Encoding]::UTF8 } catch { # 静默处理 - ISE 等环境可能不支持 Console 类操作 -} # ========== 颜色输出函数 ========== function Write-Info { param([string]$Message); Write-Host "[INFO]" -ForegroundColor Blue -NoNewline; Write-Host " $Message" }