GNU bug report logs - #16914
24.3.50; [ruby-mode] Regexp literal modifiers are not font-locked

Previous Next

Package: emacs;

Reported by: Bozhidar Batsov <bozhidar <at> batsov.com>

Date: Sat, 1 Mar 2014 13:29:01 UTC

Severity: minor

Found in version 24.3.50

Fixed in version 24.4

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#16914: closed (24.3.50; [ruby-mode] Regexp literal modifiers
 are not font-locked)
Date: Sat, 01 Mar 2014 22:07:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 02 Mar 2014 00:06:19 +0200
with message-id <8738j1po9w.fsf <at> yandex.ru>
and subject line Re: bug#16914: 24.3.50; [ruby-mode] Regexp literal modifiers are not font-locked
has caused the debbugs.gnu.org bug report #16914,
regarding 24.3.50; [ruby-mode] Regexp literal modifiers are not font-locked
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
16914: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16914
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Bozhidar Batsov <bozhidar <at> batsov.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3.50; [ruby-mode] Regexp literal modifiers are not font-locked
Date: Sat, 01 Mar 2014 15:28:19 +0200
In a simple regexp like:

/something/i
%r{test}i

the trailing 'i' is not font-locked. Most editor/IDEs font-lock the
modifiers. I'd suggest the use of a different face than the string face
used for the literal itself, but even it would be an improvement. I also
think
that only valid modifiers should be font-locked.



In GNU Emacs 24.3.50.1 (x86_64-apple-darwin13.0.0, NS apple-appkit-1265.00)
 of 2014-01-27 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'

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

Major mode: Ruby

Minor modes in effect:
  ruby-tools-mode: t
  inf-ruby-minor-mode: t
  diff-auto-refine-mode: t
  subword-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
  whitespace-mode: t
  global-anzu-mode: t
  anzu-mode: t
  projectile-global-mode: t
  projectile-mode: t
  flyspell-mode: t
  volatile-highlights-mode: t
  global-hl-line-mode: t
  shell-dirtrack-mode: t
  recentf-mode: t
  savehist-mode: t
  show-smartparens-global-mode: t
  show-smartparens-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:
o <backspace> <backspace> <backspace> i o s <return>
g e m <return> C-x g C-n C-n C-n C-n C-n d <return>
<wheel-down> <double-wheel-down> <wheel-down> <double-wheel-down>
<triple-wheel-down> <wheel-down> <wheel-down> <double-wheel-down>
<wheel-down> <double-wheel-down> <triple-wheel-down>
<down-mouse-1> <mouse-1> q <help-echo> <down-mouse-1>
<mouse-1> C-x o C-u S c c F i x SPC a SPC b u n c h
SPC o f SPC c o m p i l a t i o n SPC w a r n i n g
s C-c C-c P P <help-echo> <down-mouse-1> <mouse-1>
C-x g C-n d <return> <wheel-down> <wheel-down> <double-wheel-down>
<triple-wheel-down> <wheel-down> <double-wheel-down>
<wheel-down> <double-wheel-down> <triple-wheel-down>
<triple-wheel-down> <triple-wheel-down> <wheel-up>
<double-wheel-up> <down-mouse-1> <mouse-1> q <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> d <return>
<wheel-down> <double-wheel-down> <triple-wheel-down>
<triple-wheel-down> <triple-wheel-down> <triple-wheel-down>
<wheel-up> <double-wheel-up> <triple-wheel-up> <triple-wheel-up>
<wheel-up> <down-mouse-1> <mouse-1> q C-u S c c S i
m p l i f y SPC s o m e SPC c o e e SPC <backspace>
<backspace> <backspace> d e SPC b y SPC u s i n g SPC
m o r e SPC m o d e r n SPC c o n v e n t i o n s M-b
M-b M-b M-d C-d C-e C-c C-c P P l l q <help-echo> <help-echo>
<wheel-right> <double-wheel-right> <triple-wheel-right>
<triple-wheel-right> <wheel-up> <wheel-right> <double-wheel-right>
<triple-wheel-right> <triple-wheel-right> <triple-wheel-right>
<triple-wheel-right> <triple-wheel-right> <triple-wheel-right>
<triple-wheel-right> <triple-wheel-right> <triple-wheel-right>
<triple-wheel-right> <triple-wheel-right> <down-mouse-1>
<mouse-1> C-x b t e s t . <return> <return> <return>
C-y C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-n C-n
<return> <return> C-p C-p C-f C-p x C-s <backspace>
<backspace> C-g <backspace> C-x C-s C-p C-p C-p C-p
C-p C-p C-k C-x C-s C-n C-n C-n C-n C-n C-n C-e <return>
<return> t o p SPC = SPC / s h i t / i C-p C-p C-p
<help-echo> <down-mouse-1> <mouse-1> M-x <return>

Recent messages:
1 trailing blank lines detected.
Quit
Saving file /Users/bozhidar/projects/test.rb...
Wrote /Users/bozhidar/projects/test.rb
Useless assignment to variable - regexp [2 times]
Saving file /Users/bozhidar/projects/test.rb...
Wrote /Users/bozhidar/projects/test.rb
Auto-saving...done
Saving file /Users/bozhidar/projects/test.rb...
Wrote /Users/bozhidar/projects/test.rb

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

Features:
(shadow sort mail-extr emacsbug vc-annotate vc vc-dispatcher nxml-uchnm
rng-xsd xsd-regexp rng-cmpct edebug crm ielm hippie-exp markdown-mode
noutline outline gitignore-mode conf-mode yaml-mode ace-jump-mode ffap
url-parse url-vars ruby-tools inf-ruby ruby-mode-expansions
smartparens-ruby ruby-mode smie misearch multi-isearch jka-compr
eieio-opt speedbar sb-image ezimage dframe mule-util find-dired
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
add-log executable vc-git lisp-mnt network-stream starttls tls cider
cider-mode cider-repl cider-eldoc clojure-test-mode cider-interaction
arc-mode archive-mode cider-client nrepl-client cider-util ewoc
superword subword clojure-mode-expansions clojure-mode inf-lisp
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-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 grep compile s bookmark pp expand-region text-mode-expansions
er-basic-expansions expand-region-core expand-region-custom flyspell
ispell etags volatile-highlights hl-line windmove tramp-cache tramp-sh
tramp tramp-compat auth-source gnus-util mm-util mail-prsvr
password-cache tramp-loaddefs trampver shell pcomplete comint ansi-color
ring format-spec 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
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 move-text-autoloads pkg-info-autoloads puppet-mode-autoloads
rainbow-delimiters-autoloads request-autoloads 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)


[Message part 3 (message/rfc822, inline)]
From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Bozhidar Batsov <bozhidar <at> batsov.com>
Cc: 16914-done <at> debbugs.gnu.org
Subject: Re: bug#16914: 24.3.50;
 [ruby-mode] Regexp literal modifiers are not font-locked
Date: Sun, 02 Mar 2014 00:06:19 +0200
Version: 24.4

Bozhidar Batsov <bozhidar <at> batsov.com> writes:

> In a simple regexp like:
>
> /something/i
> %r{test}i
>
> the trailing 'i' is not font-locked. Most editor/IDEs font-lock the
> modifiers. I'd suggest the use of a different face than the string face
> used for the literal itself, but even it would be an improvement. I also
> think
> that only valid modifiers should be font-locked.

Added in 116626.


This bug report was last modified 11 years and 79 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.