如何在 emacs 上开始使用 Tree-Sitter(windows)

文章目录

如何在emacs上开始使用Tree-Sitterwindows

参考:"How to Get Started with Tree-Sitter"。

首先要有一个可运行的emacs,并且它支持Tree-Sitter,直接从官网下载的就可以:"emacs-29.2_1-installer.exe"。

可以通过查看system-configuration-options获得编译选项,如果是--with-tree-sitter,说明它支持Tree-Sitter

然后安装各个语言对应的语言文件,github上已经有人提供下载了:"emacs-tree-sitter/tree-sitter-langs"。我下载的是tree-sitter-grammars.x86_64-pc-windows-msvc.v0.12.92.tar.gz这个文件:

然后把这些文件都放到user-emacs-directory下的tree-sitter目录中,在我的电脑上即%APPDATA%/.emacs.default/tree-sitter。且由于文件名要保持libtree-sitter-<LANGUAGE>.dll的格式,所以用emacsdired可以批量修改文件名,操作时步骤:

  1. C-x C-qdired变成可写buffer
  2. C-x r t执行string-rectangle来批量修改。
  3. C-c C-c最终使用文件名生效。

这里可以用(treesit-language-available-p 'cpp)命令来测试一下是否环境配置成功,返回t,说明成功。

最后在启动配置文件中添加如下即可:

emacs-lisp 复制代码
(setq major-mode-remap-alist
      '((sh-mode . bash-ts-mode)
        (c-mode . c-ts-mode)
        (c++-mode . c++-ts-mode)
        (c-or-c++-mode . c-or-c++-ts-mode)
        (python-mode . python-ts-mode)))

这里的含义就是当主模式为c-mode时,改用c-ts-mode模式。(可以M-:执行major-mode来查看当前主模式)

相关推荐
weixin_464078072 天前
ppt转为draw.io方法
编辑器
Masimaro3 天前
《elisp 每日一练》—— Major Mode 管理 abbrev-table
emacs
一木 之林4 天前
手搓家庭服务器:二手装机、Docker部署、端口映射与frp内网穿透
服务器·人工智能·git·编辑器
东木月5 天前
PyCharm 集成 Claude Code 插件:安装、配置与使用指南
python·pycharm·编辑器
boke112百科5 天前
WordPress经典编辑器【插入至文章】按钮怎么调到右上角?
编辑器·wordpress·wordpress教程·经典编辑器
AI情绪识别开源5 天前
检信AI学业生涯智选系统技术方案概述
emacs
我要见SA姐15 天前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
ide·vscode·python·自动化·编辑器
我要见SA姐16 天前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
数据库·ide·vscode·oracle·编辑器
MR.P_H_8 天前
CCS(Code Composer Studio)修改编码格式
编辑器
Masimaro8 天前
《elisp 每日一练》—— Minor Mode 回顾与综合练习
emacs