V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chenqh
V2EX  ›  Visual Studio Code

关于 vscode 调用 openFile 的问题

  •  
  •   chenqh · 2020-08-29 20:38:15 +08:00 · 1989 次点击
    这是一个创建于 1329 天前的主题,其中的信息可能已经有所发展或是发生改变。
    vscode.commands.executeCommand("workbench.action.quickOpen", content);
    

    这个命令运行时会弹窗的,但是在 vscode terminal 里面的 Open File in editor 不需要弹窗直接就跳过去了,这个怎么做的?

    第 1 条附言  ·  2020-08-29 22:59:37 +08:00
    换了种方式实现了,该贴结束
    2 条回复    2020-08-29 21:00:12 +08:00
    imn1
        1
    imn1  
       2020-08-29 20:46:43 +08:00   ❤️ 1
    本身就是终端,还弹什么呢?
    geelaw
        2
    geelaw  
       2020-08-29 21:00:12 +08:00   ❤️ 1
    因为 quickOpen 命令的含义是:打开“转到文件”对话框。它的作用是让用户选择要打开的文件,而不是打开一个文件。

    什么叫做“在 vscode terminal 里面的 Open File in editor”?你是指在内置终端里用 START / Start-Process / Invoke-Item / open 等打开一个和 VSCode 关联的文件时,VSCode 打开了文件,这个现象吗?
    那些命令和 quickOpen 没关系,纯粹就是“一个程序使用默认关联打开文件,于是关联程序处理了这个请求”的结果。那些命令根本不关心自己是不是从 VSCode 内置的终端里发出的,也不可能有“得用 vscode.commands 让 VSCode 打开文件”的逻辑。

    换个方式问你的问题:为什么运行 code C:\1.txt 会导致 VSCode 打开 C:\1.txt 而不是“转到文件”对话框?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   944 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 114ms · UTC 20:24 · PVG 04:24 · LAX 13:24 · JFK 16:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.