Package: emacs;
Reported by: Bozhidar Batsov <bozhidar.batsov <at> gmail.com>
Date: Sun, 8 Jun 2014 06:26:02 UTC
Severity: wishlist
Found in version 24.4.50
Fixed in versions 25.1, 24.5
Done: Dmitry Gutov <dgutov <at> yandex.ru>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Bozhidar Batsov <bozhidar.batsov <at> gmail.com> To: 17733 <at> debbugs.gnu.org Subject: bug#17733: 24.4.50; [ruby-mode] Font-locking of true, false and nil Date: Sun, 08 Jun 2014 09:25:08 +0300
We've discussed with Dmitry before that the current use of font-lock-variable-name-face for things like `true`, `false` and `nil` is not correct semantically. Technically those are keywords in Ruby, but they are also constants (singleton instances of TrueClass, FalseClass, NilClass). In this respect they share a lot with symbols and I suggest using the `font-lock-constant-face` for them as well. I noticed that this is a practice adopted in several modes (rust-mode, swift-mode, clojure-mode, etc) and it seems pretty sensible to me. In GNU Emacs 24.4.50.1 (x86_64-apple-darwin13.1.0, NS apple-appkit-1265.19) of 2014-04-11 on bozhidar-mini.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 --with-gnutls --with-ns --disable-ns-self-contained' Configured features: ACL GNUTLS LIBXML2 ZLIB Important settings: locale-coding-system: utf-8-unix Major mode: Outline Minor modes in effect: goto-address-mode: t magit-auto-revert-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 which-function-mode: t global-company-mode: t company-mode: t flx-ido-mode: t ido-ubiquitous-mode: t global-diff-hl-mode: t diff-hl-mode: t diff-auto-refine-mode: t winner-mode: t global-undo-tree-mode: t undo-tree-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 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 buffer-read-only: t size-indication-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t view-mode: t Recent input: M-< C-v C-n C-n C-n C-n C-n C-k <backspace> C-x C-s C-x g C-n d <return> <down-mouse-1> <mouse-1> q s c c R e m o v e SPC r e d u n d a t n SPC <backspace> <backspace> <backspace> n t SPC r e q u i r e <return> <return> C-' e <backspace> <return> e a s y - m e n u s-/ SPC i s SPC a u t o l o a d e d . <backspace> . C-c C-c P P <wheel-down> <double-wheel-down> <triple-wheel-down> <triple-wheel-down> <triple-wheel-down> <triple-wheel-down> <triple-wheel-down> <triple-wheel-down> <wheel-down> <double-wheel-down> <triple-wheel-down> <triple-wheel-down> <triple-wheel-down> <wheel-down> <double-wheel-down> <down-mouse-1> <mouse-1> s-g f o n t <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> <backspace> f o n t - l o c k - c o m m e n t <return> <help-echo> <down-mouse-2> <mouse-1> <help-echo> <down-mouse-2> <mouse-1> C-l <help-echo> <down-mouse-2> <mouse-1> <help-echo> <down-mouse-2> <mouse-1> <clear> <kp-multiply> <kp-subtract> <clear> <f13> <backspace> <help> C-p <clear> <kp-divide> <kp-1> <kp-5> <kp-7> <kp-0> <kp-multiply> <kp-8> <kp-divide> <kp-1> <kp-9> <kp-0> <kp-divide> <kp-8> <clear> <backspace> <f13> <help> <f10> = <f9> - <f8> <f7> <f6> <f5> <f4> <f6> <f7> <f8> ) _ <S-f9> <S-f10> <C-S-backspace> C-+ <C-S-f11> <S-help> <S-left> <backspace> <kp-subtract> <kp-subtract> <kp-multiply> <kp-enter> <kp-decimal> <escape> ` 1 2 <f1> 3 4 5 6 7 <f5> 8 9 - <f9> <backspace> = <prior> <kp-add> <kp-enter> <kp-enter> s-8 s-u 1 <escape> ` <tab> <down-mouse-2> <mouse-1> <help-echo> <help-echo> <help-echo> <down-mouse-1> <mouse-1> C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p M-f M-f M-b M-b C-b C-b C-b C-f C-f C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p 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 M-x M-< C-g <help-echo> <help-echo> <down-mouse-1> <mouse-1> M-x r e p o r t <return> Recent messages: [2014-06-08 01:00:09] `*magit-commit*' [42004 259200] [2014-06-08 01:00:09] `*Help*' [40565 3600] [2014-06-08 01:00:09] killing `*Help*' [2014-06-08 01:00:09] `*magit-log*' [40742 259200] [2014-06-08 01:00:09] `*magit-diff*' [40520 259200] [2014-06-08 01:00:09] `*Completions*' [39683 259200] (No files need saving) completing-read-default: Command attempted to use minibuffer while in minibuffer Quit (No files need saving) Load-path shadows: /Users/bozhidar/.emacs.d/elpa/tabulated-list-20120406.1351/tabulated-list hides /usr/local/Cellar/emacs/HEAD/share/emacs/24.4.50/lisp/emacs-lisp/tabulated-list Features: (tmm face-remap goto-addr crm clojure-test-mode cider-interaction arc-mode archive-mode cider-stacktrace cider-client nrepl-client cider-util clojure-mode-test clojure-mode-expansions clojure-mode inf-lisp find-dired cus-edit cus-start cus-load shadow sort mail-extr emacsbug sendmail jka-compr ielm cap-words superword subword ruby-tools inf-ruby ruby-mode-expansions smartparens-ruby ruby-mode eieio-opt speedbar sb-image ezimage dframe checkdoc hippie-exp make-mode ffap markdown-mode noutline outline mule-util misearch multi-isearch magit-key-mode magit view epa derived epg epg-config git-rebase-mode git-commit-mode server log-edit pcvs-util add-log easy-kill rainbow-mode color rainbow-delimiters elisp-slime-nav guru-mode 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-shell sh-script smie executable prelude-scss prelude-scheme prelude-ruby prelude-perl prelude-org prelude-key-chord key-chord 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-coffee prelude-clojure prelude-lisp prelude-c prelude-programming flycheck help-mode rx f which-func imenu prelude-company company-files company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-capf company-cmake company-ropemacs company-xcode company-clang company-semantic company-eclim company-template company-css company-nxml company-bbdb company prelude-ido smex flx-ido flx ido-ubiquitous ido prelude-osx exec-path-from-shell prelude-global-keybindings prelude-editor operate-on-number diff-hl vc-dir vc vc-dispatcher diff-mode 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 anzu projectile ibuf-ext ibuffer pkg-info grep s bookmark pp expand-region text-mode-expansions er-basic-expansions expand-region-core expand-region-custom flyspell ispell tramp tramp-compat tramp-loaddefs trampver shell pcomplete etags volatile-highlights hl-line windmove recentf tree-widget wid-edit savehist saveplace diminish smartparens-config smartparens autorevert filenotify delsel prelude-mode easy-mmode prelude-core epl pcase ov dash thingatpt prelude-custom prelude-ui zenburn-theme prelude-packages smartrep ert find-func ewoc debug tar-mode calc-bin calc-ext calc calc-loaddefs calc-macs makey edmacro kmacro warnings compile comint ansi-color ring ace-window ace-jump-mode advice autoload lisp-mnt vc-git mm-archive message dired format-spec rfc822 mml mml-sec mailabbrev gmm-utils mailheader mm-decode mm-bodies mm-encode mail-utils network-stream starttls url-http tls mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw url-cache url-auth url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap url-handlers url-parse auth-source gnus-util mm-util help-fns mail-prsvr password-cache url-vars finder-inf eieio byte-opt bytecomp byte-compile cconv eieio-core info easymenu cl-macs gv 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 756046 603398) (symbols 48 50210 0) (miscs 40 5655 16177) (strings 32 118000 172997) (string-bytes 1 3236489) (vectors 16 107877) (vector-slots 8 3572504 257945) (floats 8 19156 7566) (intervals 56 39577 4539) (buffers 960 139))
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.