lisp/progmodes/prog-mode.el: Force font-lock to deal with `composition' prop.
(prog-prettify-install): Add `composition' to `font-lock-extra-managed-props' if any prettifying keyword is added. (prog--prettify-font-lock-compose-symbol): Use ?\s instead of ?\ . (prog-mode): Use `setq-local'.
This commit is contained in:
parent
db3b7db547
commit
f612933b88
2 changed files with 15 additions and 5 deletions
|
@ -1,3 +1,10 @@
|
|||
2013-06-17 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* progmodes/prog-mode.el (prog-prettify-install): Add `composition' to
|
||||
`font-lock-extra-managed-props' if any prettifying keyword is added.
|
||||
(prog--prettify-font-lock-compose-symbol): Use ?\s instead of ?\ .
|
||||
(prog-mode): Use `setq-local'.
|
||||
|
||||
2013-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* international/characters.el (standard-case-table): Set syntax of ?»
|
||||
|
|
|
@ -76,8 +76,8 @@ Regexp match data 0 points to the chars."
|
|||
(syntaxes (if (eq (char-syntax (char-after start)) ?w)
|
||||
'(?w) '(?. ?\\)))
|
||||
match)
|
||||
(if (or (memq (char-syntax (or (char-before start) ?\ )) syntaxes)
|
||||
(memq (char-syntax (or (char-after end) ?\ )) syntaxes)
|
||||
(if (or (memq (char-syntax (or (char-before start) ?\s)) syntaxes)
|
||||
(memq (char-syntax (or (char-after end) ?\s)) syntaxes)
|
||||
;; syntax-ppss could modify the match data (bug#14595)
|
||||
(progn (setq match (match-string 0)) (nth 8 (syntax-ppss))))
|
||||
;; No composition for you. Let's actually remove any composition
|
||||
|
@ -106,13 +106,16 @@ ALIST is in the format `((STRING . CHARACTER)...)' like
|
|||
Internally, `font-lock-add-keywords' is called."
|
||||
(setq-local prog-prettify-symbols-alist alist)
|
||||
(let ((keywords (prog-prettify-font-lock-symbols-keywords)))
|
||||
(if keywords (font-lock-add-keywords nil keywords))))
|
||||
(when keywords
|
||||
(font-lock-add-keywords nil keywords)
|
||||
(setq-local font-lock-extra-managed-props
|
||||
(cons 'composition font-lock-extra-managed-props)))))
|
||||
|
||||
;;;###autoload
|
||||
(define-derived-mode prog-mode fundamental-mode "Prog"
|
||||
"Major mode for editing programming language source code."
|
||||
(set (make-local-variable 'require-final-newline) mode-require-final-newline)
|
||||
(set (make-local-variable 'parse-sexp-ignore-comments) t)
|
||||
(setq-local require-final-newline mode-require-final-newline)
|
||||
(setq-local parse-sexp-ignore-comments t)
|
||||
;; Any programming language is always written left to right.
|
||||
(setq bidi-paragraph-direction 'left-to-right))
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue