EmacsでWindowsのInstallShieldファイル(*.rul)を編集するには
標準添付のgeneric-xをロードすれば rul-generic-mode という
メジャーモードが定義されます。

しかし、このモードの定義にはバグがありこのモード使用後に
他のファイルを開いたらfont-lockがおかしくなります。

原因は generic-rul-mode-setup-function にて
font-lock-syntax-table をグローバルに変更しているからです。

再現コード

(setq generic-extras-enable-list '(rul-generic-mode))
(require 'generic-x)
(find-library "files")
(find-file "/tmp/test.rul")             ;empty file ok
(switch-to-buffer "files.el")
(emacs-lisp-mode)

取り急ぎ以下のアドバイスで直ります。

(defun generic-rul-mode-setup-function--font-lock-bug-fix (&rest them)
  (make-local-variable 'font-lock-syntax-table))
(advice-add 'generic-rul-mode-setup-function :before
            'generic-rul-mode-setup-function--font-lock-bug-fix)

多分初めてM-x report-emacs-bugでバグレポを送りました。

本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。