[llvm-branch-commits] [llvm] [emacs] Rework tablegen mode (PR #182076)
Krzysztof Drewniak via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Feb 18 15:02:24 PST 2026
================
@@ -90,36 +88,19 @@
(defvar tablegen-mode-hook nil)
(defvar tablegen-mode-map nil) ; Create a mode-specific keymap.
-(if (not tablegen-mode-map)
- () ; Do not change the keymap if it is already set up.
+(unless tablegen-mode-map
(setq tablegen-mode-map (make-sparse-keymap))
(define-key tablegen-mode-map "\t" 'tab-to-tab-stop)
(define-key tablegen-mode-map "\es" 'center-line)
(define-key tablegen-mode-map "\eS" 'center-paragraph))
;;;###autoload
-(defun tablegen-mode ()
- "Major mode for editing TableGen description files.
-\\{tablegen-mode-map}
- Runs `tablegen-mode-hook' on startup."
- (interactive)
- (kill-all-local-variables)
- (use-local-map tablegen-mode-map) ; Provides the local keymap.
- (make-local-variable 'font-lock-defaults)
- (setq major-mode 'tablegen-mode ; This is how describe-mode
- ; finds the doc string to print.
- mode-name "TableGen" ; This name goes into the modeline.
- local-abbrev-table tablegen-mode-abbrev-table
- font-lock-defaults `(tablegen-font-lock-keywords)
- require-final-newline t
- )
-
- (set-syntax-table tablegen-mode-syntax-table)
- (make-local-variable 'comment-start)
- (setq comment-start "//")
- (setq indent-tabs-mode nil)
- (run-hooks 'tablegen-mode-hook)) ; Finally, this permits the user to
----------------
krzysz00 wrote:
Yep, define-derived-mode creates hooks by default
https://github.com/llvm/llvm-project/pull/182076
More information about the llvm-branch-commits
mailing list