syntax highlight problem about the ruby-mode in emacs

Discussion in 'Ruby' started by Eric Luo, Mar 11, 2006.

  1. Eric Luo

    Eric Luo Guest

    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/ruby-talk/131654
    >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.

    > ruby-mode-hook's value is shown below.
    >
    > Not documented as a variable.
    >
    > Value:
    > ((lambda nil
    > (make-local-variable 'font-lock-defaults)
    > (make-local-variable 'font-lock-keywords)
    > (make-local-variable 'font-lock-syntax-table)
    > (make-local-variable 'font-lock-syntactic-keywords)
    > (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
     
    Eric Luo, Mar 11, 2006
    #1
    1. Advertising

  2. Eric Luo

    Steve Smith Guest

    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)

    --
    Posted via http://www.ruby-forum.com/.
     
    Steve Smith, Sep 1, 2006
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Jeffrey Moss

    eruby mode emacs with mmm-mode

    Jeffrey Moss, Jul 6, 2005, in forum: Ruby
    Replies:
    1
    Views:
    151
    Alan Chen
    Jul 6, 2005
  2. Replies:
    2
    Views:
    146
    Phillip Gawlowski
    Apr 9, 2007
  3. PerlFAQ Server
    Replies:
    1
    Views:
    197
    Marc Girod
    Jan 8, 2011
  4. PerlFAQ Server
    Replies:
    0
    Views:
    168
    PerlFAQ Server
    Apr 12, 2011
  5. Replies:
    1
    Views:
    139
    Andrew Pennebaker
    Nov 12, 2013
Loading...

Share This Page