我已经厌倦了IDEA巨量的内存与CPU占用,正在寻找替代方案。
我将目光投降ZED,ZED是一个用Rust编写的高性能IDE,支持所有我常用的技术栈,java
,vue
,python
以及一些个人兴趣性的技术栈go
,rust
等,基本满足我的需求。虽然它暂时不支持debug,但我愿意提前尝试它。
我使用brew下载zed
brew install --cast zed
下载完成后,无论如何都无法打开zed的插件市场,并且左下角一直显示auto update failed
猜测可能是proxy需要专门配置,但在官网的文档上未找到相关配置文档。遂在github上找到了此issue Global socks5/http/https proxy support
按照社区成员的建议,配置了"proxy": "socks5://127.0.0.1:7890"
,但仍无法访问插件市场,以为是此配置未生效。于是查找自己的proxy
软件日志,发现确实走了proxy
。百思不得其解,只能将源码pull下来自行编译debug。
按Building Zed for macOS文档的指引,编译完成后,遂发现真实原因为连接超时。
我的proxy软件延迟常常达到大几百甚至数秒,Zed设置的默认超时时间会导致绝大部分情况下都会连接超时,修改此函数中的超时设置,重新编译打包Zed,终于成功连接插件市场,并成功启用自动更新
下为修改的代码位置
pub fn client(proxy: Option<isahc::http::Uri>) -> Arc<dyn HttpClient> {
Arc::new(
isahc::HttpClient::builder()
.connect_timeout(Duration::from_secs(5))
.low_speed_timeout(100, Duration::from_secs(5))
.proxy(proxy)
.build()
.unwrap(),
)
}