x-cmd pkg | helix - 用 Rust 打造的文本编辑器,内置 LSP 和语法高亮,兼容 Vim 用户习惯

目录

简介

helix 是用 Rust 开发的文本编辑器,以 Modal editing(模态编辑)为核心特性,类似于 Vim。它结合了经典的 Vim 模式编辑和现代开发工具的特性(如 LSP 支持、Tree-sitter 语法高亮等),能提供一个高效、精简的开发环境。

相比于 Vim,Helix 在设计上做了许多创新和改进:

  • 以 Rust 作为开发语言,并采用现代化的架构,性能更为优秀。
  • 默认集成了 LSP 和 Tree-sitter,提供更精确的语法分析和开发支持,而 Vim 需要安装插件来实现类似功能。
  • 提供更为简洁且现代的用户界面,内建许多用于开发的高级功能,如智能补全、错误检查等。

快速上手

安装

sh 复制代码
eval "$(curl https://get.x-cmd.com)"        # 安装 x-cmd
x env use helix                             # 使用 x-cmd 安装 helix

使用

  1. 启动 helix 编辑器:

    sh 复制代码
    # 直接启动 helix 编辑器
    hx
    
    # 编辑指定文件或目录
    hx /path/file_or_dir
  2. 常用快捷键:

    • i:进入插入模式,以修改文件内容。
    • esc:退出其他模式,回到普通模式。
    • u:(普通模式下)撤销上一个操作。
    • d:(普通模式下)删除当前行或选中的内容。
    • x:(普通模式下)选中当一行或多行内容。
    • w:(普通模式下)移动到下一个单词的开头。
    • ::(普通模式下)进入命令模式,以使用内置命令。
    • space:(普通模式下)进入空格模式,以使用内置的高级功能,如使用模糊查找器、查找函数等。
    • ctrl-w:(普通模式下)进入窗口模式,以管理窗口。

功能特点

  1. 模态编辑:将编辑操作分为不同的模式,每个模式都有特定的功能和按键绑定,用户可以用简洁的按键组合完成复杂的操作,并在特定场景下提供更灵活的编辑方式。
  2. 内置 LSP 支持:内置了对 LSP 的支持,能与各种编程语言的语言服务器交互,提供代码补全、跳转、重构、语法高亮等强大的开发功能。
  3. 树形结构语法高亮: 使用 Tree-sitter 作为语法高亮引擎,能提供精确且高效的语法分析。
  4. 现代化:UI 风格更加现代化,内置多种高级功能,如支持多窗口和分屏、内置搜索和替换功能。

竞品和相关项目

  1. vim:Vim(Vi IMproved)是文本编辑器 vi 的改良版,以其高效的文本编辑模式和操作方式而著名,是最为广泛使用的编辑器之一。
  2. Neovim: 一款用 C 语言开发的文本编辑器,是 Vim 的一个现代化分支,兼容 Vim 的大部分用法,支持绝大多数的 Vim 插件,Vim 的用户可以很容易地过渡到 Neovim。
  3. emacs:由 Richard Stallman 在 1970 年代开发的文本编辑,以其强大的自定义功能和广泛的插件支持而闻名。地位与 vim 相当。
  4. micro:用 Go 开发的现代终端文本编辑器,简洁易用,类似于传统的图形化文本编辑器。

进一步阅读

更多内容请查阅 : pkg/helix

转载请标明原文链接https://www.x-cmd.com/pkg/helix

相关推荐
doiito1 小时前
【Agent Harness】Gliding Horse 核心设计理念,不跟风开发自己的AI Agent
ai·rust·架构设计·系统设计·ai agent
花褪残红青杏小11 小时前
Rust图像处理第6节- 均值模糊 & 中值模糊:3×3 邻域的两种经典玩法
rust·webassembly·图形学
子兮曰15 小时前
前端工具链的「Rust 化」:一场没有赢家的军备竞赛?
前端·后端·rust
星栈17 小时前
写 Dioxus Demo 不难,难的是把它写成项目
前端·rust·前端框架
mCell19 小时前
【锐评】桌面端技术营销:别拿跑分当工程判断
前端·rust·electron
武子康1 天前
调查研究-201 Rust 里的 dev build 和 release build:为什么同一份代码性能差这么多?
后端·架构·rust
doiito1 天前
【Agent Harness】Gliding Horse 的 L2 作战地图:让多 Agent 协作从“摸黑”变成“透明”
ai·rust·架构设计·系统设计·ai agent
星栈2 天前
我用 Rust + Dioxus 做了个全栈跨平台笔记应用:再把新建、编辑和交付补上
前端·rust·前端框架
独孤留白2 天前
从C到Rust:基本类型 C 的隐式不确定 vs Rust 的显式确定
rust
清晨很温柔啊2 天前
# 用 Rust 手搓 AI 自演化主板:当 18 个异构器官长出 C++ 骨骼
rust