Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vscode plugin in MacOS #46

Closed
FoundTheWOUT opened this issue Mar 5, 2021 · 7 comments
Closed

vscode plugin in MacOS #46

FoundTheWOUT opened this issue Mar 5, 2021 · 7 comments
Labels

Comments

@FoundTheWOUT
Copy link

提议在mac下用zsh启动:

cmd = `bash -l -c '${cmd}'`;

现在mac默认shell是zsh, 然后关于个人的PATH设置都是在zsh config里, 用bash启动会导致debug的时候找不到PATH.
当然其实也可以自己设置bash的config...

@mohuishou
Copy link
Owner

提议在mac下用zsh启动:

cmd = `bash -l -c '${cmd}'`;

现在mac默认shell是zsh, 然后关于个人的PATH设置都是在zsh config里, 用bash启动会导致debug的时候找不到PATH.
当然其实也可以自己设置bash的config...

这个后面可以优化一下,修改一下默认值

@mohuishou
Copy link
Owner

最新版已支持,shell 可以使用 vsc-setting 修改

@FoundTheWOUT
Copy link
Author

我发现改了zsh还是不能正确的获得PATH...怎么回事,
我在terminal跑code .能是正常debug的,
但是用插件就会就debug不了了.
截屏2021-04-05 下午11 17 41
截屏2021-04-05 下午11 17 51

@mohuishou
Copy link
Owner

你这个 debug 的意思是在 vscode 里面运行 debug 命令?

@FoundTheWOUT
Copy link
Author

你这个 debug 的意思是在 vscode 里面运行 debug 命令?

这个, vscode自带的Run and Debug
截屏2021-04-05 下午11 25 48

@mohuishou
Copy link
Owner

这个要看一下你的环境问题了,按理说这个应该和启动方式关系不大才对

@FoundTheWOUT
Copy link
Author

FoundTheWOUT commented Apr 28, 2021

用其它插件时无意中想到了一个解决方法.
就是不在node中运行启动脚本, 而是用osascript去调用本地terminal然后跑命令.
https://github.com/fofolee/uTools-quickcommand/blob/master/src/preload.js#L396

问题原因

在Unix系统中, 不同于Window, 我们一般都是在shell的conf下追加PATH, 比如.zshrc中追加node路径, 或者其它包路径
然而当我们用zsh -l -c时它会根据其调用者(当前node)路径进行响应, 在utools中的node是一个沙盒, 它的环境仅仅包含了必要的参数, 没有也理应没有办法拿到用户的个人配置(除非添加设置选项), 那么启动后的vscode找不到软件的路径也就理所当然了.

解决办法

启用一个terminal进程, 让该进程运行code, 这样就能有效的避免环境丢失的问题.

示例

FoundTheWOUT@e06e705
也许可以加个开关, 比如用本地terminal启动, 之类的...🥲

其它问题

  • Unix系统中, 如果目录路径带有空格, 启动会失效(路径中空格应改为'\ ', 但我想不到什么好办法)
  • utools.d.tsisMacOs isWindows isLinux三个方法应该返回布尔值

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants