]> code.delx.au - gnu-emacs/commitdiff
* lisp/font-lock.el (font-lock-flush, font-lock-ensure): New functions.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 29 May 2014 03:45:29 +0000 (23:45 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 29 May 2014 03:45:29 +0000 (23:45 -0400)
(font-lock-fontify-buffer): Mark interactive-only.
(font-lock-multiline, font-lock-fontified, font-lock-set-defaults):
Make buffer-local.
(font-lock-specified-p): Remove redundant boundp check.
(font-lock-flush-function, font-lock-ensure-function): New vars.
(font-lock-turn-on-thing-lock): Set them.
(font-lock-default-fontify-buffer): Obey font-lock-dont-widen.
(font-lock-after-change-function): Make `old-len' optional.
(font-lock-set-defaults): Remove redundant `set' of font-lock-defaults.
Call font-lock-flush, just in case.
* lisp/progmodes/verilog-mode.el (verilog-preprocess): Disable workaround in
recent Emacsen.
* lisp/progmodes/vera-mode.el (vera-fontify-buffer): Declare obsolete.
(vera-mode-map, vera-mode-menu): Remove bindings to it.
* lisp/progmodes/idlw-help.el (idlwave-help-fontify): Use font-lock-ensure
and with-syntax-table.
* lisp/textmodes/conf-mode.el (conf-quote-normal):
* lisp/progmodes/sh-script.el (sh-set-shell):
* lisp/progmodes/prog-mode.el (prettify-symbols-mode):
* lisp/progmodes/f90.el (f90-font-lock-n):
* lisp/progmodes/cwarn.el (cwarn-mode):
* lisp/nxml/nxml-mode.el (nxml-toggle-char-ref-extra-display):
* lisp/progmodes/compile.el (compilation-setup, compilation--unsetup):
* lisp/hi-lock.el (hi-lock-mode, hi-lock-unface-buffer)
(hi-lock-set-pattern, hi-lock-set-file-patterns): Use font-lock-flush.
* lisp/mail/rmail.el (rmail-variables): Set font-lock-dont-widen instead of
font-lock-fontify-buffer-function and
font-lock-unfontify-buffer-function.
(rmail-unfontify-buffer-function, rmail-fontify-message):
Use with-silent-modifications.
* lisp/htmlfontify.el (hfy-force-fontification): Use jit-lock-fontify-now
and font-lock-ensure.
* lisp/bs.el (bs-show-in-buffer): Use font-lock-ensure.
* lisp/gnus/mm-view.el (mm-display-inline-fontify): Use font-lock-ensure.
* lisp/gnus/gnus-cite.el (gnus-message-citation-mode): Use font-lock-flush.
* lisp/org/org-compat.el (org-font-lock-ensure): New function.
* lisp/org/ox-odt.el (org-odt-do-format-code):
* lisp/org/ox-html.el (org-html-fontify-code):
* lisp/org/org.el (org-fontify-like-in-org-mode):
* lisp/org/org-src.el (org-src-font-lock-fontify-block):
* lisp/org/org-clock.el (org-clock-get-clocktable): Use it.
* lisp/org/ox-org.el (org-org-publish-to-org): Use it.  Avoid using find-file
from Elisp.
* test/automated/ruby-mode-tests.el (ruby-assert-face): Use font-lock-ensure.
(ruby-interpolation-keeps-non-quote-syntax): Use syntax-propertize.

33 files changed:
etc/NEWS
lisp/ChangeLog
lisp/bs.el
lisp/calendar/calendar.el
lisp/font-lock.el
lisp/gnus/ChangeLog
lisp/gnus/gnus-cite.el
lisp/gnus/mm-view.el
lisp/hi-lock.el
lisp/htmlfontify.el
lisp/jit-lock.el
lisp/mail/rmail.el
lisp/nxml/nxml-mode.el
lisp/org/ChangeLog
lisp/org/org-clock.el
lisp/org/org-compat.el
lisp/org/org-src.el
lisp/org/org.el
lisp/org/ox-html.el
lisp/org/ox-odt.el
lisp/org/ox-org.el
lisp/progmodes/compile.el
lisp/progmodes/cwarn.el
lisp/progmodes/f90.el
lisp/progmodes/idlw-help.el
lisp/progmodes/prog-mode.el
lisp/progmodes/prolog.el
lisp/progmodes/sh-script.el
lisp/progmodes/vera-mode.el
lisp/progmodes/verilog-mode.el
lisp/textmodes/conf-mode.el
test/ChangeLog
test/automated/ruby-mode-tests.el

index 59efd14f59f4b7737f9a1fe29ba46589d92c8382..2177b948c420d76af63eb34ba20e59e3f468ddb2 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -77,6 +77,10 @@ performance improvements when pasting large amounts of text.
 \f
 * Changes in Specialized Modes and Packages in Emacs 24.5
 
+** font-lock
+*** New functions font-lock-ensure and font-lock-flush that should be used
+instead of font-lock-fontify-buffer when called from Elisp.
+
 ---
 ** The Rmail commands d, C-d and u now handle repeat counts
 to delete or undelete multiple messages.
index 66dc805c2e8d5e516944c2e103f4a212fa1d75cd..ea0177684783fff0a02268a1a8af1b512277dd3e 100644 (file)
@@ -1,3 +1,40 @@
+2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * font-lock.el (font-lock-flush, font-lock-ensure): New functions.
+       (font-lock-fontify-buffer): Mark interactive-only.
+       (font-lock-multiline, font-lock-fontified, font-lock-set-defaults):
+       Make buffer-local.
+       (font-lock-specified-p): Remove redundant boundp check.
+       (font-lock-flush-function, font-lock-ensure-function): New vars.
+       (font-lock-turn-on-thing-lock): Set them.
+       (font-lock-default-fontify-buffer): Obey font-lock-dont-widen.
+       (font-lock-after-change-function): Make `old-len' optional.
+       (font-lock-set-defaults): Remove redundant `set' of font-lock-defaults.
+       Call font-lock-flush, just in case.
+       * progmodes/verilog-mode.el (verilog-preprocess): Disable workaround in
+       recent Emacsen.
+       * progmodes/vera-mode.el (vera-fontify-buffer): Declare obsolete.
+       (vera-mode-map, vera-mode-menu): Remove bindings to it.
+       * progmodes/idlw-help.el (idlwave-help-fontify): Use font-lock-ensure
+       and with-syntax-table.
+       * textmodes/conf-mode.el (conf-quote-normal):
+       * progmodes/sh-script.el (sh-set-shell):
+       * progmodes/prog-mode.el (prettify-symbols-mode):
+       * progmodes/f90.el (f90-font-lock-n):
+       * progmodes/cwarn.el (cwarn-mode):
+       * nxml/nxml-mode.el (nxml-toggle-char-ref-extra-display):
+       * progmodes/compile.el (compilation-setup, compilation--unsetup):
+       * hi-lock.el (hi-lock-mode, hi-lock-unface-buffer)
+       (hi-lock-set-pattern, hi-lock-set-file-patterns): Use font-lock-flush.
+       * mail/rmail.el (rmail-variables): Set font-lock-dont-widen instead of
+       font-lock-fontify-buffer-function and
+       font-lock-unfontify-buffer-function.
+       (rmail-unfontify-buffer-function, rmail-fontify-message):
+       Use with-silent-modifications.
+       * htmlfontify.el (hfy-force-fontification): Use jit-lock-fontify-now
+       and font-lock-ensure.
+       * bs.el (bs-show-in-buffer): Use font-lock-ensure.
+
 2014-05-28  Thien-Thi Nguyen  <ttn@gnu.org>
 
        * emacs-lisp/package.el (package-generate-autoloads):
index f0f8b1dc35110d45fe9f795765e37cfaebe1144b..73b3684e5660ef55966c941a40bda6fd872872df 100644 (file)
@@ -1143,7 +1143,7 @@ and move point to current buffer."
     (delete-char -1)
     (bs--set-window-height)
     (bs--goto-current-buffer)
-    (font-lock-fontify-buffer)
+    (font-lock-ensure)
     (bs-apply-sort-faces)
     (set-buffer-modified-p nil)))
 
index bba3e520e1a1adf985b3ad401fe52bfd728ab868..b4418c4efaaa80468435a242bb7b23ab49ba1fdc 100644 (file)
@@ -1475,16 +1475,16 @@ Optional integers MON and YR are used instead of today's date."
        (set-window-vscroll nil 0))
       (sit-for 0))
     (and (bound-and-true-p font-lock-mode)
-         (font-lock-fontify-buffer))
+         (font-lock-fontify-buffer))    ;FIXME: Why?
     (and calendar-mark-holidays-flag
-;;;         (calendar-date-is-valid-p today) ; useful for BC dates
+         ;; (calendar-date-is-valid-p today) ; useful for BC dates
          (calendar-mark-holidays)
          (and in-calendar-window (sit-for 0)))
     (unwind-protect
         (if calendar-mark-diary-entries-flag (diary-mark-entries))
-      (if today-visible
-          (run-hooks 'calendar-today-visible-hook)
-        (run-hooks 'calendar-today-invisible-hook)))))
+      (run-hooks (if today-visible
+                     'calendar-today-visible-hook
+                   'calendar-today-invisible-hook)))))
 
 (defun calendar-generate (month year)
   "Generate a three-month Gregorian calendar centered around MONTH, YEAR."
index 82e97c4da62124028aeea00e4d0ad1eb7251e8dc..fe37c24579b4b060d4b523b44c610a944c7ab583 100644 (file)
@@ -601,14 +601,14 @@ This is normally set via `font-lock-defaults'.")
 Currently, valid mode names are `fast-lock-mode', `jit-lock-mode' and
 `lazy-lock-mode'.  This is normally set via `font-lock-defaults'.")
 
-(defvar font-lock-multiline nil
+(defvar-local font-lock-multiline nil
   "Whether font-lock should cater to multiline keywords.
 If nil, don't try to handle multiline patterns.
 If t, always handle multiline patterns.
 If `undecided', don't try to handle multiline patterns until you see one.
 Major/minor modes can set this variable if they know which option applies.")
 
-(defvar font-lock-fontified nil)       ; Whether we have fontified the buffer.
+(defvar-local font-lock-fontified nil) ; Whether we have fontified the buffer.
 \f
 ;; Font Lock mode.
 
@@ -626,6 +626,8 @@ Major/minor modes can set this variable if they know which option applies.")
   ;; Shut up the byte compiler.
   (defvar font-lock-face-attributes))  ; Obsolete but respected if set.
 
+(defvar-local font-lock-set-defaults nil) ; Whether we have set up defaults.
+
 (defun font-lock-specified-p (mode)
   "Return non-nil if the current buffer is ready for fontification.
 The MODE argument, if non-nil, means Font Lock mode is about to
@@ -634,7 +636,6 @@ be enabled."
       (and (boundp 'font-lock-keywords)
           font-lock-keywords)
       (and mode
-          (boundp 'font-lock-set-defaults)
           font-lock-set-defaults
           font-lock-major-mode
           (not (eq font-lock-major-mode major-mode)))))
@@ -921,6 +922,14 @@ The value of this variable is used when Font Lock mode is turned on."
      ;; Prepare for jit-lock
      (remove-hook 'after-change-functions
                   'font-lock-after-change-function t)
+     (set (make-local-variable 'font-lock-flush-function)
+          'jit-lock-refontify)
+     (set (make-local-variable 'font-lock-ensure-function)
+          'jit-lock-fontify-now)
+     ;; Prevent font-lock-fontify-buffer from fontifying eagerly the whole
+     ;; buffer.  This is important for things like CWarn mode which
+     ;; adds/removes a few keywords and does a refontify (which takes ages on
+     ;; large files).
      (set (make-local-variable 'font-lock-fontify-buffer-function)
           'jit-lock-refontify)
      ;; Don't fontify eagerly (and don't abort if the buffer is large).
@@ -1025,12 +1034,23 @@ This function should preserve the match-data.
 The region it returns may start or end in the middle of a line.")
 (make-variable-buffer-local 'font-lock-extend-after-change-region-function)
 
-(defun font-lock-fontify-buffer ()
+(defun font-lock-fontify-buffer (&optional interactively)
   "Fontify the current buffer the way the function `font-lock-mode' would."
-  (interactive)
+  (declare
+   ;; When called from Lisp, this function is a big mess.  The caller usually
+   ;; expects one of the following behaviors:
+   ;; - refresh the highlighting (because the font-lock-keywords have been
+   ;;   changed).
+   ;; - apply font-lock highlighting even if font-lock-mode is not enabled.
+   ;; - reset the highlighting rules because font-lock-defaults
+   ;;   has been changed (and then rehighlight everything).
+   ;; Of course, this function doesn't do all of the above in all situations
+   ;; (e.g. depending on whether jit-lock is in use) and it can't guess what
+   ;; the caller wants.
+   (interactive-only "use font-lock-ensure or font-lock-flush instead."))
+  (interactive "p")
   (font-lock-set-defaults)
-  (let ((font-lock-verbose (or font-lock-verbose
-                              (called-interactively-p 'interactive))))
+  (let ((font-lock-verbose (or font-lock-verbose interactively)))
     (funcall font-lock-fontify-buffer-function)))
 
 (defun font-lock-unfontify-buffer ()
@@ -1049,6 +1069,31 @@ This works by calling `font-lock-unfontify-region-function'."
   (save-buffer-state
     (funcall font-lock-unfontify-region-function beg end)))
 
+(defvar font-lock-flush-function #'font-lock-after-change-function
+  "Function to use to mark a region for refontification.
+Called with two arguments BEG and END.")
+
+(defun font-lock-flush (&optional beg end)
+  "Declare the region BEG...END's fontification as out-of-date.
+If the region is not specified, it defaults to the whole buffer."
+  (and font-lock-mode
+       font-lock-fontified
+       (funcall font-lock-flush-function
+                (or beg (point-min)) (or end (point-max)))))
+
+(defvar font-lock-ensure-function
+  (lambda (_beg _end)
+    (unless font-lock-fontified (font-lock-default-fontify-buffer)))
+  "Function to make sure a region has been fontified.
+Called with two arguments BEG and END.")
+
+(defun font-lock-ensure (&optional beg end)
+  "Make sure the region BEG...END has been fontified.
+If the region is not specified, it defaults to the whole buffer."
+  (font-lock-set-defaults)
+  (funcall font-lock-ensure-function
+           (or beg (point-min)) (or end (point-max))))
+
 (defun font-lock-default-fontify-buffer ()
   "Fontify the whole buffer using `font-lock-fontify-region-function'."
   (let ((verbose (if (numberp font-lock-verbose)
@@ -1059,7 +1104,7 @@ This works by calling `font-lock-unfontify-region-function'."
          (format "Fontifying %s..." (buffer-name)))
       ;; Make sure we fontify etc. in the whole buffer.
       (save-restriction
-       (widen)
+        (unless font-lock-dont-widen (widen))
        (condition-case nil
            (save-excursion
              (save-match-data
@@ -1201,7 +1246,7 @@ This function is the default `font-lock-unfontify-region-function'."
              '(face font-lock-multiline)))))
 
 ;; Called when any modification is made to buffer text.
-(defun font-lock-after-change-function (beg end old-len)
+(defun font-lock-after-change-function (beg end &optional old-len)
   (save-excursion
     (let ((inhibit-point-motion-hooks t)
           (inhibit-quit t)
@@ -1786,8 +1831,6 @@ A LEVEL of nil is equal to a LEVEL of 0, a LEVEL of t is equal to
        (t
         (car keywords))))
 
-(defvar font-lock-set-defaults nil)    ; Whether we have set up defaults.
-
 (defun font-lock-refresh-defaults ()
   "Restart fontification in current buffer after recomputing from defaults.
 Recompute fontification variables using `font-lock-defaults' and
@@ -1815,9 +1858,7 @@ Sets various variables using `font-lock-defaults' and
   (unless (and font-lock-set-defaults
               (eq font-lock-major-mode major-mode))
     (setq font-lock-major-mode major-mode)
-    (set (make-local-variable 'font-lock-set-defaults) t)
-    (make-local-variable 'font-lock-fontified)
-    (make-local-variable 'font-lock-multiline)
+    (setq font-lock-set-defaults t)
     (let* ((defaults font-lock-defaults)
           (keywords
            (font-lock-choose-keywords (nth 0 defaults)
@@ -1825,7 +1866,6 @@ Sets various variables using `font-lock-defaults' and
           (local (cdr (assq major-mode font-lock-keywords-alist)))
           (removed-keywords
            (cdr-safe (assq major-mode font-lock-removed-keywords-alist))))
-      (set (make-local-variable 'font-lock-defaults) defaults)
       ;; Syntactic fontification?
       (if (nth 1 defaults)
           (set (make-local-variable 'font-lock-keywords-only) t)
@@ -1868,7 +1908,8 @@ Sets various variables using `font-lock-defaults' and
       ;; Now compile the keywords.
       (unless (eq (car font-lock-keywords) t)
        (setq font-lock-keywords
-              (font-lock-compile-keywords font-lock-keywords))))))
+              (font-lock-compile-keywords font-lock-keywords))))
+    (font-lock-flush)))
 \f
 ;;; Color etc. support.
 
index 2d90516480716586f7ba823300cc6e468d315f2b..0f99bb9c4d54eebb62960bddec52ac2adcdfe0f9 100644 (file)
@@ -1,7 +1,12 @@
+2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * mm-view.el (mm-display-inline-fontify): Use font-lock-ensure.
+       * gnus-cite.el (gnus-message-citation-mode): Use font-lock-flush.
+
 2014-05-15  Katsumi Yamaoka  <yamaoka@jpl.org>
 
-       * gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part): Don't
-       delete next part button; keep spacing between buttons.
+       * gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part):
+       Don't delete next part button; keep spacing between buttons.
 
 2014-05-14  Katsumi Yamaoka  <yamaoka@jpl.org>
 
@@ -45,8 +50,8 @@
        * mm-decode.el (mm-display-part): Don't insert a newline in the top.
        (mm-shr): Make undisplayer unbreakable.
 
-       * mm-view.el (mm-inline-image-emacs, mm-inline-image-xemacs): Don't
-       insert excessive newline.
+       * mm-view.el (mm-inline-image-emacs, mm-inline-image-xemacs):
+       Don't insert excessive newline.
        (mm-inline-text-html-render-with-w3m, mm-inline-text)
        (mm-insert-inline): Make undisplayer unbreakable.
 
 
 2014-03-23  Katsumi Yamaoka  <yamaoka@jpl.org>
 
-       * gnus-art.el (gnus-mime-buttonize-attachments-in-header): Display
-       buttons that are hidden in unselected alternative part as well.
+       * gnus-art.el (gnus-mime-buttonize-attachments-in-header):
+       Display buttons that are hidden in unselected alternative part as well.
        (gnus-mime-display-alternative): Redraw attachment buttons in header.
 
        * gmm-utils.el (gmm-labels): Add edebug spec.
index db6a0f63e38b9442f2d5f12f75b7443c3edbb2c7..5a6d6f8f2433762d56dd406d010ce3c9876be9fa 100644 (file)
@@ -1204,7 +1204,8 @@ When enabled, it automatically turns on `font-lock-mode'."
   nil ;; init-value
   "" ;; lighter
   nil ;; keymap
-  (when (eq major-mode 'message-mode)
+  (when (eq major-mode 'message-mode)   ;FIXME: Use derived-mode-p.
+    ;; FIXME: Use font-lock-add-keywords!
     (let ((defaults (car (if (featurep 'xemacs)
                             (get 'message-mode 'font-lock-defaults)
                           font-lock-defaults)))
@@ -1233,8 +1234,10 @@ When enabled, it automatically turns on `font-lock-mode'."
                font-lock-keywords nil))
       (setq font-lock-set-defaults nil))
     (font-lock-set-defaults)
-    (cond ((symbol-value 'font-lock-mode)
-          (font-lock-fontify-buffer))
+    (cond (font-lock-mode
+           (if (fboundp 'font-lock-flush)
+               (font-lock-flush)
+             (font-lock-fontify-buffer)))
          (gnus-message-citation-mode
           (font-lock-mode 1)))))
 
index 2bee260d8f275966fb1076237372a08354aa1428..c565d0ed604687f0dd5c881466f9cef92538635c 100644 (file)
@@ -520,9 +520,11 @@ If MODE is not set, try to find mode automatically."
              (set-auto-mode)))
          ;; The mode function might have already turned on font-lock.
          ;; Do not fontify if the guess mode is fundamental.
-         (unless (or (symbol-value 'font-lock-mode)
+         (unless (or font-lock-mode
                      (eq major-mode 'fundamental-mode))
-           (font-lock-fontify-buffer))))
+            (if (fboundp 'font-lock-ensure)
+                (font-lock-ensure)
+              (font-lock-fontify-buffer)))))
       ;; By default, XEmacs font-lock uses non-duplicable text
       ;; properties.  This code forces all the text properties
       ;; to be copied along with the text.
index 78efd8671c47063515fefe068c4bfa3057f116da..98a26dd463487c855b81024fcff609bd3893ea73 100644 (file)
@@ -391,7 +391,7 @@ versions before 22 use the following in your init file:
        (font-lock-remove-keywords nil hi-lock-file-patterns)
        (setq hi-lock-file-patterns nil))
       (remove-overlays nil nil 'hi-lock-overlay t)
-      (when font-lock-fontified (font-lock-fontify-buffer)))
+      (font-lock-flush))
     (define-key-after menu-bar-edit-menu [hi-lock] nil)
     (remove-hook 'font-lock-mode-hook 'hi-lock-font-lock-hook t)))
 
@@ -601,7 +601,7 @@ then remove all hi-lock highlighting."
             (delq keyword hi-lock-interactive-patterns))
       (remove-overlays
        nil nil 'hi-lock-overlay-regexp (hi-lock--hashcons (car keyword)))
-      (when font-lock-fontified (font-lock-fontify-buffer)))))
+      (font-lock-flush))))
 
 ;;;###autoload
 (defun hi-lock-write-interactive-patterns ()
@@ -695,7 +695,7 @@ with completion and history."
       (if (and font-lock-mode (font-lock-specified-p major-mode))
          (progn
            (font-lock-add-keywords nil (list pattern) t)
-           (font-lock-fontify-buffer))
+           (font-lock-flush))
         (let* ((range-min (- (point) (/ hi-lock-highlight-range 2)))
                (range-max (+ (point) (/ hi-lock-highlight-range 2)))
                (search-start
@@ -719,7 +719,7 @@ with completion and history."
     (font-lock-remove-keywords nil hi-lock-file-patterns)
     (setq hi-lock-file-patterns patterns)
     (font-lock-add-keywords nil hi-lock-file-patterns t)
-    (font-lock-fontify-buffer)))
+    (font-lock-flush)))
 
 (defun hi-lock-find-patterns ()
   "Find patterns in current buffer for hi-lock."
index 56887f39befdee1176b7b8880819e3972cf9eefa..5128ca8f9c49a4eb99d9f4e928a7ed9dfe0fea93 100644 (file)
@@ -1809,17 +1809,25 @@ fontified.  This is a simple convenience wrapper around
   (eval-and-compile (require 'font-lock))
   (if (boundp 'font-lock-cache-position)
       (or font-lock-cache-position
-          (set 'font-lock-cache-position (make-marker))))
-  (if (not noninteractive)
-      (progn
-        (message "hfy interactive mode (%S %S)" window-system major-mode)
-        (when (and font-lock-defaults
-                   font-lock-mode)
-          (font-lock-fontify-region (point-min) (point-max) nil)))
+          (setq font-lock-cache-position (make-marker))))
+  (cond
+   (noninteractive
     (message "hfy batch mode (%s:%S)"
              (or (buffer-file-name) (buffer-name)) major-mode)
-    (when font-lock-defaults
-      (font-lock-fontify-buffer)) ))
+    (if (fboundp 'font-lock-ensure)
+        (font-lock-ensure)
+      (when font-lock-defaults
+        (font-lock-fontify-buffer))))
+   ((fboundp #'jit-lock-fontify-now)
+    (message "hfy jit-lock mode (%S %S)" window-system major-mode)
+    (jit-lock-fontify-now))
+   (t
+    (message "hfy interactive mode (%S %S)" window-system major-mode)
+    ;; If jit-lock is not in use, then the buffer is already fontified!
+    ;; (when (and font-lock-defaults
+    ;;            font-lock-mode)
+    ;;   (font-lock-fontify-region (point-min) (point-max) nil))
+    )))
 
 ;;;###autoload
 (defun htmlfontify-buffer (&optional srcdir file)
index 42e6519e38c77fce1dbe51e005cec162bdab0bd8..d346f050415ef0af2faa37fac81daa9122099d16 100644 (file)
@@ -318,10 +318,6 @@ Only applies to the current buffer."
   (remove-hook 'jit-lock-functions fun t)
   (unless jit-lock-functions (jit-lock-mode nil)))
 
-;; This function is used to prevent font-lock-fontify-buffer from
-;; fontifying eagerly the whole buffer.  This is important for
-;; things like CWarn mode which adds/removes a few keywords and
-;; does a refontify (which takes ages on large files).
 (defun jit-lock-refontify (&optional beg end)
   "Force refontification of the region BEG..END (default whole buffer)."
   (with-buffer-prepared-for-jit-lock
index dcbc12918c28b1dcdadd23c2fa974c2c669c5bba..2c5325dd4c5f13eaee619e84ae1abfe67337a6ee 100644 (file)
@@ -1507,8 +1507,7 @@ If so restore the actual mbox message collection."
        '(rmail-font-lock-keywords
          t t nil nil
          (font-lock-maximum-size . nil)
-         (font-lock-fontify-buffer-function . rmail-fontify-buffer-function)
-         (font-lock-unfontify-buffer-function . rmail-unfontify-buffer-function)
+          (font-lock-dont-widen . t)
          (font-lock-inhibit-thing-lock . (lazy-lock-mode fast-lock-mode))))
   (make-local-variable 'require-final-newline)
   (setq require-final-newline nil)
@@ -4314,31 +4313,21 @@ This has an effect only if a summary buffer exists."
 
 (defun rmail-unfontify-buffer-function ()
   ;; This function's symbol is bound to font-lock-fontify-unbuffer-function.
-  (let ((modified (buffer-modified-p))
-       (buffer-undo-list t) (inhibit-read-only t)
-       before-change-functions after-change-functions
-       buffer-file-name buffer-file-truename)
+  (with-silent-modifications
     (save-restriction
       (widen)
       (remove-hook 'rmail-show-message-hook 'rmail-fontify-message t)
       (remove-text-properties (point-min) (point-max) '(rmail-fontified nil))
-      (font-lock-default-unfontify-buffer)
-      (and (not modified) (buffer-modified-p)
-           (restore-buffer-modified-p nil)))))
+      (font-lock-default-unfontify-buffer))))
 
 (defun rmail-fontify-message ()
   ;; Fontify the current message if it is not already fontified.
   (if (text-property-any (point-min) (point-max) 'rmail-fontified nil)
-      (let ((modified (buffer-modified-p))
-           (buffer-undo-list t) (inhibit-read-only t)
-           before-change-functions after-change-functions
-           buffer-file-name buffer-file-truename)
+      (with-silent-modifications
        (save-excursion
          (save-match-data
            (add-text-properties (point-min) (point-max) '(rmail-fontified t))
-           (font-lock-fontify-region (point-min) (point-max))
-           (and (not modified) (buffer-modified-p)
-                 (restore-buffer-modified-p nil)))))))
+           (font-lock-fontify-region (point-min) (point-max)))))))
 \f
 ;;; Speedbar support for RMAIL files.
 (defcustom rmail-speedbar-match-folder-regexp "^[A-Z0-9]+\\(\\.[A-Z0-9]+\\)?$"
index b3ce7aaac258d4c59397c781cb6f81e3687a1686..4859bbc7a77b2f41fe3e0a641c1d46ca7e1de076 100644 (file)
@@ -2567,7 +2567,7 @@ With a prefix argument, inserts the character directly."
               (> (prefix-numeric-value arg) 0))))
     (when (not (eq new nxml-char-ref-extra-display))
       (setq nxml-char-ref-extra-display new)
-      (font-lock-fontify-buffer))))
+      (font-lock-flush))))
 
 (put 'nxml-char-ref 'evaporate t)
 
index a74388b7d710a27203a5eff6898e207c7581bb2f..669ac2d83d325d1aa2fa7e610d42e1ebf1dc55af 100644 (file)
@@ -1,3 +1,14 @@
+2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * org-compat.el (org-font-lock-ensure): New function.
+       * ox-odt.el (org-odt-do-format-code):
+       * ox-html.el (org-html-fontify-code):
+       * org.el (org-fontify-like-in-org-mode):
+       * org-src.el (org-src-font-lock-fontify-block):
+       * org-clock.el (org-clock-get-clocktable): Use it.
+       * ox-org.el (org-org-publish-to-org): Use it.  Avoid using find-file
+       from Elisp.
+
 2014-05-12  Eric Schulte  <eric.schulte@gmx.com>
 
        * ob-screen.el (org-babel-screen-session-write-temp-file)
        `org-babel-gnuplot-table-to-data´ expects a table, so we need to
        construct one when Babel hands us a vector.
 
-       * ob-ref.el (org-babel-ref-parse): If
-       `org-babel-current-src-block-location' is a marker, it can be from
+       * ob-ref.el (org-babel-ref-parse):
+       If `org-babel-current-src-block-location' is a marker, it can be from
        another buffer, use marker-position instead in this case.
 
 2014-04-22  Arun Persaud  <apersaud@lbl.gov>  (tiny change)
 
-       * org-src.el (org-edit-src-exit): Don't add indentation on empty
-       lines.
+       * org-src.el (org-edit-src-exit): Don't add indentation on empty lines.
 
 2014-04-22  Bastien Guerry  <bzg@gnu.org>
 
 
        * org-table.el (org-table-copy-down)
        (org-table-find-dataline, org-table-move-row)
-       (org-table-insert-hline, org-table-kill-row): Use
-       `org-move-to-column' with the IGNORE-INVISIBLE arg set to `t', so
+       (org-table-insert-hline, org-table-kill-row):
+       Use `org-move-to-column' with the IGNORE-INVISIBLE arg set to `t', so
        that abbreviated rows don't interfer with setting the cursor back
        at the correct position.
 
        * org-table.el (org-table-field-info): Throw a user error when not
        at a table.
 
-       * org-agenda.el (org-agenda-drag-line-forward): Call
-       `org-agenda-mark-clocking-task' when done.
+       * org-agenda.el (org-agenda-drag-line-forward):
+       Call `org-agenda-mark-clocking-task' when done.
        (org-agenda-mark-clocking-task): Small refactoring.
 
        * org-compat.el (org-set-transient-map): Alias pointing at
 
 2014-04-22  Markus Hauck  <markus1189@gmail.com>  (tiny change)
 
-       * org-agenda.el (org-agenda-get-scheduled): If
-       `org-agenda-skip-scheduled-if-deadline-is-shown' is set to
+       * org-agenda.el (org-agenda-get-scheduled):
+       If `org-agenda-skip-scheduled-if-deadline-is-shown' is set to
        'repeated-after-deadline, still show tasks without any deadline
 
 2014-04-22  Michael Brand  <michael.ch.brand@gmail.com>
        followed by multiple blank lines.
 
        * ox.el (org-export-insert-default-template): Only insert
-       keywords and options relatives to the selected back-end.  Ignore
-       those relatives to its parent in the case of a derived back-end.
+       keywords and options relatives to the selected back-end.
+       Ignore those relatives to its parent in the case of a derived back-end.
 
        * ox-beamer.el: Remove unnecessary package definitions in default
        class.
        docstring.
        (org-entry-get): Minor docstring enhancement.
        (org-set-startup-visibility): Bugfix.
-       (org-shiftcontrolup, org-shiftcontroldown): When
-       `org-support-shift-select' is not `nil', let-bind it to nil if
+       (org-shiftcontrolup, org-shiftcontroldown):
+       When `org-support-shift-select' is not `nil', let-bind it to nil if
        point is on a clock log.  Otherwise throw an error.
 
        * ob-lob.el (org-babel-lob-files): Fix custom type.
 
        * ox-html.el: Clean up "FIXME" comments.
 
-       * ox-publish.el (org-publish-resolve-external-fuzzy-link): Fix
-       docstring.
+       * ox-publish.el (org-publish-resolve-external-fuzzy-link):
+       Fix docstring.
 
        * ox.el (org-export-smart-quotes-regexps): Fix smart quote
        detection when it is followed by an open parenthesis syntax class.
 
-       * org-element.el (org-element-inline-babel-call-successor): Use
-       original regexp to stay up-to-date with Babel changes.
+       * org-element.el (org-element-inline-babel-call-successor):
+       Use original regexp to stay up-to-date with Babel changes.
        (org-element--affiliated-re): Fix affiliated keyword regexp.
 
        * ox-org.el (org-org-identity): Since back-end specific keywords
        are stripped from output, also remove attr_backend keywords.
        (org-babel-exp-process-buffer): Fix duplicate evaluation with
        :wrap src.
-       (org-babel-exp-non-block-elements): Removed function.
+       (org-babel-exp-non-block-elements): Remove function.
 
 2013-01-07  Ted Wiles  <thewiles@wharton.upenn.edu>  (tiny change)
 
        (org-texinfo-drawer): Always use
        `org-texinfo-format-drawer-function' as it is now a function
        by default.
-       (org-texinfo-headline): Compare
-       `org-texinfo-format-headline-function' against 'ignore.
-       (org-texinfo-inlinetask): Compare
-       `org-texinfo-format-inlinetask-function' against 'ignore.
+       (org-texinfo-headline):
+       Compare `org-texinfo-format-headline-function' against 'ignore.
+       (org-texinfo-inlinetask):
+       Compare `org-texinfo-format-inlinetask-function' against 'ignore.
 
        * ox-odt.el (org-odt-format-drawer-function): Use a function as
        the default value.  Update docstring.
        (org-odt-format-inlinetask-function): Fix default value.
        (org-odt-drawer): Always use `org-odt-format-drawer-function'
        as it is now a function by default.
-       (org-odt-format-headline--wrap): Compare
-       `org-odt-format-headline-function' against 'ignore.
+       (org-odt-format-headline--wrap):
+       Compare `org-odt-format-headline-function' against 'ignore.
 
        * ox-latex.el (org-latex-format-drawer-function): Use a function
        as the default value.  Update docstring.
        (org-latex-drawer): Always use
        `org-latex-format-drawer-function' as it is now a function by
        default.
-       (org-latex-inlinetask): Compare
-       `org-latex-format-inlinetask-function' against 'ignore.
+       (org-latex-inlinetask):
+       Compare `org-latex-format-inlinetask-function' against 'ignore.
 
        * ox-html.el (org-html-format-drawer-function): Use a function as
        the default value.  Update docstring.
        (org-html-format-headline-function)
        (org-html-format-inlinetask-function): Fix default value.
        (org-html--format-toc-headline)
-       (org-html-format-headline--wrap): Compare
-       `org-html-format-headline-function' against 'ignore.
-       (org-html-inlinetask): Compare
-       `org-html-format-inlinetask-function' against 'ignore.
+       (org-html-format-headline--wrap):
+       Compare `org-html-format-headline-function' against 'ignore.
+       (org-html-inlinetask):
+       Compare `org-html-format-inlinetask-function' against 'ignore.
 
        * ox-ascii.el (org-ascii-format-drawer-function): Use a
        function as the default value.  Update docstring.
        `org-ascii-format-drawer-function' as it is now a function by
        default.
        (org-ascii-format-inlinetask-default): New function.
-       (org-ascii-format-inlinetask-function): Use
-       `org-ascii-format-inlinetask-default' as the default.
+       (org-ascii-format-inlinetask-function):
+       Use `org-ascii-format-inlinetask-default' as the default.
 
        * org.el (org-mouse-1-follows-link): Use :set to set the default
        value.  Update custom type.
        type.
        (orgstruct-heading-prefix-regexp): Use an empty string as the
        default value.  Use 'regexp as the custom type.
-       (orgstruct-make-binding): Tiny docstring enhancement.  Assume
-       `orgstruct-heading-prefix-regexp' is a string.
+       (orgstruct-make-binding): Tiny docstring enhancement.
+       Assume `orgstruct-heading-prefix-regexp' is a string.
 
-       * org-agenda.el (org-agenda-search-view-max-outline-level): Set
-       default value to 0.  Update docstring.
+       * org-agenda.el (org-agenda-search-view-max-outline-level):
+       Set default value to 0.  Update docstring.
        (org-agenda-deadline-leaders): Fix custom type.
-       (org-search-view): Assume
-       `org-agenda-search-view-max-outline-level' is a number.
+       (org-search-view):
+       Assume `org-agenda-search-view-max-outline-level' is a number.
 
        * ob-ruby.el (org-babel-ruby-nil-to): Fix custom type.
 
        * ox-html.el (org-html-format-latex): Add an argument.  Ensure
        latex header is the same as specified in the original buffer when
        exporting a LaTeX fragment or environment.
-       (org-html-latex-environment, org-html-latex-fragment): Apply
-       signature change.
+       (org-html-latex-environment, org-html-latex-fragment):
+       Apply signature change.
 
        * ox-publish.el (org-publish-cache-ctime-of-src): Return an error
        when publishing a non-existent file.
        * org.el (org-format-latex): Do not re-generate a LaTeX preview if
        the image already exists.
 
-       * org-agenda.el (org-agenda-search-view-max-outline-level): New
-       option to define the max level for the entries shown by the search
+       * org-agenda.el (org-agenda-search-view-max-outline-level):
+       New option to define the max level for the entries shown by the search
        view.  A value of 1 means to show the top parent of the entries.
 
        * org.el (org-create-formula-image-with-dvipng): Fix bug that made
        (org-babel-get-rownames, org-table.el)
        (org-table-transpose-table-at-point): Replace the inadvertent use
        of mapcar* (from cl) by plain mapcar and direct cons manipulation.
-       (org-babel-params-from-properties): Use
-       `org-babel-current-src-block-location' for evaluating new-style
+       (org-babel-params-from-properties):
+       Use `org-babel-current-src-block-location' for evaluating new-style
        header-argument properties.  Remove superfluous save-match-data
        clauses.  Comment which properties get evaluated where.
        (org-babel-insert-header-arg, org-babel-parse-src-block-match):
        `org-re-property'.
        (org-re-property-keyword): Remove, functionality is subsumed by
        `org-re-property'.
-       (org-property-re): Define using `org-re-property'.  Improve
-       definition so that this regex can be
+       (org-property-re): Define using `org-re-property'.
+       Improve definition so that this regex can be
        (org-entry-get, org-property-values): Adjust match number for
        PROPVAL.  (org-entry-put): Use `org-re-property' instead of
        `org-re-property-keyword'.
        (define-obsolete-function-alias): Actually remove the third (and
        any following) argument from the argument list before calling the
        advised function.  Extend eval-and-compile clause and add advices
-       for functions that have different parameter lists in XEmacs.  Add
-       variable definitions that XEmacs lacks .
+       for functions that have different parameter lists in XEmacs.
+       Add variable definitions that XEmacs lacks .
 
        * ob-fortran.el (org-every): Declare.
 
-       * org-element.el (org-element-node-property-parser): Use
-       `org-property-re' and adjust match group numbers accordingly.
+       * org-element.el (org-element-node-property-parser):
+       Use `org-property-re' and adjust match group numbers accordingly.
        Move `looking-at' out of the let clause to not rely on the
        unspecified evaluation order inside the let.
 
        argument list that XEmacs complains about by adding parenthesis.
 
        * ob-octave.el (org-babel-octave-initiate-session): If octave-inf
-       can't be loaded, try octave instead before giving up.  Emacs
-       24.3.50 and upwards replaces octave-inf with just plain octave.
+       can't be loaded, try octave instead before giving up.
+       Emacs 24.3.50 and upwards replaces octave-inf with just plain octave.
 
        * org-id.el (org-id-update-id-locations): Autoload interactive
        function.
        * org-table.el (org-table-colgroup-info): Remove unused defvar for
        `org-table-colgroup-info'.
        (org-table-clean-before-export): Let-bind regular expression
-       strings and remove unused matching group.  Use
-       `org-table-clean-did-remove-column' in cond statement rather than
+       strings and remove unused matching group.
+       Use `org-table-clean-did-remove-column' in cond statement rather than
        branching via if to avoid code duplication.  Remove the code
        associated with the removed `org-table-colgroup-info'.
        (orgtbl-export): Remove unused internal function.
        * ob-perl.el (org-babel-execute:perl): Pass `result-params´
        through to `org-babel-perl-evaluate´.
        (org-babel-variable-assignments:perl): Add "my" to variable
-       declaration so that it becomes compatible with "use strict;".  Use
-       new internal formatting function `org-babel-perl--var-to-perl´.
+       declaration so that it becomes compatible with "use strict;".
+       Use new internal formatting function `org-babel-perl--var-to-perl´.
        (org-babel-perl--var-to-perl): New internal function, uses Perl
        non-interpolating quoting on the string that defines the variable
        to suppress spurious interpretation of it as Perl syntax.
        * ob-eval.el (org-babel-eval): Use simplified version of
        `org-babel--shell-command-on-region´, we are the only caller of
        this function.
-       (org-babel--shell-command-on-region): Replace
-       `org-babel-shell-command-on-region´ with a much more simplified
+       (org-babel--shell-command-on-region):
+       Replace `org-babel-shell-command-on-region´ with a much more simplified
        internal version, remove superfluous DOCSTRING and interactive
        clause, strip out all conditionals which were never used.  Prevent
        deletion of temporary input file to aid debugging when the symbol
        * org-macs.el: New macro to allow the 5-argument form of load to
        be used where possible without breaking compatibility with XEmacs.
 
-       * org.el (org-version, org-reload): Use
-       `org-load-noerror-mustsuffix´ instead of adding a fifth argument
+       * org.el (org-version, org-reload):
+       Use `org-load-noerror-mustsuffix´ instead of adding a fifth argument
        to load directly.  Guard against undefined variable load-suffixes,
        which doesn't exist in XEmacs.
 
 
 2013-11-12  Alan Schmitt  <alan.schmitt@polytechnique.org>
 
-       * ob-ocaml.el (org-babel-prep-session:ocaml): Use
-       `save-window-excursion' around the code starting the tuareg
+       * ob-ocaml.el (org-babel-prep-session:ocaml):
+       Use `save-window-excursion' around the code starting the tuareg
        process.
        (org-babel-ocaml-command): New option to specify the name of the
        toplevel to run.
        when inserting the new time as a text property.
        (org-agenda-filter-make-matcher): When filtering tags and hitting
        space, filter out entries with tags, only keep those without tags.
-       (org-agenda-drag-line-forward, org-agenda-drag-line-backward): Fix
-       bugs: don't drag lines without text and don't drag lines
+       (org-agenda-drag-line-forward, org-agenda-drag-line-backward):
+       Fix bugs: don't drag lines without text and don't drag lines
        before/after hidden lines.
 
        * ox-odt.el (org-odt-table-style-format): Use %s for inserting the
        * org-capture.el (org-capture-set-target-location): Don't throw an
        error when `org-time-was-given' is not bound.
 
-       * org-clock.el (org-clock-modify-effort-estimate): Clarify
-       docstring.
+       * org-clock.el (org-clock-modify-effort-estimate):
+       Clarify docstring.
 
        * org.el (org-set-regexps-and-options-for-tags): Return a list
        with tag-related variables.
        (org-get-outline-path): Remove statistical and checkboxes cookies.
 
        * org-agenda.el (org-agenda, org-search-view, org-tags-view)
-       (org-agenda-get-day-entries, org-agenda-set-restriction-lock): Use
-       (current-buffer) as the value of `org-agenda-restrict'.  Fix a bug
+       (org-agenda-get-day-entries, org-agenda-set-restriction-lock):
+       Use (current-buffer) as the value of `org-agenda-restrict'.  Fix a bug
        about narrowing to wrong region boundaries when
        `org-agenda-restrict' is non-nil.
 
        (org-insert-heading): Fix case when there the first heading starts
        at the beginning of the buffer.
 
-       * ob-core.el (org-babel-expand-src-block): Use
-       `org-called-interactively-p'.
+       * ob-core.el (org-babel-expand-src-block):
+       Use `org-called-interactively-p'.
 
        * org.el (org-agenda-prepare-buffers): Avoid duplicates in
        `org-tag-alist-for-agenda' correctly.
        (org-read-date-minibuffer-local-map): Check if we are at the
-       beginning of the prompt, not if we are after a whitespace.  Bind
-       C-. to `calendar-goto-today'.
+       beginning of the prompt, not if we are after a whitespace.
+       Bind C-. to `calendar-goto-today'.
 
        * org-clock.el (org-clock-in): Don't forward by one character when
        setting the marker in the clock history.
 
-       * org.el (org-read-date-minibuffer-local-map): Call
-       `calendar-goto-today' only if there is a space before point in the
+       * org.el (org-read-date-minibuffer-local-map):
+       Call `calendar-goto-today' only if there is a space before point in the
        minibuffer prompt.
        (org-insert-heading): Reveal context when called interactively.
        Fix bug about wrong conversion of lines with :END: or #+end_ into
        (org-mark-subtree, org-kill-line, org-first-sibling-p)
        (org-up-element, org-down-element)
        (org-drag-element-backward, org-drag-element-forward)
-       (org-unindent-buffer, org-speedbar-set-agenda-restriction): Use
-       `user-error' instead of `error'.
+       (org-unindent-buffer, org-speedbar-set-agenda-restriction):
+       Use `user-error' instead of `error'.
 
        * ox-latex.el (latex): Don't force exporting with smart quotes.
 
        values.
 
        * org.el (org-shifttab): Show the correct number of empty
-       headlines when called with a numeric prefix argument.  Enhance
-       docstring.
+       headlines when called with a numeric prefix argument.
+       Enhance docstring.
        (org-uniquify): Use `copy-sequence'.
        (org-adaptive-fill-function, org-fill-paragraph): Throw a useful
        error message when parse an element fails in the current buffer.
        (org-cycle-emulate-tab, org-file-apps)
        (org-set-font-lock-defaults)
        (org-translate-link-from-planner, org-link-search)
-       (org-refile-get-targets, org-read-date-get-relative): Minor
-       code clean-up: fix dangling parentheses.
+       (org-refile-get-targets, org-read-date-get-relative):
+       Minor code clean-up: fix dangling parentheses.
 
        * org-agenda.el (org-agenda-entry-text-mode): Also check against
        regexp filters.
        * org-mouse.el (org-mouse-agenda-context-menu): Fix a function's
        name.
 
-       * ox.el (org-export-options-alist, org-export--skip-p): Use
-       `:with-planning' instead of `:with-plannings', to keep in sync
+       * ox.el (org-export-options-alist, org-export--skip-p):
+       Use `:with-planning' instead of `:with-plannings', to keep in sync
        with the corresponding option's name.
 
        * ob-core.el (org-babel-confirm-evaluate): Fix typo in docstring.
        (org-re-timestamp): Handle closed time-stamps.
        (org-closed-in-range): Delete.
 
-       * org-capture.el (org-capture-import-remember-templates): Take
-       care of adding :jump-to-captured option if needed.
+       * org-capture.el (org-capture-import-remember-templates):
+       Take care of adding :jump-to-captured option if needed.
 
        * org.el (org-toggle-pretty-entities): Enhance messages.
        (org-raise-scripts): Handle scripts like "a_b^c".
        information for filtering in the agenda buffer.
        (org-uniquify-alist): New function.
 
-       * org-pcomplete.el (pcomplete/org-mode/file-option/tags): Handle
-       :grouptags.
+       * org-pcomplete.el (pcomplete/org-mode/file-option/tags):
+       Handle :grouptags.
 
        * org-faces.el (mode-line): New face for group tags.
 
        * ox-ascii.el (ascii): Use `org-export-define-backend' and
        `org-export-define-derived-backend' as defuns, not macros.
 
-       * org.el (org-set-regexps-and-options): Use
-       `org-table-set-constants'.
+       * org.el (org-set-regexps-and-options):
+       Use `org-table-set-constants'.
 
        * org-table.el (org-table-set-constants): New function.
        (orgtbl-ctrl-c-ctrl-c): Use it.
        * ox-publish.el (org-publish-org-to)
        (org-publish-org-sitemap, org-publish-find-title)
        (org-publish-find-date)
-       (org-publish-cache-file-needs-publishing): Set
-       `org-inhibit-startup' to t when visiting files for
+       (org-publish-cache-file-needs-publishing):
+       Set `org-inhibit-startup' to t when visiting files for
        publication.
 
        * ox-org.el (org-org-publish-to-org): Kill buffers not visited at
        (org-agenda-filter-remove-all): New command.
        (org-agenda-filter-show-all-re): Rename from
        `org-agenda-filter-show-all-regexp'.
-       (org-agenda-filter-by-regexp): Call
-       `org-agenda-filter-show-all-re'.
+       (org-agenda-filter-by-regexp):
+       Call `org-agenda-filter-show-all-re'.
 
        * org-list.el (org-insert-item): Don't ask for a definition term
        when insert an item in a description list.
        * ox.el (org-export--copy-to-kill-ring-p): New function.
        (org-export-copy-to-kill-ring): Use 'if-interactive as the
        default.
-       (org-export-to-buffer, org-export-to-file): Use
-       `org-export--copy-to-kill-ring-p' and fix docstrings.
+       (org-export-to-buffer, org-export-to-file):
+       Use `org-export--copy-to-kill-ring-p' and fix docstrings.
 
-       * ox-odt.el (org-odt-export-as-odf): Use
-       `org-export--copy-to-kill-ring-p'.
+       * ox-odt.el (org-odt-export-as-odf):
+       Use `org-export--copy-to-kill-ring-p'.
 
        * org.el (org-set-font-lock-defaults): Fontify macros.
 
        (org-scheduled-time-hour-regexp): New buffer local variables.
        (org-set-regexps-and-options): Set the new variables.
 
-       * org-agenda.el (org-agenda-custom-commands-local-options): Add
-       :deadline* and :scheduled* to the list of possible agenda entry
+       * org-agenda.el (org-agenda-custom-commands-local-options):
+       Add :deadline* and :scheduled* to the list of possible agenda entry
        types.
        (org-agenda): Implement a new agenda type agenda* with :scheduled*
        and :deadline* replacing :scheduled and :deadline respectively in
        (org-agenda-list): New parameter `with-hour'.  Use :scheduled* and
        :deadline*.
        (org-agenda-get-day-entries): Handle :scheduled* and :deadline*.
-       (org-agenda-get-deadlines, org-agenda-get-scheduled): New
-       parameter `with-hour'.  Use `org-deadline-time-hour-regexp' or
+       (org-agenda-get-deadlines, org-agenda-get-scheduled):
+       New parameter `with-hour'.  Use `org-deadline-time-hour-regexp' or
        `org-scheduled-time-hour-regexp' as the search string if needed.
        (org-agenda-to-appt): Use :scheduled* and :deadline* by default,
        as other scheduled and deadline items don't have a time spec and
        cannot be turned into appointments.  Trim bracket links and use
        only the description as the appointment text.
-       (org-agenda-get-restriction-and-command): Add
-       default description for the agenda* view.
+       (org-agenda-get-restriction-and-command):
+       Add default description for the agenda* view.
        (org-agenda-run-series): Handle agenda* views.
 
        * org-faces.el (org-agenda-filter-tags)
        (org-agenda-filter-category): Docstring fix.
        (org-agenda-filter-category): New face.
 
-       * org-agenda.el (org-agenda-local-vars): Add
-       `org-agenda-re-filter-overlays' and `org-agenda-regexp-filter'.
+       * org-agenda.el (org-agenda-local-vars):
+       Add `org-agenda-re-filter-overlays' and `org-agenda-regexp-filter'.
        (org-agenda-mode-map): Use "|" for
        `org-agenda-filtered-by-regexp'.
        (org-agenda-re-filter-overlays): New variable.
-       (org-agenda-mark-filtered-text): Use
-       `org-agenda-re-filter-overlays'.
+       (org-agenda-mark-filtered-text):
+       Use `org-agenda-re-filter-overlays'.
        (org-agenda-finalize, org-agenda-redo): Allow regexp filtering.
        (org-agenda-filter-by-category): Set `org-agenda-category-filter'
        here instead of within `org-agenda-apply-filter'.
        (org-agenda-filter-make-matcher): Make matcher for regexp filters.
        (org-agenda-filter-apply): Don't set `org-agenda-tag-filter' and
        `org-agenda-category-filter'.  Maybe apply regexp filter.
-       (org-agenda-filter-hide-line): Add docstring.  Hide
-       regexp-filtered lines.
+       (org-agenda-filter-hide-line): Add docstring.
+       Hide regexp-filtered lines.
        (org-agenda-filter-show-all-tag, org-agenda-filter-show-all-cat):
        Add docstring.
        (org-agenda-filter-show-all-regexp): New function.
        (org-agenda-regexp-filter-preset): New variable.
        (org-agenda-prepare): Use the new variable.
 
-       * ox-odt.el (org-odt-code, org-odt-verbatim): Use
-       `org-odt--encode-plain-text'.
+       * ox-odt.el (org-odt-code, org-odt-verbatim):
+       Use `org-odt--encode-plain-text'.
 
        * ox-html.el (org-html-link): Minor code clean-up.
 
        a universal prefix arg will only convert the first line.  This is
        more consistent with `org-toggle-item'.
        (orgstruct-setup): Add `org-ctrl-c-minus' and `org-ctrl-c-star'.
-       (customize-package-emacs-version-alist): Update
-       `customize-package-emacs-version-alist'.
+       (customize-package-emacs-version-alist):
+       Update `customize-package-emacs-version-alist'.
 
        * ox-texinfo.el (org-export-texinfo)
        (org-texinfo-filename, org-texinfo-classes)
        docstring.
 
        * ox-latex.el:
-       (org-latex-table-scientific-notation, org-latex-verse-block): Fix
-       typos in docstrings.
+       (org-latex-table-scientific-notation, org-latex-verse-block):
+       Fix typos in docstrings.
 
        * ox-html.el (org-html-text-markup-alist)
        (org-html-pretty-output, org-html-link-org-files-as-html)
        (org-html-format-list-item, org-html-format-latex)
        (org-html-encode-plain-text)
        (org-html-table-first-row-data-cells)
-       (org-html-table--table.el-table, org-html-final-function): Fix
-       or add docstring.
+       (org-html-table--table.el-table, org-html-final-function):
+       Fix or add docstring.
 
        * org.el (org-insert-heading): If the current item has a checkbox,
        insert the new item with a checkbox.
        known as HTML_STYLE_EXTRA.
        (org-html-head): Enhance docstring.
        (org-html-head-extra): Reintroduce.  Was `org-html-style-extra'.
-       (org-html--build-head): Rename from `org-html--build-head'.  Add
-       information from `org-html-head-extra'.
+       (org-html--build-head): Rename from `org-html--build-head'.
+       Add information from `org-html-head-extra'.
        (org-html-template): Use `org-html--build-head'.
 
        * ox-html.el (org-html-display-buffer-mode): Delete.
        (org-insert-heading-respect-content): New optional argument
        arg, passed to `org-insert-heading'.
 
-       * org.el (org-mode): Remove syntax entries.  Use
-       `org-backward-element' and `org-forward-element' for
+       * org.el (org-mode): Remove syntax entries.
+       Use `org-backward-element' and `org-forward-element' for
        `beginning-of-defun-function' and `end-of-defun-function': this
        allows using C-M-a and C-M-e before the first headline.
 
        publishing projects.
 
        * ox-html.el (org-html-style-default): Update docstring.
-       (org-html-infojs-install-script, org-html--build-style): Update
-       property names.
+       (org-html-infojs-install-script, org-html--build-style):
+       Update property names.
        (org-html-head-include-scripts)
        (org-html-head-include-default-style, org-html-head):
        Respectively rename from `org-html-style-include-scripts',
        * ob-tangle.el (org-babel-tangle): Remove unused attempt of
        prompting the user of the tangle file name since :tangle is always
        set.  Don't prompt for a tangle file name when called with two
-       universal prefix arg outside of a src block.  Use
-       `org-babel-tangle-single-block'.
+       universal prefix arg outside of a src block.
+       Use `org-babel-tangle-single-block'.
        (org-babel-tangle-single-block): New function.
        (org-babel-tangle-collect-blocks): Use the new function.
 
        universal prefix arguments, set the warning time or the delay
        relatively to the current timestamp, not to today's date.
 
-       * org-agenda.el (org-agenda-filter-apply): Deactive
-       `org-agenda-entry-text-mode' when filtering.
+       * org-agenda.el (org-agenda-filter-apply):
+       Deactive `org-agenda-entry-text-mode' when filtering.
        (org-agenda-entry-text-mode): Don't allow in filtered views.
        Don't show the maximum number of lines when turning off.
 
        * org-macs.el (org-unmodified): Update comment.  Don't define
        `with-silent-modifications' for emacsen that don't have it.
 
-       * org-compat.el (org-with-silent-modifications): New
-       compatibility macro.
+       * org-compat.el (org-with-silent-modifications):
+       New compatibility macro.
 
        * org.el (org-refresh-category-properties)
        (org-refresh-properties, org-entry-blocked-p)
        * ox-publish.el (org-publish-sitemap-date-format): Small docstring
        enhancement.
 
-       * ox-latex.el (org-latex-format-headline-default-function): New
-       option.
+       * ox-latex.el (org-latex-format-headline-default-function):
+       New option.
        (org-latex-format-headline-function): Use the new option as
        the default value.
        (org-latex-toc-command): Don't add vertical space after the table
        (org-html-htmlized-org-css-url)
        (org-html-htmlize-region-for-paste): Rename from
        org-export-htmlize-*.
-       (org-html-htmlize-generate-css, org-html-fontify-code): Use
-       the correct names.
+       (org-html-htmlize-generate-css, org-html-fontify-code):
+       Use the correct names.
 
        * org-compat.el (org-file-equal-p): New compatibility function.
 
        (org-clock-in, org-clock-out): Set and delete
        `org-clock-current-task'.  Minor code clean-up.
 
-       * org-clock.el (org-clock-in, org-clock-in-last): Tell
-       `org-current-time' to always return a past time.
+       * org-clock.el (org-clock-in, org-clock-in-last):
+       Tell `org-current-time' to always return a past time.
 
        * org.el (org-current-time): New argument `past' to force
        returning a past time when rounding.
        `org-emphasis-alist' word constituents.
        (org-mode-transpose-word-syntax-table): Rename from
        `org-syntax-table'.
-       (org-transpose-words): Use
-       `org-mode-transpose-word-syntax-table'.
+       (org-transpose-words):
+       Use `org-mode-transpose-word-syntax-table'.
 
        * ox.el (org-export--dispatch-ui)
        (org-export--dispatch-action): Use integers for control chars.
        (org-edit-src-exit): Inconditionally kill the src/example
        editing buffer.
 
-       * org-pcomplete.el (pcomplete/org-mode/file-option): Require
-       'org-element.  This fixes a bug about unbound variable
+       * org-pcomplete.el (pcomplete/org-mode/file-option):
+       Require 'org-element.  This fixes a bug about unbound variable
        `org-element-affiliated-keywords' when trying to complete a
        keyword before 'org-element was required.
 
 
        * org.el (org-syntax-table, org-transpose-words): Delete.
        (org-mode): Syntactically Define {} and <> as parentheses.
-       (org-drag-line-forward, org-drag-line-backward): New
-       functions.
+       (org-drag-line-forward, org-drag-line-backward):
+       New functions.
        (org-shiftmetaup, org-shiftmetadown): Fall back on the new
        functions instead of throwing an error.
        (org-make-org-heading-search-string): Don't use statistic or [x/y]
        * org.el (org-emphasis-alist, org-protecting-blocks):
        * org-src.el (org-edit-src-find-region-and-lang):
        * org-list.el (org-list-forbidden-blocks):
-       * org-footnote.el (org-footnote-forbidden-blocks): Remove
-       references to the deleted DocBook exporter.
+       * org-footnote.el (org-footnote-forbidden-blocks):
+       Remove references to the deleted DocBook exporter.
 
        * org.el (org-end-of-line): Don't throw an error outside elements.
 
        (org-transpose-words): New command, simply wrapping the new
        syntax table around `transpose-words'.
        (org-mode-map): Bind `org-transpose-words' to `M-t'.
-       (org-store-link): Use keyword at point as the search string.  Use
-       `delq nil' instead of `delete nil'.
+       (org-store-link): Use keyword at point as the search string.
+       Use `delq nil' instead of `delete nil'.
        (org-make-org-heading-search-string): Rewrite using
        org-element.el.  Not an interactive function anymore.
 
        these list HTML tags: <ul> <dl> and <ol>.
 
        * org-clock.el (org-clock-timestamps-up)
-       (org-clock-timestamps-down, org-clock-timestamps-change): Add
-       an optional argument N to change timestamps by several units.
+       (org-clock-timestamps-down, org-clock-timestamps-change):
+       Add an optional argument N to change timestamps by several units.
 
        * org.el (org-shiftcontrolup, org-shiftcontroldown): Ditto.
 
        * org.el (org-block-entry-blocking): New variable.
        (org-todo): Use it.  Also use `user-error' when a TODO state
        change is blocked.
-       (org-block-todo-from-children-or-siblings-or-parent): Display
-       `org-block-entry-blocking' in the user-error message.
+       (org-block-todo-from-children-or-siblings-or-parent):
+       Display `org-block-entry-blocking' in the user-error message.
 
        * org.el (org-get-cursor-date): New optional argument WITH-TIME to
        add the time of the day.
        (org-use-last-clock-out-time-as-effective-time): New option.
        (org-current-effective-time): Use the new option.
 
-       * org-clock.el (org-clock-get-last-clock-out-time): New
-       function.
+       * org-clock.el (org-clock-get-last-clock-out-time):
+       New function.
 
        * org.el (org-toggle-inline-images): Only send a message when
        called interactively.
        (org-agenda-get-blocks, org-agenda-change-all-lines): Add a
        new text property 'level, a string with as many whitespaces as
        the level of the item.
-       (org-agenda-format-item, org-compile-prefix-format): Handle
-       the new `%l' specifier.
+       (org-agenda-format-item, org-compile-prefix-format):
+       Handle the new `%l' specifier.
 
        * org-colview.el (org-columns-next-allowed-value): Add the
        CLOCKSUM property to the list of properties that can be
        * org-agenda.el (org-agenda-custom-commands-local-options):
        (org-agenda-span, org-agenda-ndays-to-span)
        (org-agenda-span-to-ndays, org-agenda-list, org-agenda-later)
-       (org-agenda-change-time-span, org-agenda-compute-starting-span): Add
-       support for fortnight view.
+       (org-agenda-change-time-span, org-agenda-compute-starting-span):
+       Add support for fortnight view.
        (org-agenda-menu): Add fortnight view command.
        (org-agenda-fortnight-view): New command.
 
        * org-timer.el (org-clock-sound): Silence compiler.
 
-       * org.el (org-beginning-of-line, org-end-of-line): Bind
-       deactivate-mark to avoid that this command deactivates it.
+       * org.el (org-beginning-of-line, org-end-of-line):
+       Bind deactivate-mark to avoid that this command deactivates it.
        (org-make-tags-matcher): Do not interpret / in property value as
        starter of TODO match.
        (org-overview): Preserve point.
 
        * org.el (org-unlogged-message): New function.
        (org-cycle, org-cycle-internal-global, org-cycle-internal-local)
-       (org-global-cycle, org-display-outline-path): Use
-       `org-unlogged-message'.
+       (org-global-cycle, org-display-outline-path):
+       Use `org-unlogged-message'.
 
-       * org-pcomplete.el (org-make-org-heading-search-string): Fix
-       function declaration.
+       * org-pcomplete.el (org-make-org-heading-search-string):
+       Fix function declaration.
        (pcomplete/org-mode/searchhead): Remove incorrect second arguments
        to `org-make-org-heading-search-string'.
 
        (org-display-outline-path): Do not log outline path in Message
        buffer.
        (org-agenda-ignore-drawer-properties): New option.
-       (org-agenda-prepare-buffers): Honour
-       `org-agenda-ignore-drawer-properties'.
+       (org-agenda-prepare-buffers):
+       Honour `org-agenda-ignore-drawer-properties'.
 
        * org-clock.el (org-clock-goto): Recenter to thrd line
 
        (org-set-regexps-and-options-for-tags): Use `org-bookmark-names-plist'.
        (org-refile): Use `org-bookmark-names-plist'.
 
-       * org-capture.el (org-capture-bookmark-last-stored-position): Use
-       `org-bookmark-names-plist'.
+       * org-capture.el (org-capture-bookmark-last-stored-position):
+       Use `org-bookmark-names-plist'.
 
        * org.el (org-insert-heading): Rewritten from scratch.
        (org-N-empty-lines-before-current): New function
 
        * org-ctags.el (org-ctags-path-to-ctags): Avoid usine `case'.
 
-       * org.el (org-beginning-of-line, org-end-of-line): Set
-       disable-point-adjustment when the command ends next to invisible
+       * org.el (org-beginning-of-line, org-end-of-line):
+       Set disable-point-adjustment when the command ends next to invisible
        text.
 
        * ob-lob.el (org-babel-lob-files): Fix custom type.
 
 2013-11-12  Christian Moe  <mail@christianmoe.com>
 
-       * ox-odt.el (org-odt-line-break, org-odt-plain-text): Remove
-       newline after line-break tag.
+       * ox-odt.el (org-odt-line-break, org-odt-plain-text):
+       Remove newline after line-break tag.
 
 2013-11-12  Christophe Junke  <christophe.junke@inria.fr>  (tiny change)
 
        property.
        (org-heading-components): Use `org-heading-regexp' in
        orgstruct-mode.
-       (orgstruct-heading-prefix-regexp, orgstruct-setup-hook): New
-       options.
+       (orgstruct-heading-prefix-regexp, orgstruct-setup-hook):
+       New options.
        (orgstruct-initialized): New variable.
        (org-get-local-variables): Honour state property.
        (org-run-like-in-org-mode): Use `let' instead of `progv'.  Do not
        override variables with non-default values.
        (org-forward-heading-same-level): Do not skip to headlines on
        another level.  Handle negative prefix argument correctly.
-       (org-backward-heading-same-level): Use
-       `org-forward-heading-same-level'.
+       (org-backward-heading-same-level):
+       Use `org-forward-heading-same-level'.
 
 2013-11-12  Craig Tanis  <craig-tanis@utc.edu>  (tiny change)
 
 
        * ox-html.el (org-html-doctype-alist): New variable holding an
        alist of (X)HTML doctypes
-       (org-html-xhtml-p, org-html-html5-p, org-html-close-tag): New
-       function.
+       (org-html-xhtml-p, org-html-html5-p, org-html-close-tag):
+       New function.
        (org-html-html5-fancy): New export option, determining whether or
        not to use HTML5-specific elements.
        (org-html-html5-elements): New variable, new HTML5 elements.
        (org-html-format-list-item, org-html-line-break, org-html-table)
        (org-html-verse-block): Changes to allow flavored export.
 
-       * ox-latex.el (org-latex--org-table, org-latex-table-row): Allow
-       use of the "tabu" and "longtabu" table environments.  New table
+       * ox-latex.el (org-latex--org-table, org-latex-table-row):
+       Allow use of the "tabu" and "longtabu" table environments.  New table
        attribute :spread handles the width specification syntax of "tabu"
        and "longtabu" table environments.
 
        * ob-sh.el (org-babel-sh-evaluate):
        * ob-shen.el (org-babel-execute:shen):
        * ob-sql.el (org-babel-execute:sql):
-       * ob-sqlite.el (org-babel-execute:sqlite): Use
-       `org-babel-result-cond'.
+       * ob-sqlite.el (org-babel-execute:sqlite):
+       Use `org-babel-result-cond'.
 
        * ob.el (org-babel-common-header-args-w-values): Add a new "none"
        header argument.
        :padnewlines to "yes".  Either way lets just remove this which
        shouldn't have any functional effect.
 
-       * ob-haskell.el (org-babel-default-header-args:haskell): Set
-       :padlines to "no" by default.
+       * ob-haskell.el (org-babel-default-header-args:haskell):
+       Set :padlines to "no" by default.
 
        * ob-exp.el (org-babel-exp-non-block-elements): Ignore inline
        source block on #+ prefixed lines.
        * ob-sh.el (org-babel-sh-var-to-string): Fix bug in ob-sh when
        dealing with list variables.
 
-       * ob-core.el (org-babel-demarcate-block): Include
-       `org-src-lang-modes' in block demarcation options.
+       * ob-core.el (org-babel-demarcate-block):
+       Include `org-src-lang-modes' in block demarcation options.
 
        * ob-C.el: Don't modify `org-babel-load-languages' from ob-*
        files.
        * ob-gnuplot.el (org-babel-header-args:gnuplot): Term is a gnuplot
        header argument.
 
-       * ob-tangle.el (org-babel-tangle): Fixed bug in tangle-file.
+       * ob-tangle.el (org-babel-tangle): Fix bug in tangle-file.
        Collect tangle modes, and only apply them to the file after all
        tangling has completed, including the post-tangle-hook.
 
        * ob-core.el (org-babel-current-src-block-location):
        (org-babel-execute-src-block):
        * ob-exp.el (org-babel-exp-results):
-       * ob-lob.el (org-babel-lob-execute): Rename
-       `org-babel-current-exec-src-block-head' to
+       * ob-lob.el (org-babel-lob-execute):
+       Rename `org-babel-current-exec-src-block-head' to
        `org-babel-current-src-block-location'.
 
        * ob-core.el (org-babel-common-header-args-w-values): Adding the
        `org-babel-current-exec-src-block-head' variable when executing
        inline or lob style code.
 
-       * ob-core.el (org-babel-execute-src-block): The
-       `org-babel-current-exec-src-block-head' variable should point to
+       * ob-core.el (org-babel-execute-src-block):
+       The `org-babel-current-exec-src-block-head' variable should point to
        the outermost code block.
 
        * org.el (org-some): An org-mode version of the cl some function.
        * org.el (org-every): An Org-mode version of the cl every
        function.
 
-       * ob-tangle.el (org-babel-tangle-jump-to-org): Use
-       `org-src-switch-to-buffer' to jump from src to org.  Use the
+       * ob-tangle.el (org-babel-tangle-jump-to-org):
+       Use `org-src-switch-to-buffer' to jump from src to org.  Use the
        existing `org-edit-src' functionality to jump back to the correct
        point in the code block in the original Org-mode buffer.
 
        * ob-js.el (org-babel-execute:js): Use `org-babel-result-cond' in
        JavaScript code blocks.
 
-       * ob-scheme.el (org-babel-execute:scheme): Use
-       `org-babel-result-cond' in scheme code blocks.
+       * ob-scheme.el (org-babel-execute:scheme):
+       Use `org-babel-result-cond' in scheme code blocks.
 
-       * ob-ocaml.el (org-babel-execute:ocaml): Use
-       `org-babel-result-cond' in OCaml code blocks.
+       * ob-ocaml.el (org-babel-execute:ocaml):
+       Use `org-babel-result-cond' in OCaml code blocks.
 
-       * ob-haskell.el (org-babel-execute:haskell): Use
-       `org-babel-result-cond' in Haskell code blocks.
+       * ob-haskell.el (org-babel-execute:haskell):
+       Use `org-babel-result-cond' in Haskell code blocks.
 
        * ob-core.el (org-babel-result-cond): The "raw", "org" and
        "drawer" :results header argument values preclude table processing
        (org-babel-insert-result): Cycle tables for :results org and
        :results wrap.
 
-       * ob-python.el (org-babel-python-initiate-session-by-key): Fixed a
+       * ob-python.el (org-babel-python-initiate-session-by-key): Fix a
        bug pointed out by Gary Oberbrunner.
        (org-babel-python-initiate-session-by-key): Add "-i" to the python
        command on windows sessions.  Actually setting new session names.
        (org-babel-confirm-evaluate): Fix whitespaces.
        (org-babel-execute-src-block): A cond makes it more clear that we
        definitely do not execute without user confirmation.
-       (org-babel-call-process-region-original): Fixed line over 80 chars
+       (org-babel-call-process-region-original): Fix line over 80 chars
        long.
 
        * ob-tangle.el (org-babel-tangle-collect-blocks): Update comment
        * ox-html.el (org-html-latex-environment)
        (org-html-latex-fragment): Fix imagemagick support.
 
-       * org.el (org-create-formula-image-with-imagemagick): Generate
-       correct size formula image.
+       * org.el (org-create-formula-image-with-imagemagick):
+       Generate correct size formula image.
        (org-format-latex-header): Change pagestyle command position.
 
        * ox-latex.el (org-latex--caption/label-string): Allow to build a
 
        * org.el (org-reftex-citation): Fix contrib package name in the
        docstring.
-       (org-preview-latex-fragment, org-display-inline-images): Detect
-       whether a graphic display is available before inlining images to
+       (org-preview-latex-fragment, org-display-inline-images):
+       Detect whether a graphic display is available before inlining images to
        prevent an error.
        (org-startup-with-latex-preview): New option.
        (org-startup-options): New startup keywords for the new option.
        (org-reverse-string): Add `org-reverse-string' to reverse a
        string.
 
-       * org-id.el (org-id-new, org-id-decode): Replace
-       `org-id-reverse-string' by `org-reverse-string'.
+       * org-id.el (org-id-new, org-id-decode):
+       Replace `org-id-reverse-string' by `org-reverse-string'.
 
        * ob-core.el (org-babel-trim): Replace `org-babel-reverse-string'
        by `org-reverse-string' and declare it.
        * ox-md.el: Remove comments at the beginning of the file since
        the library is documented in Org manual.
 
-       * org-element.el (org-element--list-struct): Use
-       `org-match-string-no-properties'.  Fix block parsing in lists.
+       * org-element.el (org-element--list-struct):
+       Use `org-match-string-no-properties'.  Fix block parsing in lists.
 
        * ox-publish.el (org-publish-all): Fix compilation problem.
 
-       * org-element.el (org-element-timestamp-interpreter): Correctly
-       interpret timestamps with delays.
+       * org-element.el (org-element-timestamp-interpreter):
+       Correctly interpret timestamps with delays.
        (org-element-timestamp-parser)
        (org-element-timestamp-interpreter): Parse warning delays.
 
        Fix infloop when called on a blank line at the end of the buffer
        after a headline.
 
-       * org.el (org-forward-paragraph, org-backward-paragraph): New
-       functions.
+       * org.el (org-forward-paragraph, org-backward-paragraph):
+       New functions.
 
        * org.el (org-meta-return): Allow M-RET to insert items within
        drawers.  Rewrite function.
 
-       * org-element.el (org-element-footnote-definition-parser): Fix
-       value for :contents-begin when first line of footnote definition
+       * org-element.el (org-element-footnote-definition-parser):
+       Fix value for :contents-begin when first line of footnote definition
        is empty besides the label.
        (org-element-at-point): Return correct element when point is on a
        blank line just below a headline.
-       (org-element-paragraph-parser): Use
-       `org-match-string-no-properties'.  Small fixes to paragraph
+       (org-element-paragraph-parser):
+       Use `org-match-string-no-properties'.  Small fixes to paragraph
        parsing.
 
        * org.el (org-adaptive-fill-function): Do not handle
 
        * ox-publish.el (project-plist): Remove variable.
 
-       * ox.el (org-export-to-buffer, org-export-to-file): Fix
-       docstrings.
+       * ox.el (org-export-to-buffer, org-export-to-file):
+       Fix docstrings.
 
        * ox-org.el (org-export-as-org): Add missing BODY-ONLY argument,
        which is always nil in this back-end.
        (org-export--dispatch-action): Maintain compatibility with Emacs
        23.
 
-       * org.el (org-adaptive-fill-function, org-fill-paragraph): Add
-       support for `adaptive-fill-regexp' in paragraphs and comments.
+       * org.el (org-adaptive-fill-function, org-fill-paragraph):
+       Add support for `adaptive-fill-regexp' in paragraphs and comments.
        (org-indent-line): Fix indentation after a list.
 
        * ox.el (org-export--get-inbuffer-options): Multiple options can
        * ox-latex.el (org-latex-template): Fix missing newlines in
        header.
 
-       * ox.el (org-export-insert-default-template): Fix
-       "wrong-type-argument" error in template insertion.
+       * ox.el (org-export-insert-default-template):
+       Fix "wrong-type-argument" error in template insertion.
 
        * org.el (org-fill-paragraph): Use empty commented lines as
        separators when filling comments.  This mimics default behavior
 
        * ox-latex.el (org-latex-listings): Update docstring.
 
-       * org-pcomplete.el (pcomplete/org-mode/file-option/options): Apply
-       changes to export back-end definiton.
+       * org-pcomplete.el (pcomplete/org-mode/file-option/options):
+       Apply changes to export back-end definiton.
 
        * org.el (org-get-export-keywords): Apply changes to export
        back-end definiton.
        (org-odt-format-headline--wrap): Use `org-export-with-backend'
        instead of `org-export-with-translations'.
 
-       * ox.el (org-export--registered-backends): Renamed from
+       * ox.el (org-export--registered-backends): Rename from
        `org-export-registered-backends'.
-       (org-export-invisible-backends): Removed variable.
+       (org-export-invisible-backends): Remove variable.
        (org-export-get-backend, org-export-get-all-transcoders
-       org-export-get-all-options, org-export-get-all-filters): New
-       functions.  It replaces `org-export-backend-translate-table'.
+       org-export-get-all-options, org-export-get-all-filters):
+       New functions.  It replaces `org-export-backend-translate-table'.
        (org-export-barf-if-invalid-backend, org-export-derived-backend-p,
        org-export-define-backend, org-export-define-derived-backend):
        Rewrite functions using new representation.
        org-export--get-inbuffer-options, org-export--get-global-options,
        org-export-to-buffer org-export-to-file, org-export-string-as
        org-export-replace-region-by): Update docstring.
-       (org-export-data-with-translations): Remove function.  Use
-       `org-export-data-with-backend' with a temporary back-end instead.
+       (org-export-data-with-translations): Remove function.
+       Use `org-export-data-with-backend' with a temporary back-end instead.
        (org-export-data-with-backend, org-export-as): Reflect new definition
        for back-ends.
        (org-export--dispatch-action, org-export--dispatch-ui): Reflect new
 
        * ox-html.el (org-html-link): Small refactoring.
 
-       * org-element.el (org-element--current-element): Fix
-       org-meta-return error at the end of buffer.
+       * org-element.el (org-element--current-element):
+       Fix org-meta-return error at the end of buffer.
 
        * ox-odt.el (org-odt-category-map-alist): Fix internationalization
        of "Table" and "Listing".
        (org-latex-long-listings): Remove variable.
 
        * org-element.el (org-element--list-struct): New function.
-       (org-element-plain-list-parser, org-element--current-element): Use
-       new function.
+       (org-element-plain-list-parser, org-element--current-element):
+       Use new function.
 
        * ox-man.el (org-man-compile):
        * ox-texinfo.el (org-texinfo-compile): Use appropriate argument.
 
        * ox-md.el (md): Delegate underscore transcoding to HTML back-end.
 
-       * org-element.el (org-element--remove-indentation): Small
-       optimization.
+       * org-element.el (org-element--remove-indentation):
+       Small optimization.
        (org-element--remove-indentation): New function.
        (org-element-example-block-parser, org-element-src-block-parser):
        Use new function.
        `org-list-allow-alphabetical' when changed after org.el has been
        loaded.
 
-       * org-element.el (org-element-fixed-width-interpreter): Fix
-       interpretation of fixed-width elements with a nil or empty string
+       * org-element.el (org-element-fixed-width-interpreter):
+       Fix interpretation of fixed-width elements with a nil or empty string
        value.
 
        * ox-html.el (org-html-link): Don't skip the link description when
        * ox-icalendar.el (icalendar): Ignore footnotes.
        (org-icalendar--combine-files): Small refactoring.
 
-       * ox.el (org-export--skip-p, org-export--interpret-p): When
-       `org-export-with-footnotes' is nil, ignore completely footnotes
+       * ox.el (org-export--skip-p, org-export--interpret-p):
+       When `org-export-with-footnotes' is nil, ignore completely footnotes
        references and definitions instead of exporting them verbatim.
 
        * ox-beamer.el (org-beamer--frame-level): Small refactoring.
        * ox-html.el (html): Rename :html-table-tag property into
        :org-table-attributes.
        (org-html-table-default-attributes): New variable.
-       (org-html-table-tag): Removed variable.
+       (org-html-table-tag): Remove variable.
        (org-html--make-attribute-string): New function.
        (org-html-link--inline-image, org-html-table): Use new function.
-       (org-html-splice-attributes, org-export-splice-style): Remove
-       functions.
+       (org-html-splice-attributes, org-export-splice-style):
+       Remove functions.
        (org-html-inline-image-rules): Remove out of context part of the
        docstring.
 
        (org-export-with-sub-superscripts, org-export-with-toc)
        (org-export-with-tables, org-export-with-tags)
        (org-export-with-tasks, org-export-time-stamp-file)
-       (org-export-with-timestamps, org-export-with-todo-keywords): Fix
-       docstrings.
+       (org-export-with-timestamps, org-export-with-todo-keywords):
+       Fix docstrings.
 
        * ox-html.el (org-html-postamble-format): Slightly change default
        value so "Generated by" string doesn't get duplicated.
        (org-export--dispatch-ui, org-export--dispatch-action): Access to
        the function through the dispatcher.
 
-       * ox-icalendar.el (org-icalendar-convert-timestamp): Update
-       docstring.
+       * ox-icalendar.el (org-icalendar-convert-timestamp):
+       Update docstring.
        (org-icalendar-dtstamp): New function.
        (org-icalendar--vevent, org-icalendar--vtodo): Use new function.
 
        (org-macro-initialize-templates): Apply signature change from function
        above.
 
-       * ox.el (org-export--list-bound-variables): Renamed from
+       * ox.el (org-export--list-bound-variables): Rename from
        `org-export--install-letbind-maybe'.  Though, only return list of
        bound variables instead of installing them as buffer-local
        variables.
        * ox-man.el (org-man-table--org-table): Use new attribute syntax.
        Small refactoring.
 
-       * ox-odt.el (org-odt-link--inline-image, org-odt-table-cell): Use
-       new attribute syntax.
+       * ox-odt.el (org-odt-link--inline-image, org-odt-table-cell):
+       Use new attribute syntax.
 
        * ox.el (org-export-async-start): Remove code evaluation queries
        from asynchronous export.
        * ox-latex.el (org-latex-inline-image-rules)
        (org-latex-default-table-environment)
        (org-latex-default-table-mode, org-latex-tables-booktabs)
-       (org-latex-table-scientific-notation, org-latex-known-errors): Add
-       :version and :package-version.
+       (org-latex-table-scientific-notation, org-latex-known-errors):
+       Add :version and :package-version.
 
        * ox-md.el (org-md-headline-style): Add :version and
        :package-version.
        * ox.el (org-export-with-drawers, org-export-with-latex)
        (org-export-with-inlinetasks, org-export-with-planning)
        (org-export-with-smart-quotes, org-export-with-statistics-cookies)
-       (org-export-allow-bind-keywords, org-export-async-init-file): Add
-       :version and :package-version.
+       (org-export-allow-bind-keywords, org-export-async-init-file):
+       Add :version and :package-version.
 
        * ox-icalendar.el (org-icalendar-export-to-ics): Change back-end
        name from `e-ascii' to `ascii'.
        * org.el (org-fill-paragraph): Small refactoring to
        `org-fill-paragraph'.  Do not look for table cells in a paragraph.
 
-       * org-element.el (org-element-object-restrictions): Simplify
-       restrictions within secondary strings and objects.
+       * org-element.el (org-element-object-restrictions):
+       Simplify restrictions within secondary strings and objects.
 
        * org-list.el (org-list-send-list): Do not rely on
        `org-list-parse-list'.
-       (org-list-to-latex, org-list-to-html, org-list-to-texinfo): Use
-       appropriate export back-end instead of using
+       (org-list-to-latex, org-list-to-html, org-list-to-texinfo):
+       Use appropriate export back-end instead of using
        `org-list-to-generic'.
 
        * ox-html.el (org-html-inner-template): Remove contents div and
        (org-icalendar-export-current-agenda): Integrate previous
        functions.
 
-       * ox-latex.el (org-latex-format-headline-default-function): Use
-       declarative shape to nest makup for TODO keywords.  Previous
-       syntax generated errors during export.
+       * ox-latex.el (org-latex-format-headline-default-function):
+       Use declarative shape to nest makup for TODO keywords.
+       Previous syntax generated errors during export.
 
        * ox.el (org-export-async-start): Ignore `org-mode-hook' and
        `kill-emacs-hook'.  The first one has been run in the original
        computing minimal headline level.
 
        * org.el (org-do-latex-and-related): Fix infloop when user
-       provides a wrong value for `org-highlight-latex-and-related'.  In
-       this case, `org-latex-and-related-regexp' is the empty string and
+       provides a wrong value for `org-highlight-latex-and-related'.
+       In this case, `org-latex-and-related-regexp' is the empty string and
        generates an infloop since matching it doesn't move point.
 
-       * org-element.el (org-element-headline-parser): Rename
-       :optional-title into :alt-title.
+       * org-element.el (org-element-headline-parser):
+       Rename :optional-title into :alt-title.
 
-       * ox.el (org-export-get-alt-title): Renamed from
+       * ox.el (org-export-get-alt-title): Rename from
        `org-export-get-optional-title'.
 
        * ox-ascii.el (org-ascii--build-title):
        * ox-latex.el (org-latex-compile): Add an optional argument for
        latex snippet previewing.
 
-       * org.el (org-create-formula-image-with-imagemagick): Use
-       `org-latex-compile' instead of rewriting it.
+       * org.el (org-create-formula-image-with-imagemagick):
+       Use `org-latex-compile' instead of rewriting it.
 
        * ox-html.el (org-html-fontify-code): Do not use [^\000] in
        regexps that may match large strings.
        (org-element-plain-link-successor): New function.
 
        * org.el (org-match-substring-regexp)
-       (org-match-substring-with-braces-regexp): Update regexp.  A
-       sub/superscript cannot start anymore at the beginning of the line
+       (org-match-substring-with-braces-regexp): Update regexp.
+       sub/superscript cannot start anymore at the beginning of the line
        or after a space.
 
        * org-element.el (org-element--get-next-object-candidates):
 
        * ox-html.el (org-html--format-toc-headline): Fix function name.
        (org-html-toc, org-html--toc-text): Change to docstring.
-       (org-html-list-of-listings, org-html-list-of-tables): New
-       functions.
+       (org-html-list-of-listings, org-html-list-of-tables):
+       New functions.
        (org-html-keyword): Use new functions.
        (org-html-src-block): Add an ID attribute when a name is given.
 
-       * org-element.el (org-element-footnote-definition-parser): Require
-       2 blank lines to separate footnote definition.
+       * org-element.el (org-element-footnote-definition-parser):
+       Require 2 blank lines to separate footnote definition.
 
        * org-footnote.el (org-footnote-at-definition-p): Require 2 blank
        lines to separate footnote definition.
        (org-export-stack-refresh): Refactor.
        (org-export-stack-remove, org-export-stack-view): Apply renaming.
        (org-export-stack-mode-map): Use tabulated list map as a basis.
-       (org-export-stack--generate, org-export-stack--num-predicate): New
-       function.
+       (org-export-stack--generate, org-export-stack--num-predicate):
+       New function.
        (org-export-get-optional-title): Return regular title when no
        optional title is found.
 
        * ox-latex.el (org-latex-headline): Apply change to
        `org-export-get-optional-title'.
 
-       * ox-ascii.el (org-ascii--build-title): Add an argument.  Use
-       optional title when building a toc line.
+       * ox-ascii.el (org-ascii--build-title): Add an argument.
+       Use optional title when building a toc line.
        (org-ascii--build-toc): Call `org-ascii--build-title' with
        appropriate arguments.
 
        * ox-latex.el (org-latex-headline): Use optional title for table
        of contents.
 
-       * ox-html.el (org-html--toc-text): Renamed from
+       * ox-html.el (org-html--toc-text): Rename from
        `org-html-toc-text'.  Add docstring.
-       (org-html--format-toc-headline): Renamed from
+       (org-html--format-toc-headline): Rename from
        `org-html-format-toc-headline'.  Add docstring.  Use optional
        title if possible.
        (org-html-toc): Add docstring.
 
        * ox.el (org-export-get-optional-title): New function.
 
-       * ox-latex.el (org-latex-format-headline-default-function): Make
-       the variable a function.
+       * ox-latex.el (org-latex-format-headline-default-function):
+       Make the variable a function.
 
-       * ox-publish.el (org-publish-resolve-external-fuzzy-link): No
-       error when resolving external fuzzy links outside publishing.
+       * ox-publish.el (org-publish-resolve-external-fuzzy-link):
+       No error when resolving external fuzzy links outside publishing.
        Though search option for these links will not be resolved.
 
        * ox-latex.el (org-latex-guess-inputenc): Set inputenc option
        according to `org-export-coding-system'.
 
-       * ox.el (org-export--generate-copy-script): Clone
-       `buffer-file-coding-system' when creating a buffer copy.
+       * ox.el (org-export--generate-copy-script):
+       Clone `buffer-file-coding-system' when creating a buffer copy.
 
        * ox-html.el (org-html-link): Resolve external links with search
        options like [[file.org::#custom-id]] or
 
        * ox-latex.el (org-latex-property-drawer): Remove function.
 
-       * ox-ascii.el (org-ascii-filter-paragraph-spacing): Remove
-       reference to now renamed `e-ascii' back-end.
+       * ox-ascii.el (org-ascii-filter-paragraph-spacing):
+       Remove reference to now renamed `e-ascii' back-end.
 
        * ox-beamer.el (org-beamer-template): Allow to span documentclass
        options accross multiple lines in template.
        * org-element.el (org-element-map): Allow to map over any list.
        Do not restrict mapping to object types.
 
-       * org-faces.el (org-latex-and-related): Renamed from
+       * org-faces.el (org-latex-and-related): Rename from
        `org-latex-and-export-specials', which wasn't appropriate anymore.
 
        * org.el (org-highlight-latex-and-related)
        (org-latex-and-related-regexp): New variables.
-       (org-compute-latex-and-related-regexp, org-do-latex-and-related): New
-       function, revived from a previous commit.
+       (org-compute-latex-and-related-regexp, org-do-latex-and-related):
+       New function, revived from a previous commit.
        (org-set-regexps-and-options, org-set-font-lock-defaults): Use new
        functions.
        (org-set-regexps-and-options): Remove reference to LATEX_CLASS and
        * org-element.el (org-element-link-parser): Do not remove newlines
        characters in paths anymore, since this is not required.
 
-       * ox.el (org-export--dispatch-ui): Renamed from
+       * ox.el (org-export--dispatch-ui): Rename from
        `org-export-dispatch-ui'.  Handle scrolling.
-       (org-export--dispatch-action): Renamed from
+       (org-export--dispatch-action): Rename from
        `org-export-dispatch-action'.  Implement scrolling.
        (org-export-dispatch): Apply renaming.
 
 
        * ox.el (org-export-stack-mode): Fix docstring.
 
-       * org-pcomplete.el (pcomplete/org-mode/file-option): Allow
-       completion for ATTR_ prefixed keywords.
+       * org-pcomplete.el (pcomplete/org-mode/file-option):
+       Allow completion for ATTR_ prefixed keywords.
 
        * org.el (org-options-keywords): Add missing colons.
 
-       * org-macs.el (org-default-options): Removed function.
+       * org-macs.el (org-default-options): Remove function.
 
        * org-pcomplete.el (org-command-at-point): Fix bug with some file
        options.
-       (pcomplete/org-mode/file-option/x): Removed macro.
+       (pcomplete/org-mode/file-option/x): Remove macro.
        (pcomplete/org-mode/file-option): Refactor code.
        (pcomplete/org-mode/file-option/author)
        (pcomplete/org-mode/file-option/date)
 
        * ox-ascii.el (org-ascii-inner-template): New function.
        (org-ascii-template): Use new function.
-       (org-ascii-export-as-ascii, org-ascii-export-to-ascii): Update
-       docstring.
+       (org-ascii-export-as-ascii, org-ascii-export-to-ascii):
+       Update docstring.
 
        * org-element.el (org-element-link-parser): Take into
        consideration links filled and indented.
        * org-element.el (org-element-nested-p): Do not inline function.
 
        * ox.el (org-export-copy-buffer, org-export-with-buffer-copy)
-       (org-export--generate-copy-script): Moved earlier in the file.
+       (org-export--generate-copy-script): Move earlier in the file.
 
        * ox-texinfo.el (org-texinfo-link): Do not transform path part of
        internal links.
        required in the external process.
 
        * org.el (org-format-latex-header-extra, org-export-have-math):
-       Removed variables.
-       (org-latex-default-packages-alist): Renamed from
+       Remove variables.
+       (org-latex-default-packages-alist): Rename from
        `org-export-latex-default-packages-alist'.
-       (org-latex-packages-alist): Renamed from
+       (org-latex-packages-alist): Rename from
        `org-export-latex-packages-alist'.
        (org-try-cdlatex-tab, org-cdlatex-underscore-caret,
        org-cdlatex-math-modify): Reorder in file.
 
        * org-entities.el (org-entities-user): Update docstring.
 
-       * ox-latex.el (org-latex-classes, org-latex-listings): Update
-       docstring.
-       (org-latex-guess-inputenc): Renamed from `org-latex--guess-inputenc'.
-       (org-latex-guess-babel-language): Renamed from
+       * ox-latex.el (org-latex-classes, org-latex-listings):
+       Update docstring.
+       (org-latex-guess-inputenc): Rename from `org-latex--guess-inputenc'.
+       (org-latex-guess-babel-language): Rename from
        `org-latex--guess-babel-language'.
        (org-latex-template): Apply renaming.
 
        copying it.
 
        * org-macs.el (org-if-unprotected, org-if-unprotected-1)
-       (org-if-unprotected-at): Removed macros.
-       (org-re-search-forward-unprotected): Removed function.
+       (org-if-unprotected-at): Remove macros.
+       (org-re-search-forward-unprotected): Remove function.
 
        * org.el (org-format-latex):
        * org-list.el (org-list-struct):
        * org-capture.el (org-capture-fill-template): Remove reference to
        `org-protected'.
 
-       * ob-exp.el (org-babel-exp-process-buffer): Renamed from
+       * ob-exp.el (org-babel-exp-process-buffer): Rename from
        `org-export-blocks-preprocess'.
 
        * ox.el (org-export-execute-babel-code): Apply previous renaming.
        framework.
        (pcomplete/org-mode/file-option/options): Rewrite using new export
        framework.  Only complete up to the colon.
-       (pcomplete/org-mode/file-option/x): Removed macro.
+       (pcomplete/org-mode/file-option/x): Remove macro.
        (pcomplete/org-mode/file-option/title)
        (pcomplete/org-mode/file-option/author)
        (pcomplete/org-mode/file-option/email)
-       (pcomplete/org-mode/file-option/date): Removed functions.
+       (pcomplete/org-mode/file-option/date): Remove functions.
        (pcomplete/org-mode/file-option/infojs_opt): New function.
 
        * org-clock.el (org-clocktable-defaults)
        function.
 
        * org-inlinetask.el (org-inlinetask-export)
-       (org-inlinetask-export-templates): Removed variables.
-       (org-inlinetask-export-handler): Removed function.
+       (org-inlinetask-export-templates): Remove variables.
+       (org-inlinetask-export-handler): Remove function.
 
        * org-plot.el: Remove dependency on `org-exp' library.
 
        * org-agenda.el (org-agenda-menu, org-agenda-write): Use new
        iCalendar export back-end.
 
-       * org-table.el (org-table-export, orgtbl-export): Remove
-       dependency on `org-exp' library.
+       * org-table.el (org-table-export, orgtbl-export):
+       Remove dependency on `org-exp' library.
        (org-table-clean-before-export): New function.
        (org-table-colgroup-info): New variable.
        (orgtbl-to-html): Use to new HTML export back-end.
        Elements.
 
        * org-element.el (org-element-at-point): When point is before any
-       element, in the first blank lines of the buffer, return nil.  When
-       point is within blank lines just after a headline, return that
+       element, in the first blank lines of the buffer, return nil.
+       When point is within blank lines just after a headline, return that
        headline.
        (org-element-context): Return nil when point is within the blank at
        the beginning of the buffer.
 
        * org.el (org-edit-special): Fix regression.
        (org-timestamp-has-time-p, org-timestamp-format)
-       (org-timestamp-split-range, org-timestamp-translate): New
-       functions.
+       (org-timestamp-split-range, org-timestamp-translate):
+       New functions.
 
-       * org-element.el (org-element-timestamp-interpreter): Interpret
-       timestamps ranges with repeaters.
+       * org-element.el (org-element-timestamp-interpreter):
+       Interpret timestamps ranges with repeaters.
 
        * org.el (org-edit-special): Rewrite `org-edit-special' using Org
        Elements tools.  Behavior should be unchanged.
        * org.el (org-all-targets): Fix radio targets detection when
        object is directly followed by a non-whitespace character.
 
-       * ob.el (org-babel-use-quick-and-dirty-noweb-expansion): Renamed
-       from `org-babel-use-quick-and-dirty-noweb-expansion'.
+       * ob.el (org-babel-use-quick-and-dirty-noweb-expansion):
+       Rename from `org-babel-use-quick-and-dirty-noweb-expansion'.
        (org-babel-expand-noweb-references): Use new variable name.
 
-       * org-element.el (org-element-timestamp-interpreter): Fix
-       timestamp interpreter when raw value isn't available.
+       * org-element.el (org-element-timestamp-interpreter):
+       Fix timestamp interpreter when raw value isn't available.
 
        * ob-exp.el (org-babel-exp-non-block-elements): Make sure to parse
        inline babel call or inline src block instead of the following
        (org-element-horizontal-rule-parser, org-element-keyword-parser)
        (org-element-latex-environment-parser)
        (org-element-paragraph-parser, org-element-src-block-parser)
-       (org-element-table-parser, org-element-verse-block-parser): Add
-       `:post-affiliated' property to elements.
+       (org-element-table-parser, org-element-verse-block-parser):
+       Add `:post-affiliated' property to elements.
        (org-element-inlinetask-parser): Remove affilated keywords.
 
        * org.el (org-adaptive-fill-function): Use new property.
        (org-element--current-element): Tiny refactoring.
 
        * ob.el (org-babel-where-is-src-block-result): Insert new results
-       keyword in current narrowed part of buffer, if necessary.  Small
-       refactoring.
+       keyword in current narrowed part of buffer, if necessary.
+       Small refactoring.
        (org-babel-insert-result): Do not widen buffer when new results have
        to be inserted.  Therefore, results inserted after the last block of
        a narrowed buffer still belong to the narrowed part of the buffer.
        (org-element-diary-sexp-parser)
        (org-element-diary-sexp-interpreter): New functions.
        (org-element-horizontal-rule-parser)
-       (org-element-keyword-parser, org-element--current-element): Small
-       refactoring.
+       (org-element-keyword-parser, org-element--current-element):
+       Small refactoring.
        (org-element-property): Access to text properties when argument is
        a string.
        (org-element-put-property): Correctly set property when target is
 
        * org.el (org-all-targets): Make sure the regexp really matched a
        radio target.
-       (org-macro-expand, org-macro-replace-all): Change signature.  The
-       function now accepts an alist of templates so it doesn't have to
+       (org-macro-expand, org-macro-replace-all): Change signature.
+       The function now accepts an alist of templates so it doesn't have to
        rely only on `org-macro-templates'.
        (org-macro-initialize-templates): {{{date}}} is not anymore an
        alias for {{{time}}}.  During export, it will provide the value
        * org-exp-blocks.el: Delete.
 
        * ob-exp.el (org-export-blocks-preprocess):
-       * ob-ditaa.el (org-ditaa-jar-path): Moved from
+       * ob-ditaa.el (org-ditaa-jar-path): Move from
        "org-export-blocks.el".
 
        * ob-exp.el (org-babel-exp-src-block): Remove unused argument.
        (org-babel-exp-non-block-elements): Rewrite function using Org
        Element.
 
-       * org-exp-blocks.el (org-export-blocks-preprocess): Rewrite
-       function using Org Element.
+       * org-exp-blocks.el (org-export-blocks-preprocess):
+       Rewrite function using Org Element.
 
        * org-element.el (org-element-recursive-objects)
        (org-element-object-restrictions): Remove `macro' from recursive
        same style.  Make all anchors font-size %100.  Remove margin from
        the content section.
        (org-html-container-element): Fix docstring.
-       (org-html-postamble-format, org-html-preamble-format): Update
-       docstrings.
+       (org-html-postamble-format, org-html-preamble-format):
+       Update docstrings.
        (org-html-template): Use `org-html--build-pre/postamble'.
        (org-html--build-pre/postamble): New function, combining the
        pre/postamble generator.  Merge lists of formatters from the
        (org-html-divs): Change to alist of three entries each containing
        a key ('preamble, 'content, 'postamble), an HTML element type and
        an id to allow setting container elements.
-       (org-html--build-preamble, org-html--build-postamble): Modified to
+       (org-html--build-preamble, org-html--build-postamble): Modify to
        use `org-html-divs'.
-       (org-html-template): Modified to use doctype and container-element
+       (org-html-template): Modify to use doctype and container-element
        settings.
        (org-export-define-backend): Add css url option.
        (org-export-htmlized-org-css-url): Modify docstring and options.
        * ob-tangle.el (org-babel-tangle-collect-blocks): Change argument
        name collid `org-babel-map-src-blocks' variable 'lang'.
 
-       * org-protocol.el (org-protocol-convert-query-to-plist): New
-       function.
+       * org-protocol.el (org-protocol-convert-query-to-plist):
+       New function.
        (org-protocol-do-capture): Use new function.
        (org-protocol-data-separator): Change default separator.
 
 
 2013-11-12  Vitalie Spinu  <spinuvit@gmail.com>
 
-       * ob-tangle.el (org-babel-find-file-noselect-refresh): Call
-       `find-file-noselect' with 'nowarn argument to surpress
+       * ob-tangle.el (org-babel-find-file-noselect-refresh):
+       Call `find-file-noselect' with 'nowarn argument to surpress
        `yes-or-no-p' reversion message.
 
-       * ob-core.el (org-babel-where-is-src-block-head): Return
-       `point-marker' instead of `point'.
+       * ob-core.el (org-babel-where-is-src-block-head):
+       Return `point-marker' instead of `point'.
 
 2013-11-12  Yann Hodique  <yann.hodique@gmail.com>
 
        if result is not a string and not nil.  If the result is nil,
        treat it as if it was the empty string.
 
-       * org-clock.el (org-clock-notify-once-if-expired): Honor
-       `org-clock-sound'.
+       * org-clock.el (org-clock-notify-once-if-expired):
+       Honor `org-clock-sound'.
 
 2013-11-12  Rasmus Pank  <rasmus.pank@gmail.com>
 
        * ob-C.el: Added C++ to `org-babel-load-languages' automatically
        after loading C.
 
-       * org-src.el (org-src-lang-modes): Added association between
+       * org-src.el (org-src-lang-modes): Add association between
        language C++ and `c++-mode'.
 
-       * ox.el (org-export-smart-quotes-alist): Added ("da" "no" "nb"
+       * ox.el (org-export-smart-quotes-alist): Add ("da" "no" "nb"
        "nn" "sv").
-       (org-export-dictionary): Added some entries ("da" "no" "nb" "nn"
+       (org-export-dictionary): Add some entries ("da" "no" "nb" "nn"
        "sv").
        (org-export-default-language): Mention other variables affected by
        language.
 
-       * ox-latex.el (org-latex-babel-language-alist): Added 'nb', 'nn',
+       * ox-latex.el (org-latex-babel-language-alist): Add 'nb', 'nn',
        and 'no' for Norwegian.  Removed 'no-no'.
        (org-latex-pdf-process): let `latexmk' be a preconfigured choice
        and change the wording of the docstring.
        (org-latex-guess-babel-language): Replace AUTO with language if
        AUTO is the option of the LaTeX package Babel.
-       (org-latex-classes): Updated documentation with respect
+       (org-latex-classes): Update documentation with respect
        to `org-latex-guess-babel-language'.
 
 2013-11-12  Дядов Васил Стоянов  <vdyadov@elvees.com>  (tiny change)
        * org-clock.el (org-clock-idle-time): Org-mode assumed that
        x11idle was an available command, and returned an idle time of 0
        if it was not
-       (never idle): Added checks so that org-idle-time will come from
+       (never idle): Add checks so that org-idle-time will come from
        emacs' own current-idle-time if x11idle cannot be found or if it
        cannot retrieve the idle time from X11
 
 
 2011-07-28  Bastien Guerry  <bzg@gnu.org>
 
-       * org-agenda.el (org-agenda-repeating-timestamp-show-all): Allow
-       to use a list of TODO keywords as the value of this variable.
+       * org-agenda.el (org-agenda-repeating-timestamp-show-all):
+       Allow to use a list of TODO keywords as the value of this variable.
        The agenda will show repeating stamps for entries matching these TODO
        keywords.
        (org-agenda-get-timestamps, org-agenda-get-deadlines)
index f2a37484cc09c0af9223ba021e4326cf897a308c..e345bf37b6d48bae9ff1d238cf0f102dd3f3fd53 100644 (file)
@@ -1927,7 +1927,7 @@ fontified, and then returned."
     (org-mode)
     (org-create-dblock props)
     (org-update-dblock)
-    (font-lock-fontify-buffer)
+    (org-font-lock-ensure)
     (forward-line 2)
     (buffer-substring (point) (progn
                                (re-search-forward "^[ \t]*#\\+END" nil t)
index 70c41d53cd953033379646860f9bdb9e4a4c7548..e5d6a49f318f38c4d43f3b0a0de4cb6200dbee9e 100644 (file)
@@ -489,6 +489,11 @@ LIMIT."
              (looking-at (concat "\\(?:"  regexp "\\)\\'")))))
       (not (null pos)))))
 
+(defalias 'org-font-lock-ensure
+  (if (fboundp 'org-font-lock-ensure)
+      #'font-lock-ensure
+    (lambda (_beg _end) (font-lock-fontify-buffer))))
+
 (defun org-floor* (x &optional y)
   "Return a list of the floor of X and the fractional part of X.
 With two arguments, return floor and remainder of their quotient."
index f870b2c714d1217ba043bd777192b2ba4a81fd97..d5e70076df0ad22d48af7a487270ced4f0e07725 100644 (file)
@@ -923,7 +923,7 @@ fontification of code blocks see `org-src-fontify-block' and
            (delete-region (point-min) (point-max))
            (insert string " ") ;; so there's a final property change
            (unless (eq major-mode lang-mode) (funcall lang-mode))
-           (font-lock-fontify-buffer)
+            (org-font-lock-ensure)
            (setq pos (point-min))
            (while (setq next (next-single-property-change pos 'face))
              (put-text-property
index 2a451ed5456975959c714718d51bea96cb0086c5..fed3854007f1f66bbe15b729b3c7811abb5937a4 100644 (file)
@@ -6355,7 +6355,7 @@ needs to be inserted at a specific position in the font-lock sequence.")
     (insert s)
     (let ((org-odd-levels-only odd-levels))
       (org-mode)
-      (font-lock-fontify-buffer)
+      (org-font-lock-ensure)
       (buffer-string))))
 
 (defvar org-m nil)
index 88e572084c8841d2993558b390122bc7938e6a51..1fd1da7bbbb3c3ba0620011bd1ebab73dbc4b259 100644 (file)
@@ -1856,7 +1856,7 @@ is the language used for CODE, as a string, or nil."
                       (funcall lang-mode)
                       (insert code)
                       ;; Fontify buffer.
-                      (font-lock-fontify-buffer)
+                      (org-font-lock-ensure)
                       ;; Remove formatting on newline characters.
                       (save-excursion
                         (let ((beg (point-min))
index 772017cdd0c2073d79fe339cc249b1d05ed44d00..49be3bcb01529fabeaf3b13ebe5100d310f97a76 100644 (file)
@@ -3127,7 +3127,7 @@ and prefix with \"OrgSrc\".  For example,
                 (with-temp-buffer
                   (insert code)
                   (funcall lang-mode)
-                  (font-lock-fontify-buffer)
+                  (org-font-lock-ensure)
                   (buffer-string))))
         (fontifier (if use-htmlfontify-p 'org-odt-htmlfontify-string
                      'org-odt--encode-plain-text))
index 3b2e55e2d459a62f469a2d3d5882786b96f600c8..d9a8001dcfc2201834fea4fc09df3c149466bb56 100644 (file)
@@ -223,12 +223,13 @@ Return output file name."
           (html-ext (concat "." (or (plist-get plist :html-extension)
                                     org-html-extension "html")))
           (visitingp (find-buffer-visiting filename))
-          (work-buffer (or visitingp (find-file filename)))
+          (work-buffer (or visitingp (find-file-noselect filename)))
           newbuf)
-      (font-lock-fontify-buffer)
-      (show-all)
-      (org-show-block-all)
-      (setq newbuf (htmlize-buffer))
+      (with-current-buffer work-buffer
+        (org-font-lock-ensure)
+        (show-all)
+        (org-show-block-all)
+        (setq newbuf (htmlize-buffer)))
       (with-current-buffer newbuf
        (when org-org-htmlized-css-url
          (goto-char (point-min))
@@ -237,10 +238,12 @@ Return output file name."
               (replace-match
                (format
                 "<link rel=\"stylesheet\" type=\"text/css\" href=\"%s\">"
-                org-org-htmlized-css-url) t t)))
+                org-org-htmlized-css-url)
+                t t)))
        (write-file (concat pub-dir (file-name-nondirectory filename) html-ext)))
       (kill-buffer newbuf)
       (unless visitingp (kill-buffer work-buffer)))
+    ;; FIXME: Why?  Which buffer is this supposed to apply to?
     (set-buffer-modified-p nil)))
 
 
index dd1fb78c1a20f05c48feaa092d7d269a51fa3ce7..000d7191ee77552a882a11dab557ea18d632b299 100644 (file)
@@ -2069,8 +2069,7 @@ Optional argument MINOR indicates this is called from
   (if minor
       (progn
        (font-lock-add-keywords nil (compilation-mode-font-lock-keywords))
-       (if font-lock-mode
-            (font-lock-fontify-buffer)))
+        (font-lock-flush))
     (setq font-lock-defaults '(compilation-mode-font-lock-keywords t))))
 
 (defun compilation--unsetup ()
@@ -2079,8 +2078,7 @@ Optional argument MINOR indicates this is called from
   (remove-hook 'before-change-functions 'compilation--flush-parse t)
   (kill-local-variable 'compilation--parsed)
   (compilation--remove-properties)
-  (if font-lock-mode
-      (font-lock-fontify-buffer)))
+  (font-lock-flush))
 
 ;;;###autoload
 (define-minor-mode compilation-shell-minor-mode
index 4e4fc1388773f629cc9f420d11108afd64a05399..1aa5170591a57a2d64d0bcb675e34c886f33f152 100644 (file)
@@ -188,7 +188,7 @@ and disable it otherwise.  If called from Lisp, enable the mode
 if ARG is omitted or nil."
   :group 'cwarn :lighter cwarn-mode-text
   (cwarn-font-lock-keywords cwarn-mode)
-  (if font-lock-mode (font-lock-fontify-buffer)))
+  (font-lock-flush))
 
 ;;;###autoload
 (define-obsolete-function-alias 'turn-on-cwarn-mode 'cwarn-mode "24.1")
index 6aee713dd8690dbb1c8692775801dfd329a51510..6431fa4aaf268961c90e2d60be05bcb4f232c4da 100644 (file)
@@ -830,7 +830,7 @@ Can be overridden by the value of `font-lock-maximum-decoration'.")
   (font-lock-mode 1)
   (setq font-lock-keywords
         (symbol-value (intern-soft (format "f90-font-lock-keywords-%d" n))))
-  (font-lock-fontify-buffer))
+  (font-lock-flush))
 
 (defun f90-font-lock-1 ()
   "Set `font-lock-keywords' to `f90-font-lock-keywords-1'."
index e8a950c1faed552289342fbfb60ad1c2ae3d3b10..b9c41c9d6998a08827fd063d98d62319379e609f 100644 (file)
@@ -1177,15 +1177,13 @@ Useful when source code is displayed as help.  See the option
   (if (featurep 'font-lock)
       (let ((major-mode 'idlwave-mode)
            (font-lock-verbose
-            (if (called-interactively-p 'interactive) font-lock-verbose nil))
-           (syntax-table (syntax-table)))
-       (unwind-protect
-           (progn
-             (set-syntax-table idlwave-mode-syntax-table)
-             (set (make-local-variable 'font-lock-defaults)
-                  idlwave-font-lock-defaults)
-             (font-lock-fontify-buffer))
-         (set-syntax-table syntax-table)))))
+            (if (called-interactively-p 'interactive) font-lock-verbose nil)))
+       (with-syntax-table idlwave-mode-syntax-table
+          (set (make-local-variable 'font-lock-defaults)
+               idlwave-font-lock-defaults)
+          (if (fboundp 'font-lock-ensure)
+              (font-lock-ensure)
+            (font-lock-fontify-buffer))))))
 
 
 (defun idlwave-help-error (name type class keyword)
index 407466932d9cf049daf7d916137939dd81aa9b46..d0745d59955749b15fd7f1a3ef8142a759bd916c 100644 (file)
@@ -116,7 +116,7 @@ support it."
         (font-lock-add-keywords nil prettify-symbols--keywords)
         (setq-local font-lock-extra-managed-props
                     (cons 'composition font-lock-extra-managed-props))
-        (font-lock-fontify-buffer))
+        (font-lock-flush))
     ;; Turn off
     (when prettify-symbols--keywords
       (font-lock-remove-keywords nil prettify-symbols--keywords)
index bcac59a3adedcdfc52402522132ec1e836abf544..a082d75b3c402163b116eeac01b210b30153c249 100644 (file)
@@ -3340,8 +3340,6 @@ PREFIX is the prefix of the search regexp."
     ["Mark clause" prolog-mark-clause t]
     ["Mark predicate" prolog-mark-predicate t]
     ["Mark paragraph" mark-paragraph t]
-    ;;"---"
-    ;;["Fontify buffer" font-lock-fontify-buffer t]
     ))
 
 (defun prolog-menu ()
index 6d7179c0447ff0908be1329c249cc05f6d29d226..b4148ef5621ea29e09e48b30de4a5e688e41b2be 100644 (file)
@@ -2323,7 +2323,7 @@ Calls the value of `sh-set-shell-hook' if set."
   (when font-lock-mode
     (setq font-lock-set-defaults nil)
     (font-lock-set-defaults)
-    (font-lock-fontify-buffer))
+    (font-lock-flush))
   (setq sh-shell-process nil)
   (run-hooks 'sh-set-shell-hook))
 
index 069e7119b906c5baaf035ead6fd9872418f68d88..7cb8f457e3f206caca10e5236d54d79507e50ed8 100644 (file)
@@ -138,7 +138,6 @@ If nil, TAB always indents current line."
     (define-key map "\C-c\t"   'indent-according-to-mode)
     (define-key map "\M-\C-\\" 'vera-indent-region)
     (define-key map "\C-c\C-c" 'vera-comment-uncomment-region)
-    (define-key map "\C-c\C-f" 'vera-fontify-buffer)
     (define-key map "\C-c\C-v" 'vera-version)
     (define-key map "\M-\t"    'tab-to-tab-stop)
     ;; Electric key bindings.
@@ -172,8 +171,6 @@ If nil, TAB always indents current line."
     ["Indent Region"           vera-indent-region (mark)]
     ["Indent Buffer"           vera-indent-buffer t]
     "--"
-    ["Fontify Buffer"          vera-fontify-buffer t]
-    "--"
     ["Documentation"           describe-mode]
     ["Version"                 vera-version t]
     ["Bug Report..."           vera-submit-bug-report t]
@@ -686,7 +683,8 @@ Adapted from `font-lock-match-c-style-declaration-item-and-skip-to-next'."
   "Font lock mode face used to highlight interface names."
   :group 'font-lock-highlighting-faces)
 
-(defalias 'vera-fontify-buffer 'font-lock-fontify-buffer)
+(define-obsolete-function-alias 'vera-fontify-buffer
+  'font-lock-fontify-buffer "24.5")
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; Indentation
index d0f8897ed65a114cee20c699e1877ae9a26ebe88..5b643e370c2f505c16a9a44f31c104d4b1f410cf 100644 (file)
@@ -5094,7 +5094,11 @@ FILENAME to find directory to run in, or defaults to `buffer-file-name`."
        (verilog-mode)
        ;; Without this force, it takes a few idle seconds
        ;; to get the color, which is very jarring
-       (when fontlocked (font-lock-fontify-buffer))))))
+        (unless (fboundp 'font-lock-ensure)
+          ;; We should use font-lock-ensure in preference to
+          ;; font-lock-fontify-buffer, but IIUC the problem this is supposed to
+          ;; solve only appears in Emacsen older than font-lock-ensure anyway.
+          (when fontlocked (font-lock-fontify-buffer)))))))
 \f
 
 ;;
index 7a5bc8afeea4c95420a1c91d728cd1b38ab4c127..05e593ea70fe731c846c9591313e66e1c466b2a2 100644 (file)
@@ -311,8 +311,7 @@ unbalanced, but hey...)"
     (when (or (not arg) (= (prefix-numeric-value arg) 2))
       (modify-syntax-entry ?\" "." table))
     (set-syntax-table table)
-    (when font-lock-mode
-      (font-lock-fontify-buffer))))
+    (font-lock-flush)))
 
 
 (defun conf-outline-level ()
index 33a70436b2dc1d195f34017d4003b8a418228900..becf23c58c267b633ebe10630f25c7ac8745fe3d 100644 (file)
@@ -1,3 +1,8 @@
+2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * automated/ruby-mode-tests.el (ruby-assert-face): Use font-lock-ensure.
+       (ruby-interpolation-keeps-non-quote-syntax): Use syntax-propertize.
+
 2014-05-21  Michal Nazarewicz  <mina86@mina86.com>
 
        * automated/tildify-tests.el: New file.
index 0ad5650cd7719dffc93a269b780622ef91d9c2de..468213cf70f763b9e40af45c292d5350ca33a873 100644 (file)
@@ -61,7 +61,7 @@ VALUES-PLIST is a list with alternating index and value elements."
 
 (defun ruby-assert-face (content pos face)
   (ruby-with-temp-buffer content
-    (font-lock-fontify-buffer)
+    (font-lock-ensure nil nil 'force)
     (should (eq face (get-text-property pos 'face)))))
 
 (ert-deftest ruby-indent-after-symbol-made-from-string-interpolation ()
@@ -420,7 +420,7 @@ VALUES-PLIST is a list with alternating index and value elements."
     (ruby-with-temp-buffer s
       (goto-char (point-min))
       (ruby-mode)
-      (font-lock-fontify-buffer)
+      (syntax-propertize (point-max))
       (search-forward "tee")
       (should (string= (thing-at-point 'symbol) "tee")))))