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

相关推荐
solomonzw25 分钟前
举例矢量路由协议-RIP
运维·服务器·网络·华为·智能路由器·github
小珑也要变强40 分钟前
shell中的case语句和循环语句
linux·运维·windows
俺俺1 小时前
(33)iptables设置防火墙策略常用命令(docker环境、非docker环境)
运维·docker·容器·iptables·防火墙
Aimyon_361 小时前
⾃动化运维利器 Ansible-Jinja2
运维·ansible
骑士9991111 小时前
centos安装jenkins
运维·jenkins
OceanBase数据库官方博客1 小时前
如何解决JAVA程序通过obloader并发导数导致系统夯住的问题 | OceanBase 运维实践
java·运维·oceanbase·分布式数据库
白总Server2 小时前
VSCode解说
运维·数据库·ide·vscode·nginx·架构·编辑器
.生产的驴2 小时前
SpringCloud OpenFeign负载均衡远程调用 跨服务调用 连接池优化
java·运维·spring boot·后端·spring·spring cloud·负载均衡
天草二十六_简村人2 小时前
jenkins用户在执行scp的时候如何做免密登录
运维·ci/cd·node.js·jenkins·php·devops
atec20003 小时前
安装MySQL主备服务
运维·数据库·mysql