在Windows Terminal/PowerShell中调用Vim终端JSON API的方法
在Windows Terminal/PowerShell中调用Vim终端缓冲区的文件打开API
在Vim的:terminal缓冲区里,想要让现有Vim实例打开新文件而非启动新的Vim进程,需要发送特定的终端转义序列。对应PowerShell/Windows Terminal的实现方式如下:
方法一:使用
Write-Host命令
把ESC字符(对应原序列里的<Esc>)用[char]27表示,终端响铃字符(对应<07>)用[char]7表示,双引号内部要转义为"",最后加上-NoNewline避免额外换行破坏序列:Write-Host "$([char]27)]51;[""drop"", ""README.md""]$([char]7)" -NoNewline方法二:直接调用控制台写入方法
用[Console]::Write更直接,不需要额外处理换行问题:[Console]::Write("$([char]27)]51;[""drop"", ""README.md""]$([char]7)")
如果要打开其他文件,只需要把命令里的"README.md"替换成目标文件的路径即可,路径包含空格时直接用双引号包裹就行。
内容的提问来源于stack exchange,提问作者xdhmoore
相关产品推荐
相关产品推荐

