Package: emacs;
Reported by: Mikhail Gusarov <dottedmag <at> dottedmag.net>
Date: Sun, 19 Jan 2014 18:49:02 UTC
Severity: minor
Found in version 24.3.50
To reply to this bug, email your comments to 16500 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#16500
; Package emacs
.
(Sun, 19 Jan 2014 18:49:02 GMT) Full text and rfc822 format available.Mikhail Gusarov <dottedmag <at> dottedmag.net>
:bug-gnu-emacs <at> gnu.org
.
(Sun, 19 Jan 2014 18:49:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Mikhail Gusarov <dottedmag <at> dottedmag.net> To: bug-gnu-emacs <at> gnu.org Subject: 24.3.50; Wrong font-lock backquote highlighting in plan9 rc variant of sh-mode Date: Sat, 18 Jan 2014 10:24:10 +0100
sh-quoted-exec face recognized by rc variant of sh-mode is not terminated at the end of quoted expression. To reproduce this bug, enable the font lock and open the following file in Emacs (alternatively remove {} around foo): ---------------------------------------------------------------------- #!rc `{foo} bar baz ---------------------------------------------------------------------- Check with e.g. what-cursor-position that sh-quoted-exec face is continuing until the end of file, or up to a next ` symbol. sh-quoted-exec face should apply only to the closing } symbol, or, if the word quoted is not bracketed, to the end of word. In GNU Emacs 24.3.50.1 (x86_64-apple-darwin, NS apple-appkit-1038.36) of 2013-11-29 on bob.porkrind.org Bzr revision: eliz <at> gnu.org-20131129085350-6yb2ej3yjpeu2lc6 Windowing system distributor `Apple', version 10.3.1265 Configured using: `configure --host=x86_64-apple-darwin --build=i686-apple-darwin --with-ns' Important settings: locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: IBuffer Minor modes in effect: global-whitespace-mode: t diff-auto-refine-mode: t shell-dirtrack-mode: t which-function-mode: t global-auto-revert-mode: t tooltip-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: <C-home> <down> C-s a b a n d o n e d C-a M-< C-s m o z - c o l u m n C-a C-x C-s C-r s <backspace> f o n t C-r C-a C-p C-p C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x k C-g g C-x k C-g C-n d d C-p x y C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-x C-f C-f t m <tab> p a c <tab> <tab> <return> M-q g r e p - f i n d <return> S S H <return> C-. C-n C-n C-s A g e C-a C-s P a s s w o r d C-s C-s C-b <return> C-a C-x 1 <next> <next> <next> <C-end> <C-home> <C-end> C-x k <return> g C-x k <return> C-x C-f C-f C-g C-x k <return> C-x k <return> C-x k <return> C-x k <return> C-M-s g C-n C-n C-p C-p C-n C-n C-p C-p C-n d x y C-x b SPC SPC C-f C-g C-x b <tab> <tab> C-g C-x C-f C-f C-e <M-backspace> <M-backspace> w / i <return> g C-_ C-x k <return> C-x C-f C-f <M-backspace> <M-backspace> w <return> M-q x <return> g C-s i C-b C-n C-n C-n C-n C-n C-n C-n <return> g C-s t e s t C-b <return> <return> <return> <C-end> C-r i n s t a l l C-a C-p C-p C-p C-p C-r p k g s e l C-a C-g C-x k <return> g C-x k <return> C-x k <return> C-x k <return> C-x k <return> g M-q r e p r <backspace> o r t SPC e m a c s SPC b u g <return> Recent messages: Omitting... (Nothing to omit) Omitting... Omitted 2 lines. Mark set Mark saved where search started [2 times] Quit Omitting... Omitted 2 lines. Updating buffer list...done Load-path shadows: /Users/dottedmag/.emacs.d/el-get/org-mode/.dir-locals hides /Users/dottedmag/.emacs.d/el-get/flycheck/.dir-locals /Users/dottedmag/.emacs.d/el-get/org-mode/.dir-locals hides /Users/dottedmag/.emacs.d/el-get/el-get/.dir-locals /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-texinfo hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-texinfo /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-publish hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-publish /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-org hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-org /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-odt hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-odt /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-md hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-md /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-man hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-man /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-latex hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-latex /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-icalendar hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-icalendar /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-html hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-html /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-beamer hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-beamer /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ox-ascii hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-ascii /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org hides /Applications/Emacs.app/Contents/Resources/lisp/org/org /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-w3m hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-w3m /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-version hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-version /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-timer hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-timer /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-table hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-table /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-src hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-src /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-rmail hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-rmail /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-protocol hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-protocol /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-plot hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-plot /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-pcomplete hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-pcomplete /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-mouse hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mouse /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-mobile hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mobile /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-mhe hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mhe /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-macs hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-macs /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-macro hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-macro /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-loaddefs hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-loaddefs /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-list hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-list /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-irc hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-irc /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-install hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-install /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-inlinetask hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-inlinetask /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-info hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-info /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-indent hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-indent /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-id hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-id /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-habit hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-habit /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-gnus hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-gnus /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-footnote hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-footnote /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-feed hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-feed /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-faces hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-faces /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-eshell hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-eshell /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-entities hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-entities /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-element hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-element /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-docview hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-docview /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-datetree hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-datetree /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-ctags hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-ctags /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-crypt hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-crypt /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-compat hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-compat /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-colview hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-colview /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-clock hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-clock /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-capture hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-capture /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-bibtex hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bibtex /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-bbdb hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bbdb /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-attach hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-attach /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-archive hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-archive /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/org-agenda hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-agenda /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-tangle hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-tangle /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-table hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-table /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-sqlite hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sqlite /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-sql hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sql /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-shen hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-shen /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-sh hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sh /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-screen hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-screen /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-scheme hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-scheme /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-scala hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-scala /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-sass hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sass /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-ruby hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ruby /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-ref hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ref /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-R hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-R /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-python hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-python /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-plantuml hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-plantuml /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-picolisp hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-picolisp /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-perl hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-perl /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-org hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-org /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-octave hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-octave /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-ocaml hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ocaml /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-mscgen hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-mscgen /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-maxima hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-maxima /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-matlab hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-matlab /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-makefile hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-makefile /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-lob hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lob /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-lisp hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lisp /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-lilypond hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lilypond /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-ledger hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ledger /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-latex hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-latex /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-keys hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-keys /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-js hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-js /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-java hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-java /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-io hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-io /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-haskell hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-haskell /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-gnuplot hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-gnuplot /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-fortran hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-fortran /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-exp hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-exp /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-eval hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-eval /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-emacs-lisp hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-emacs-lisp /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-dot hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-dot /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-ditaa hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ditaa /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-css hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-css /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-core hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-core /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-comint hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-comint /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-clojure hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-clojure /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-calc hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-calc /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-C hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-C /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-awk hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-awk /Users/dottedmag/.emacs.d/el-get/org-mode/lisp/ob-asymptote hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-asymptote /Users/dottedmag/.emacs.d/el-get/org-mode/.dir-locals hides /Applications/Emacs.app/Contents/Resources/lisp/gnus/.dir-locals Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mail-utils ispell disp-table whitespace thai-util thai-word lao-util view mule-util vc-arch vc-hg vc-bzr vc-sccs vc-svn vc-rcs debug cus-start cus-load ibuf-ext ibuffer grep sgml-mode diff-mode log-edit pcvs-util vc vc-dispatcher novice tabify nroff-mode cc-langs tex-mode latexenc make-mode perl-mode tramp-cache haskell-font-lock haskell-doc inf-haskell haskell-cabal haskell-utils haskell-decl-scan haskell-indentation haskell-mode haskell-string haskell-sort-imports haskell-align-imports flymake compile dabbrev sh-script executable epa-file epa epg epg-config org-element org-indent org-rmail org-mhe org-irc org-info org-gnus org-docview doc-view jka-compr image-mode org-bibtex bibtex org-bbdb org-w3m js json thingatpt css-mode smie xterm misearch multi-isearch add-log vc-git dired-aux vc-mcvs vc-cvs 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 avoid woman man tramp tramp-compat auth-source eieio eieio-core gnus-util mm-util mail-prsvr password-cache tramp-loaddefs trampver shell python rx which-func imenu cperl-mode org-mobile org-agenda org byte-opt advice org-macro org-footnote org-pcomplete pcomplete org-list org-faces org-entities noutline outline easy-mmode org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs org-install ido paren server haskell-mode-autoloads s .loaddefs el-get cl-macs gv el-get-autoloads el-get-list-packages el-get-notify help-mode el-get-dependencies el-get-build el-get-status pp el-get-recipes el-get-byte-compile el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg el-get-git-svn el-get-fink el-get-emacswiki el-get-http el-get-emacsmirror el-get-github el-get-git el-get-elpa package el-get-darcs el-get-cvs el-get-bzr el-get-brew el-get-builtin el-get-apt-get el-get-custom el-get-core autoload help-fns lisp-mnt bytecomp byte-compile cconv cl autorevert filenotify edmacro kmacro cl-loaddefs cl-lib edje-mode derived dired-x dired cfengine-code-style cc-mode cc-fonts easymenu cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs time-date tooltip 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)
bug-gnu-emacs <at> gnu.org
:bug#16500
; Package emacs
.
(Wed, 30 Oct 2019 13:56:02 GMT) Full text and rfc822 format available.Message #8 received at 16500 <at> debbugs.gnu.org (full text, mbox):
From: Lars Ingebrigtsen <larsi <at> gnus.org> To: Mikhail Gusarov <dottedmag <at> dottedmag.net> Cc: 16500 <at> debbugs.gnu.org Subject: Re: 24.3.50; Wrong font-lock backquote highlighting in plan9 rc variant of sh-mode Date: Wed, 30 Oct 2019 14:55:18 +0100
Mikhail Gusarov <dottedmag <at> dottedmag.net> writes: > sh-quoted-exec face recognized by rc variant of sh-mode is not > terminated at the end of quoted expression. To reproduce this bug, > enable the font lock and open the following file in Emacs > (alternatively remove {} around foo): > ---------------------------------------------------------------------- > #!rc > > `{foo} bar > baz > ---------------------------------------------------------------------- > > Check with e.g. what-cursor-position that sh-quoted-exec face is > continuing until the end of file, or up to a next ` symbol. > > sh-quoted-exec face should apply only to the closing } symbol, or, > if the word quoted is not bracketed, to the end of word. The problem here seems to be that ` is defined in the syntax table to be a quote character, so `parse-partial-sexp` will skip to the end of the buffer (or the next ` character) in font-lock-fontify-syntactically-region. I'm trying to familiarise myself with how font locking is supposed to work -- anybody know what I should be poking into to get this to work better? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no
bug-gnu-emacs <at> gnu.org
:bug#16500
; Package emacs
.
(Sat, 03 Sep 2022 08:23:02 GMT) Full text and rfc822 format available.Message #11 received at 16500 <at> debbugs.gnu.org (full text, mbox):
From: Vasilij Schneidermann <mail <at> vasilij.de> To: 16500 <at> debbugs.gnu.org Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, Mikhail Gusarov <dottedmag <at> dottedmag.net> Subject: Re: 24.3.50; Wrong font-lock backquote highlighting in plan9 rc Date: Sat, 3 Sep 2022 10:22:13 +0200
[Message part 1 (text/plain, inline)]
I've run into this bug while switching all my sh/bash scripts to rc and used the following workaround: (defun my-sh-set-shell-hook () (when (member sh-shell '(rc es)) (modify-syntax-entry ?` "."))) (add-hook 'sh-set-shell-hook 'my-sh-set-shell-hook) I doubt this warrants inclusion into sh-script.el as is, but should demonstrate a possible approach how to fix it.
[signature.asc (application/pgp-signature, inline)]
bug-gnu-emacs <at> gnu.org
:bug#16500
; Package emacs
.
(Sat, 03 Sep 2022 10:03:01 GMT) Full text and rfc822 format available.Message #14 received at 16500 <at> debbugs.gnu.org (full text, mbox):
From: Lars Ingebrigtsen <larsi <at> gnus.org> To: Vasilij Schneidermann <mail <at> vasilij.de> Cc: Mikhail Gusarov <dottedmag <at> dottedmag.net>, 16500 <at> debbugs.gnu.org Subject: Re: bug#16500: 24.3.50; Wrong font-lock backquote highlighting in plan9 rc Date: Sat, 03 Sep 2022 12:02:15 +0200
Vasilij Schneidermann <mail <at> vasilij.de> writes: > I've run into this bug while switching all my sh/bash scripts to rc and > used the following workaround: > > (defun my-sh-set-shell-hook () > (when (member sh-shell '(rc es)) > (modify-syntax-entry ?` "."))) > > (add-hook 'sh-set-shell-hook 'my-sh-set-shell-hook) > > I doubt this warrants inclusion into sh-script.el as is, but should > demonstrate a possible approach how to fix it. But we want the {...} to be fontified as a quoted-exec, so I think the correct fix here is to make { } be a pair after ` in the rc version? That is, tweak this: (defun sh-font-lock-syntactic-face-function (state) (let ((q (nth 3 state))) (if q (if (characterp q) (if (eq q ?\`) 'sh-quoted-exec font-lock-string-face) 'sh-heredoc) font-lock-comment-face))) Possibly...
Lars Ingebrigtsen <larsi <at> gnus.org>
to control <at> debbugs.gnu.org
.
(Sat, 03 Sep 2022 10:03:02 GMT) Full text and rfc822 format available.Stefan Kangas <stefankangas <at> gmail.com>
to control <at> debbugs.gnu.org
.
(Wed, 10 Jan 2024 11:04:01 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.