在我当前的特定情况下,我正试图用Poedit打开一个.po
文件。我可能还想用Photoshop打开.psd
文件,用Illustrator打开.svg
文件。
我怀疑我仍然没有找到合适的搜索词。我已经找到了对launch.json
的引用(我认为它用于配置外部调试?(,但还没有找到,更不用说我目前的目标是"让我双击一个PO并在Poedit中打开它!">
编辑:目前似乎不可能(另请参阅https://github.com/fabiospampinato/vscode-open-in-application/issues/9)。
原始答案:
你可以尝试这个扩展:在应用程序中打开
我发现了这个扩展:在YuTengjing的外部应用程序中打开。安装后,我可以在指定的应用程序中打开资产。我真的很喜欢这样一个选项,我可以同时在多个应用程序中创建一个文件(例如,在Chrome、Firefox和Edge中打开一个html文件进行跨浏览器测试(。
正如@josh1978所说,余腾静的"在外部应用程序中打开"效果很好,基本上解决了问题。
然而,它在WSL2环境中存在一些问题,因为当前${file}
的替换变量将文本r
、c
解释为控制字符,并且该路径包括完整的WSL路径I.E.wsl.hostUbuntuhome...
为了让它发挥作用,你必须使用shell命令玩一些游戏,以强制路径到达所需的路径。这是一个将为powerpoint和excel文件启动lbreoffice的配置。
"openInExternalApp.openMapper": {
"extensionName": "pptx",
"apps": [{
"title": "libreoffice",
"shellCommand": "bash -c 'file="${file}";libreoffice "${file/*Ubuntu/}"' "
}]
},
{
"extensionName": "xlsx",
"apps": [{
"title": "libreoffice",
"shellCommand": "bash -c 'file="${file}";libreoffice "${file/*Ubuntu/}"' "
}]
}
来解释一下它的作用。它以bash(而不是sh(的形式执行命令,因此可以使用bash参数扩展来搜索/替换字符串的部分。
接下来,它将{file}
分配给自己,从而纠正r c
问题。
最后,它去掉了完整路径的前导部分,直到并包括"Ubuntu",留下形式为home{user}...
的路径,尽管有而不是
/
,但它将被正确解释。