Forum: Ruby syntax highlight problem about the ruby-mode in emacs

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
84849a10335a327937ae3efd872a085e?d=identicon&s=25 Eric Luo (Guest)
on 2006-03-11 04:11
(Received via mailing list)
Hi

I edit ruby script in emacs, but sometimes I just cannot get ruby mode
syntax highlight successfully. I had googled this problem and found
that:
    http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/...
  >I suspect that most font-lock problems like this are caused by the
  >internal use of ruby-mode-hook in ruby-mode.el. Suppose your .emacs
  >file contains

In my case, I had the following settings in my .emacs file.
(desktop-save-mode 1)
(global-font-lock-mode 1)
(setq font-lock-maximum-decoration t)
(setq font-lock-global-modes '(not text-mode))
(setq font-lock-verbose t)

If there is a opened ruby file the last time I exit the emacs, syntax
highlight will not work as expected.

When C-h v ruby-mode-hook to inspect the value of ruby-mode-hook,
I get the following value:

>ruby-mode-hook's value is shown below.
>
>Not documented as a variable.
>
>Value:
>((lambda nil
>   (inf-ruby-keys))
> turn-on-font-lock)

In the opposite, if I start Emacs without an ruby file opened. I will
get the correct ruby-mode-hook value.

>     (setq font-lock-defaults
>  	 '((ruby-font-lock-keywords)
>  	   nil nil))
>     (setq font-lock-keywords ruby-font-lock-keywords)
>     (setq font-lock-syntax-table ruby-font-lock-syntax-table)
>     (setq font-lock-syntactic-keywords ruby-font-lock-syntactic-keywords))
>   (lambda nil
>     (inf-ruby-keys))
>   turn-on-font-lock)

I want to know what make the difference.

BTW, if the enabled the rails-mode, the synatx highlight function
failed, too.



Eric
97653a73674ea9954e4077d6bfbf4709?d=identicon&s=25 Steve Smith (silversys)
on 2006-09-01 20:54
I have the same problem.

I have the following files in my site-lisp folder:

C:\emacs\site-lisp\find-recursive.el
C:\emacs\site-lisp\psvn.el
C:\emacs\site-lisp\snippet.el
C:\emacs\site-lisp\subdirs.el
C:\emacs\site-lisp\emacs-rails\ChangeLog
C:\emacs\site-lisp\emacs-rails\rails-core.el
C:\emacs\site-lisp\emacs-rails\rails-for-controller.el
C:\emacs\site-lisp\emacs-rails\rails-for-layout.el
C:\emacs\site-lisp\emacs-rails\rails-for-rhtml.el
C:\emacs\site-lisp\emacs-rails\rails-lib.el
C:\emacs\site-lisp\emacs-rails\rails-navigation.el
C:\emacs\site-lisp\emacs-rails\rails-ruby.el
C:\emacs\site-lisp\emacs-rails\rails-scripts.el
C:\emacs\site-lisp\emacs-rails\rails-ui.el
C:\emacs\site-lisp\emacs-rails\rails-webrick.el
C:\emacs\site-lisp\emacs-rails\rails.el
C:\emacs\site-lisp\emacs-rails\README
C:\emacs\site-lisp\ruby\inf-ruby.el
C:\emacs\site-lisp\ruby\README
C:\emacs\site-lisp\ruby\ruby-electric.el
C:\emacs\site-lisp\ruby\ruby-mode.el
C:\emacs\site-lisp\ruby\rubydb2x.el
C:\emacs\site-lisp\ruby\rubydb3x.el

And here is my .emacs file:

(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(cua-mode t nil (cua-base))
 '(debug-on-error t)
 '(global-font-lock-mode t nil (font-core))
 '(show-paren-mode nil)
 '(transient-mark-mode t))
(custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 )

  ;;(autoload 'ruby-mode "ruby-mode" "Load ruby-mode")
  ;;(add-to-list 'auto-mode-alist '("\\.rb$" . ruby-mode))
  ;; uncomment the next line if you want syntax highlighting
  ;;(add-hook 'ruby-mode-hook 'turn-on-font-lock)

    (defun try-complete-abbrev (old)
   (if (expand-abbrev) t nil))

  (setq hippie-expand-try-functions-list
       '(try-complete-abbrev
         try-complete-file-name
         try-expand-dabbrev))

  (require 'rails)
This topic is locked and can not be replied to.