Subject: 24.4.50; [ruby-mode] Font lock more methods from Module as built-in

From: Bozhidar Batsov <[email-masked]>
Date: Mon, 07 Apr 2014 15:27:48 +0300

The following 4 methods Module methods should be font-locked as built-in:

private_class_method
private_constant
public_class_method
public_constant

They were all added in 1.9.3 and are useful when dealing with lots of class
methods. Unlike `private` and friends, they always require an argument:

class SimpleSingleton
  private_class_method :new
  def SimpleSingleton.create(*args, &block)
    @me = new(*args, &block) if ! @me
    @me
  end
end

In GNU Emacs 24.4.50.1 (x86_64-apple-darwin13.1.0, NS apple-appkit-1265.19)
 of 2014-03-29 on Bozhidars-MacBook-Pro.local
Windowing system distributor `Apple', version 10.3.1265
Configured using:
 `configure --prefix=/usr/local/Cellar/emacs/HEAD --without-dbus
 --enable-locallisppath=/usr/local/share/emacs/site-lisp
 --infodir=/usr/local/Cellar/emacs/HEAD/share/info/emacs
 --without-gnutls --with-ns --disable-ns-self-contained'

Configured features:
ACL LIBXML2 ZLIB

Important settings:
  locale-coding-system: utf-8-unix

Major mode: EL

Minor modes in effect:
  magit-auto-revert-mode: t
  diff-auto-refine-mode: t
  rainbow-mode: t
  rainbow-delimiters-mode: t
  elisp-slime-nav-mode: t
  guru-mode: t
  erc-truncate-mode: t
  erc-spelling-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  which-function-mode: t
  flx-ido-mode: t
  ido-ubiquitous-mode: t
  winner-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  eldoc-mode: t
  whitespace-mode: t
  global-anzu-mode: t
  anzu-mode: t
  projectile-global-mode: t
  projectile-mode: t
  flyspell-mode: t
  shell-dirtrack-mode: t
  volatile-highlights-mode: t
  global-hl-line-mode: t
  recentf-mode: t
  savehist-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-strict-mode: t
  smartparens-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  prelude-global-mode: t
  prelude-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-n M-w C-x o C-x g l l <wheel-down> <wheel-down> <wheel-down> 
<double-wheel-down> <wheel-down> <double-wheel-down> 
q C-x o C-x g C-s r u b y - m o d e C-l C-p C-a s s 
c c C-y M-y C-k C-p C-p C-p C-SPC C-f C-f C-b C-n C-n 
C-x r d C-p C-p C-f C-f l i s p / C-e C-n C-n C-c C-c 
P P F F <help-echo> <down-mouse-1> <mouse-1> <down-mouse-1> 
<mouse-1> P P <down-mouse-1> <mouse-1> C-x o M-< C-s 
c h a n g e l o g C-s C-g C-g <down-mouse-1> <mouse-1> 
C-x b c h a n g e <return> <down-mouse-1> <mouse-1> 
<down-mouse-1> <mouse-1> C-v C-v C-v M-< C-s j a v 
a C-l C-s C-s C-l C-s C-s C-l C-s C-s C-g M-< C-s p 
y t h o n C-l C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s 
C-s C-s C-s C-s C-s C-s C-s C-s C-l C-l C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-s C-s C-l C-s C-s C-s C-s C-l C-s C-s C-s 
C-l C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s C-s 
C-s C-l C-s C-s C-s C-s C-s C-s C-s C-l C-s C-s C-s 
C-s C-s C-s C-l C-s C-s C-s C-s C-s C-s C-s C-s C-s 
C-l M-< C-x b r u b y - m o d e <return> C-s p r i 
v a t e C-l C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-a C-a C-SPC C-n C-n C-n C-n M-w M-x e m a c s 
- r e p o <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> r e p o r t - b u g C-r <return>

Recent messages:
Reverting buffer `ChangeLog'.
Reverting buffer `ruby-mode.el'.
Git finished
Mark set
Mark saved where search started [3 times]
Quit
Mark set
Mark saved where search started [9 times]
Mark set
Mark saved where search started

Load-path shadows:
/Users/bozhidar/.emacs.d/elpa/tabulated-list-20120406.2251/tabulated-list hides /usr/local/Cellar/emacs/HEAD/share/emacs/24.4.50/lisp/emacs-lisp/tabulated-list

Features:
(shadow sort emacsbug bug-reference image-mode vc vc-dispatcher rubocop
yaml-mode ace-jump-buffer bs ace-jump-mode hippie-exp debug eieio-opt
speedbar sb-image ezimage dframe cus-start cus-load rect mail-extr
markdown-mode noutline outline mule-util magit-key-mode magit view epa
derived epg epg-config diff-mode git-rebase-mode git-commit-mode server
log-edit message sendmail rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev
mail-utils gmm-utils mailheader pcvs-util misearch multi-isearch ffap
url-parse url-vars slim-mode find-dired add-log cap-words superword
subword ruby-tools inf-ruby ruby-mode-expansions smartparens-ruby
ruby-mode vc-git rainbow-mode color rainbow-delimiters elisp-slime-nav
guru-mode prelude-key-chord key-chord prelude-xml nxml-mode-expansions
html-mode-expansions sgml-mode smartparens-html rng-nxml rng-valid
rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn
nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc
xmltok prelude-web prelude-scss prelude-shell sh-script smie executable
prelude-scheme prelude-ruby prelude-perl prelude-org prelude-js
prelude-erc erc-truncate erc-autoaway erc-spelling erc-notify erc-log
erc-list erc-menu erc-join erc-ring erc-networks erc-pcomplete erc-track
erc-match erc-button erc-fill erc-stamp erc-netsplit erc-goodies erc
erc-backend erc-compat prelude-emacs-lisp prelude-css
prelude-common-lisp slime-autoloads prelude-clojure prelude-lisp
prelude-c prelude-programming flycheck help-mode rx f which-func imenu
prelude-ido smex flx-ido flx ido-ubiquitous warnings ido prelude-osx
exec-path-from-shell prelude-global-keybindings prelude-editor winner
undo-tree diff esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg
eldoc esh-groups eshell esh-module esh-mode esh-util re-builder
whitespace browse-kill-ring midnight ediff-merg ediff-wind ediff-diff
ediff-mult ediff-help ediff-init ediff-util ediff dired-x dired anzu
projectile pkg-info find-func lisp-mnt grep compile s bookmark pp
expand-region text-mode-expansions er-basic-expansions
expand-region-core expand-region-custom flyspell ispell tramp
tramp-compat auth-source gnus-util mm-util mail-prsvr password-cache
tramp-loaddefs trampver shell pcomplete comint ansi-color format-spec
etags ring volatile-highlights hl-line windmove recentf tree-widget
wid-edit savehist saveplace diminish smartparens-config smartparens
autorevert filenotify delsel prelude-mode easy-mmode edmacro kmacro
prelude-core epl advice help-fns pcase dash thingatpt prelude-ui
zenburn-theme prelude-packages finder-inf ack-and-a-half-autoloads
diminish-autoloads erlang-autoloads flx-ido-autoloads eieio byte-opt
bytecomp byte-compile cconv eieio-core grizzl-autoloads
key-chord-autoloads logito-autoloads info easymenu cl-macs gv
rubocop-autoloads volatile-highlights-autoloads yaml-mode-autoloads
package cl cl-loaddefs cl-lib time-date tooltip electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd fontset
image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode
register page menu-bar rfn-eshadow timer select scroll-bar mouse
jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
cocoa ns multi-tty emacs)

Memory information:
((conses 16 812867 578026)
 (symbols 48 44010 0)
 (miscs 40 6357 17305)
 (strings 32 104936 170933)
 (string-bytes 1 3013205)
 (vectors 16 121702)
 (vector-slots 8 4379790 302521)
 (floats 8 25395 9209)
 (intervals 56 25426 3862)
 (buffers 960 119))