独书先生 Menu

Viewing all items for tag vscode

国产 CEC-IDE 明牌换皮开源项目 VSCode 宣称自主研发

背景

最近,我看到群里都在传全新推出的“自主研发”工具:CEC-IDE。

那么,什么是 CEC-IDE?

根据公开报道,CEC-IDE 是由数字广东公司与麒麟软件联合打造的,是国内首个适配国产操作系统、自主创新的一款安全、专业且功能强大的集成开发环境。

CEC-IDE主页

CEC-IDE 旨在成为数字政府创新应用的孵化器和技术管理的核心枢纽。作为此使命的体现,该工具以自主研发为基础,提供适用于多种主流编程语言的开发环境,成为国内首个支持麒麟、统信、Windows、Mac OS 等多种操作系统的集成开发环境。

CEC-IDE 不仅提供代码编写、智能辅助、编译调试、版本控制等功能,还构建了一个自有插件市场。超过 1600 种技术插件服务以及一系列数字政府公共服务能力插件,都汇聚于此,从而显著提高研发效率。
CEC-IDE 插件市场

插件市场:https://cecide.digitalgd.com.cn/monorepo/app-front/superMarket

主要特点

快速工程搭建: 提供 Java/JavaScript/Python/C++/Go 等工程创建脚手架和模板,协助用户高效启动新项目。

智能编码辅助: 支持主流开发语言的语法高亮、智能代码补全、自定义快捷键、括号匹配和代码颜色区分等功能,有力地提升了开发人员的工作效率。

内建代码存储库: 支持私有化代码存储,提供代码托管、代码审查、代码分支管理等服务,全面保障数字政府代码资产的安全。

知识库支持: 提供从前端、后端到运维、测试等全流程研发的知识分享、技术心得、在线学习支持。

优势

安全可信: 作为国有企业品牌,CEC-IDE 以自主研发为基础,其品质值得信赖。工具确保数据本地存储、插件安全认证,从而保障开发成果的安全。

政务增效: 提供数字政府公共服务支持的开发插件,方便开发者随时调用,为数字政府的建设提供有力支撑。

多端适配: CEC-IDE 提供多语言的开发环境,与国产操作系统以及各种终端兼容,为国内软件开发者提供全方位支持。

灵活扩展: 丰富多样的插件资源,同时兼容 vscode 插件;集成 springboot 项目向导,插件一键安装,使开发变得更加便捷。

体验

深入了解这款应用的简介:

应用简介图

然而,困惑的是,这款工具的版权信息居然还是微软的!

终于,成功地启动了 CEC-IDE:

应用启动图

这个熟悉的界面,和 VSCode 不能说相似,简直是一模一样。

原来,它会跳转到数字广东的门户,与普通开发者无关。

登录页面

此外,我发现 CEC-IDE 使用了自己的插件市场,而不是微软的 Marketplace。

虽然这个市场收录了许多第三方插件,主要位于“工具与效率”类别,但与微软的 VSCode(或更开源的 VSCodium)的 Marketplace 相比,数量仍有差距。

特别引人注目的是“数字政府”插件:

插件示例

显然,这些插件非常独特。

最后,让我们看一下官方文档中难以捉摸的内容——

“国企品牌,自主研发,值得信赖的品质”,“与国产操作系统兼容”:

官方文档1

以及“与 VSCode 插件完全兼容”:

官方文档2

因此,我们得出结论:CEC-IDE 是基于 VSCode 源代码粗糙制作的定制开发工具。其目标用户不仅不包括中国以外的开发者,甚至不包括大多数国内开发者。

然而,令人不解的是,尽管它自称“自主研发”,但这款工具甚至不完全遵循 MIT 开源协议。

这引人深思,甚至与那些努力优化 UI 设计的 Redcore 浏览器相比,CEC-IDE 似乎毫无改善。

更不用说,CEC-IDE 竟然还推出了 VSCode/VSCodium 中从未有过的“会员功能”

因此,一些国内开发者不得不发出疑问,于是他们在 VSCode 的 GitHub 仓库中提出了问题:

问题提出

链接:GitHub 问题链接

(值得指出的是,提出这种问题的方式实际上并不理想,既不具备高价值,也缺乏建设性,还可能对微软 VSCode 项目的维护者造成困扰。因此,我本人不太支持这种做法;至于这个问题,由于已被微软封锁讨论,原作者也手动关闭了该问题,现在已无法再评论。)

截止目前

官网现在已经无法访问了
官网访问限制

CEC-IDE 的官方指南文档也无法正常打开:

CEC-IDE 指引文档

CEC-IDE 的欢迎页和插件市场已经无法正常显示:

欢迎页及市场问题

原文 https://appsoftea.com/zh/cec-ide/
参考 https://www.zhihu.com/question/619023882/answer/3181234978

VSCode 源码学习(1):本地运行

VSCode 源码学习(1):本地运行

背景

最近项目架构参考 vscode,准备学习一下 vscode 的源码。第一步就是先跑起来。

操作步骤基本上是参考官方贡献文档来的

VSCode: How to Contribute

这里提炼一些关键步骤。如有不对,请多参考官方文档。

步骤

因为 vscode 编译会用 node-gyp,node-gyp 在 windows 中安装会比较麻烦,所以我的计划是在 WSL 中运行。

  1. 环境准备

    确保你的 WSL 中已经安装好了 git、nodejs、yarn、Python、C++编译工具链

  • Git
  • Node.JSx64,版本 >=18.15.x 和 <19
  • Yarn 1,版本>=1.10.1和<2,按照安装指南
  • Python(node-gyp 必需;查看 node-gyp readme 对于当前支持的 Python 版本)
  • 适用于您平台的 C/C++ 编译器工具链:

    “`sh
    sudo apt install python3 python-is-python3 libsecret-1-dev libxss1 libx11-dev libxkbfile-dev libasound2 libgtk-3-0 libgdk-pixbuf2.0-0 libnss3 libxtst6 libxi6 libxdamage1 libxcursor1 libxcomposite1 libx11-xcb1 libgbm1
    “`

  • 推荐使用 VSCode 来开发。安装 VS CodeRemote – WSL 扩展。
  1. 安装依赖

    yarn
    

    yarn安装成功

  2. 启动 electron

    ./scripts/code.sh --no-sandbox
    

    第一次执行比较慢,多等待一会,大概 2 分钟后就能启动了。
    code.sh执行成功

报错

执行./scripts/code.sh报错

可能是刚开始没有安装 C++工具链,执行./scripts/code.sh报了一些错误

找不到 ternary-stream 模块

Error: Cannot find module 'ternary-stream'

找不到 vscode-gulp-watch 模块

Error: Cannot find module 'vscode-gulp-watch'

gssapi.h 错误

../src/unix/kerberos_gss.h:21:14: fatal error: gssapi/gssapi.h: No such file or directory

基本上安装好 C++依赖就没有了。

yarn 安装依赖的时候报 gyp 错误

还有一个常见的 node-gyp 错误

/bin/sh: 1: pkg-config: not found
gyp: Call to 'pkg-config --cflags libsecret-1' returned exit status 127 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1

我尝试清除依赖后重新安装依赖就好了

# 清除依赖
git clean -xfd
# 重新安装依赖
yarn

提示not a valid Electron app

这是官方提醒的报错,注意一下就行,需要执行

yarn watch

参考