From eb2c4169ae42430a20fdb01a4b448de4a049a18a Mon Sep 17 00:00:00 2001 From: Sibi Prabakaran Date: Mon, 26 Feb 2024 09:39:47 +0530 Subject: [PATCH 1/3] Fix tree sitter mode with hooks integration --- Changelog.md | 1 + rust-mode-treesitter.el | 1 + 2 files changed, 2 insertions(+) diff --git a/Changelog.md b/Changelog.md index a506866..cab2398 100644 --- a/Changelog.md +++ b/Changelog.md @@ -2,3 +2,4 @@ - Add support for treesitter mode. - Fix warnings resulting from rust-utils.el. [Fixes #509](https://github.com/rust-lang/rust-mode/issues/509). +- Fix tree sitter mode with hooks integraiton. [Fixes #516](https://github.com/rust-lang/rust-mode/issues/516). diff --git a/rust-mode-treesitter.el b/rust-mode-treesitter.el index 3c3bd57..0fb2e9f 100644 --- a/rust-mode-treesitter.el +++ b/rust-mode-treesitter.el @@ -8,6 +8,7 @@ ;;;###autoload (require 'treesit) (require 'rust-ts-mode) +(require 'rust-common) (define-derived-mode rust-mode rust-ts-mode "Rust" "Major mode for Rust code. From d174e3b6c8034bc7ce9ba182e4edf744ea52f9fa Mon Sep 17 00:00:00 2001 From: Sibi Prabakaran Date: Wed, 28 Feb 2024 08:15:22 +0530 Subject: [PATCH 2/3] Fix treesitter for older emacs --- rust-mode-treesitter.el | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/rust-mode-treesitter.el b/rust-mode-treesitter.el index 0fb2e9f..cb7b0f3 100644 --- a/rust-mode-treesitter.el +++ b/rust-mode-treesitter.el @@ -6,18 +6,19 @@ ;;; Code: ;;;###autoload -(require 'treesit) -(require 'rust-ts-mode) -(require 'rust-common) +(when (version<= "29.1" emacs-version) + (require 'treesit) + (require 'rust-ts-mode) + (require 'rust-common) -(define-derived-mode rust-mode rust-ts-mode "Rust" - "Major mode for Rust code. + (define-derived-mode rust-mode rust-ts-mode "Rust" + "Major mode for Rust code. \\{rust-mode-map}" - :group 'rust-mode + :group 'rust-mode - (add-hook 'before-save-hook rust-before-save-hook nil t) - (add-hook 'after-save-hook rust-after-save-hook nil t)) + (add-hook 'before-save-hook rust-before-save-hook nil t) + (add-hook 'after-save-hook rust-after-save-hook nil t))) (provide 'rust-mode-treesitter) ;;; rust-mode-treesitter.el ends here From b288e2d97eb54763271ddfc3f1483a899f949271 Mon Sep 17 00:00:00 2001 From: Sibi Prabakaran Date: Wed, 28 Feb 2024 09:05:32 +0530 Subject: [PATCH 3/3] Ad comment explaining about when clause --- rust-mode-treesitter.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/rust-mode-treesitter.el b/rust-mode-treesitter.el index cb7b0f3..dbad06a 100644 --- a/rust-mode-treesitter.el +++ b/rust-mode-treesitter.el @@ -7,6 +7,8 @@ ;;;###autoload (when (version<= "29.1" emacs-version) + ;; We have the when macro because of + ;; https://github.com/rust-lang/rust-mode/issues/520 (require 'treesit) (require 'rust-ts-mode) (require 'rust-common)