[解决方案] Codex Cli 复制多行提示词到输入框,可能截断提示词,导致提示词不完整的解决方案

10 小时 0 分钟前
 yonlin

经常使用 Codex Cli 的同学肯定遇到过标题的问题,我搜到的最简单的解决方案是使用 Shift + Insert 粘贴文本,但是 [无效] 。

我目前的输入多行文本方式:

  1. PowerShell / Windows Terminal 下,键入 [ codex ] ,进入 Codex Cli 环境
  2. 键入 [ ctrl + G ] ,打开 notepad++,
  3. 输入提示词, [ ctrl+s ] 保存,退出 notepad++,提示词自动回到了 Codex cli 。

配置方法:

1. 先找到 Notepad++ 路径

通常是:

C:\Program Files\Notepad++\notepad++.exe

或者:

C:\Program Files (x86)\Notepad++\notepad++.exe

先在 PowerShell 执行:

Test-Path "C:\Program Files\Notepad++\notepad++.exe"

如果返回:

True

就使用这个路径。


2. 先临时配置测试

不要直接永久配置,先测试。

在启动 Codex 的 PowerShell 中执行:

$env:VISUAL='"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession'
$env:EDITOR='"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession'

然后:

codex

进入 Codex 后:

Ctrl + G

应该会打开一个 Notepad++ 窗口。

Codex 的外部编辑器功能本身就是针对这种长 Prompt 场景设计的。


3. 更推荐:使用 -multiInst

Notepad++ 官方支持 -multiInst,它会启动一个新的 Notepad++ 实例。

所以我建议最终使用:

"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession

这里:

这样 Codex 每次 Ctrl+G 都不会污染你正在使用的 Notepad++ 工作区。


4. 设置永久环境变量

确认上面的临时测试成功后,执行:

[Environment]::SetEnvironmentVariable(
    "VISUAL",
    '"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession',
    "User"
)

[Environment]::SetEnvironmentVariable(
    "EDITOR",
    '"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession',
    "User"
)

然后彻底关闭当前 PowerShell / Windows Terminal

重新打开一个 PowerShell 。


5. 验证环境变量

执行:

$env:VISUAL

应该显示:

"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession

再执行:

$env:EDITOR

应该也是:

"C:\Program Files\Notepad++\notepad++.exe" -multiInst -nosession

然后:

codex

进入 Codex 。


6. 测试 Ctrl+G

在 Codex 输入框里先随便输入:

这是一个测试 Prompt 。

第二行。

第三行。

这里是一段很长的测试内容。

然后按:

Ctrl + G

Notepad++ 应该打开,并出现刚才的完整 Prompt 。

你可以在 Notepad++ 中:

然后保存并关闭这个 Notepad++ 窗口

Codex 会重新获得编辑后的内容,然后回到输入框。

最后:

Enter

提交。

188 次点击
所在节点    Codex
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1234969

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX