theia Eclipse 出品,1.3 万 Star!网友说要干掉 VS Code 的新工具
本文将向您介绍VS代码的另一种选择:Eclipse忒伊亚。
忒伊亚是一个基于TS的开源IDE框架。基于它,我们可以开发自己的定制开发工具,这些工具可以部署到云中,也可以打包到桌面应用程序中。
什么是忒伊亚?
Eclipse忒伊亚不是一个集成开发环境,而是一个开发集成开发环境的框架。它是基于现代Web技术的可扩展平台,是开发成熟、多语言的云计算和桌面类的理想产品。
Clipsethia不是一个IDE,而是一个开发IDE的框架。它是基于现代Web技术的可扩展平台,是开发成熟、多语言的云计算和桌面类的理想产品。
在码头经营
使用docker启动基于忒伊亚的IDE是最简单的,您只需要确保docker安装在您当前的系统中。我们可以直接使用它提供的图片开始:
# Linux、macOS或PowerShell终端
docker run-it-init-p 3000:3000-v " $:/home/project " theaide/THEIA:next
# Windows
docker run-it-init-p 3000:3000-v " % CD % "/home/project " the aide/THEIA:next
执行上述命令后,它会自动拉取theaide/THEIA:next的图像,并在http://localhost:3000处启动忒伊亚ide,该IDE将使用您当前的目录作为工作目录。其中- init参数用于避免死进程问题。
假设此时的目录是:/Users/jerry/workspace/testbox,在这个目录中执行上面的命令。让我们看看结果:
docker运行theia图像
从日志中,我们可以看到忒伊亚IDE已经成功启动并侦听端口3000。让我们打开浏览器看看它的真面目:
docker运行theia图像的结果
你觉得很亲切吗?
哈哈,是的,看起来几乎和VS Code一模一样。此外,它还支持VS Code中的插件,所以你可以在忒伊亚享受VS Code的插件市场。
让我们先运行一个地狱世界,感受一下这个IDE的威力:
docker运行theia映像的用法
构建自己的集成开发环境
如果你不想使用docker,你可以自己构建一个忒伊亚IDE。接下来,基于忒伊亚,我们在本地运行我们自己的IDE。
环境要求
Node.js >的版本:= 12.14.1和
纱线版本>:= 1.7.0
创建项目
我的上帝
cd my-theia
然后创建一个package.json文件:
{
“名称”:“我的酷IDE”,
"依赖项":{ 0
" @theia/callhierarchy": "next ",
" @theia/file-search": "next ",
“@theia/git”:“下一个”,
“@ THEIA/markers”:“next”,
" @theia/messages": "next ",
“@ THEIA/迷你浏览器”:“下一步”,
“@theia/navigator”:“下一个”,
" @theia/outline-view": "next ",
" @ THEIA/plugin-ext-vs code ":" next ",
“@ THEIA/preferences”:“next”,
“@theia/preview”:“下一步”,
“@ THEIA/工作区搜索”:“下一步”,
“@ THEIA/terminal”:“next”
},
" devDependencies ":{ 0
“@theia/cli”:“下一步”
}
}
通过package.json,我们可以看到忒伊亚实际上是Node的一个包。依赖关系中有很多依赖关系。大致可以推断,忒伊亚的功能是由这些包组合而成的,例如,@theia/search-in-workspace负责搜索模块,@theia/terminal负责终端模块等。此外,@theia/cli作为devDependencies,我们将在构建和运行时使用它的一些命令。
安装依赖关系
故事
如果下载依赖较慢,建议切换镜像源地址。成功安装的结果应该如下:
安装theia deps
构建项目
纱线结构
该命令主要用于生成项目代码,包括源代码、webpack配置文件和webpack打包文件。手术成功的结果如下:
theia建筑
运行忒伊亚集成开发环境
直接跑
纱线开始
您可以看到我们的IDE运行在端口3000上:
开始吧
让我们打开http://localhost:3000来看看:
本地运行theia映像的用法
这几乎和VSCode是一样的体验。
封装npm
在package.json中添加:
{
// .....其他人
" s ":{ 0
“开始”:“theia开始”,
“构建”:“theia构建”
}
}
以后可以直接用纱xxx的方式来实现。到目前为止,我们已经在本地成功构建了一个IDE
安装插件
事实上,我们在最后一步有一个IDE,但是作为一个开发工具,它可能几乎是有趣的。差点发生了什么?让我们编写一些代码来了解:
没有插件的theia
是的,结果一目了然,没有亮点,编码过程也没有提示,相当于一个好看的记事本。这根本不足以称为IDE。让我们安装这些插件来增强我们的IDE。此时,我们需要更新package.json:
{
// ...其他人
" s ":{ 0
"准备":"纱线运行干净。和。纱线制造与加工。和。纱线运行下载:插件”,
“干净”:“干净”,
“构建”:“theia构建模式开发”,
“start”:“THEIA start-plugins = local-dir:plugins”,
“下载:插件”:“theia下载:插件”
},
“theiaPluginsDir”:“插件”,
" Thiaplugins ":{ 0
“vs code-building-CSS”:“https://github . com/THEIA-ide/vs code-building-extensions/releases/download/v 1 . 39 . 1-prel/CSS-1 . 39 . 1-prel . vsix”,
“vs code-builtin-html”:“https://github . com/THEIA-ide/vs code-builtin-extensions/releases/download/v 1 . 39 . 1-prel/html-1 . 39 . 1-prel . vsix”,
“vs code-builtin-Java”:“https://github . com/THEIA-ide/vs code-builtin-extensions/releases/download/v 1 . 39 . 1-prel/Java-1 . 39 . 1-prel . vsix”,
“vs code-builtin-JSON”:“https://github . com/THEIA-ide/vs code-builtin-extensions/releases/download/v 1 . 39 . 1-prel/JSON-1 . 39 . 1-prel . vsix”,
" vs code-building-markdown ":" https://github . com/THEIA-ide/vs code-building-extensions/releases/download/v 1 . 39 . 1-prel/markdown-1 . 39 . 1-prel . vsix "
}
我们更新了s,并添加了两个属性,theiaPluginsDir和theiaPlugins。TheiaPluginsDir用来设置我们插件的存储地址,theiaPlugins就是我们要安装的插件。在运行项目之前,我们需要运行纱线准备来准备环境,我们将在日志中看到插件的下载:
下载插件
这些插件将被放在当前目录的插件文件夹下。让我们再次启动IDE来看看效果。请注意,Start接受参数并指定插件的目录:
带插件的theia
我们可以看到,在插件的帮助下,我们真的可以将这个IDE作为一个生产工具。
打包桌面应用程序
这是比较容易的,只有几个简单的步骤,我们可以直接参考它的回购:https://github.com/theia-ide/yangster-electron
摘要
通过上面的例子,我们已经可以构建自己的IDE了。如果你有自己的服务器,按照上面的步骤搭建一个Cloud IDE,这样出门就不用带电脑了,用平板甚至手机就可以在线编程了。
好文章,我正在看