vscode trae插件

0 阅读1分钟

Ubuntu root用户使用trae插件

image.png

点击个人登录trae,跳转到浏览器, 登录trae后,浏览器没有弹框提示跳回vscode, 导致trae插件始终无法登录成功。
原因是vscode命令需要加上--no-sandbox, 无法唤醒vscode:

vscode://Microsoft.VisualStudio.Code.OpenFolder?some/path

解决方法:

安装Chrome
# 下载 Chrome 最新 .deb 包
wget -O /tmp/chrome.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
# 安装
sudo dpkg -i /tmp/chrome.deb
sudo apt-get install -f   # 补全依赖

安装完成后,注销并重新登录(或至少重启桌面环境),然后修改默认浏览器:

# 1. 设置 Chrome 为系统默认浏览器
xdg-settings set default-web-browser google-chrome.desktop

# 2. 强制 vscode:// 和 trae:// 协议关联到 Chrome(解决跳转)
xdg-mime default google-chrome.desktop x-scheme-handler/vscode
xdg-mime default google-chrome.desktop x-scheme-handler/trae

# 3. 验证
xdg-settings get default-web-browser          # 应输出 google-chrome.desktop
xdg-mime query default x-scheme-handler/vscode # 应输出 google-chrome.desktop

浏览器启动加上后缀--no-sandbox:

/usr/share/applications# vi google-chrome.desktop

Exec=/usr/bin/google-chrome-stable %U --no-sandbox
让 Chrome 自动调用带 --no-sandbox 的 VS Code

创建脚本 /usr/local/bin/vscode-handler.sh

#!/bin/bash
/usr/share/code/code --no-sandbox --open-url "$1"
chmod +x /usr/local/bin/vscode-handler.sh

创建.desktop文件

/usr/share/applications/vscode-nosandbox.desktop

内容:

[Desktop Entry]
Name=Visual Studio Code (No Sandbox)
Comment=Code Editing. Redefined.
Exec=/usr/local/bin/vscode-handler.sh %u
Icon=code
Terminal=false
Type=Application
MimeType=x-scheme-handler/vscode;
Categories=Development;

注册协议处理器

xdg-mime query default x-scheme-handler/vscode
# 应输出 vscode-nosandbox.desktop

验证

xdg-mime query default x-scheme-handler/vscode
# 应输出 vscode-nosandbox.desktop

现在 Chrome 点击任何 vscode:// 链接,都会通过脚本启动带 --no-sandbox 的 VS Code。