Lapce 概述
Lapce 是一款基于 Rust 编写的代码编辑器,具有原生 GUI,并利用 GPU 加速和基于 WASI 的可扩展插件系统。它支持语法高亮、代码补全和代码诊断,兼容任何符合 LSP 协议的服务器。
远程开发支持
Lapce 支持远程开发,允许用户连接到远程机器,提供与本地项目几乎相同的开发体验。用户可以在保持工作环境不变的同时,充分利用远程服务器的全部性能。
原生 GUI 与 Floem
Lapce 的原生 GUI 基于 Rust 声明式 UI 工具包 Floem。Floem 的布局范式来源于其底层库 Taffy,提供了类似于 CSS 的 Flexbox 布局系统。Floem 支持 Windows、macOS 和 Linux,并通过 wgpu 使用 OpenGL、Vulkan 或 Metal。
反应式模型与渲染优化
Floem 不仅提供声明式语法,还采用了反应式模型,通过在应用程序中发送信号来更新 UI。为了控制渲染性能,Floem 仅对视图树进行一次渲染,以避免单个视图中的性能瓶颈。
远程开发代理
Lapce 通过基于代理的方法支持远程开发,使用 lapce-proxy
负责前端与编辑器其他组件(包括文件系统、插件和 LSP 服务器)之间的通信。在远程开发时,前端连接到远程代理;在本地开发时,则使用本地代理,用户除了网络延迟外几乎感受不到任何差异。
插件系统
Lapce 支持外部插件,可以使用任何能够生成 WASI 兼容 Wasm 的语言创建插件。尽管关于插件创建的文档较少,但用户可以访问 Lapce 社区仓库 查看示例插件,并使用 模板 开始创建自己的插件。
Vim 模式
Lapce 提供了基于两种不同模式的 Vim 风格编辑体验,这一功能可以从 Lapce 主屏幕或 设置 面板中启用,这对 Vim 爱好者来说是一个受欢迎的特性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。