Comments
Patch
From e6908d75832dc3cbc8573119a5b32d9a66c90a6f Mon Sep 17 00:00:00 2001
From: Jambunathan K <kjambunathan@gmail.com>
Date: Fri, 19 Aug 2011 01:50:23 +0530
Subject: [PATCH 6/6] htmlfontify.el: Add htmlfontify-string & fix a bug in fontification
* contrib/lisp/htmlfontify.el (htmlfontify-string): New defun.
(hfy-compile-face-map): Make sure that the last char in the buffer is
correctly fontified.
---
contrib/lisp/htmlfontify.el | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
@@ -1448,7 +1448,7 @@ Returns a modified copy of FACE-MAP."
(setq pt (next-char-property-change pt))
(setq pt-narrow (+ offset pt)))
(if (and map (not (eq 'end (cdar map))))
- (push (cons (- (point-max) (point-min)) 'end) map)))
+ (push (cons (1+ (- (point-max) (point-min))) 'end) map)))
(if (hfy-opt 'merge-adjacent-tags) (hfy-merge-adjacent-spans map) map)))
(defun hfy-buffer ()
@@ -1792,6 +1792,21 @@ FILE, if set, is the file name."
(set-buffer-modified-p nil)
html-buffer))
+(defun htmlfontify-string (string)
+ "Take a STRING and return a fontified version of it.
+It is assumed that STRING has text properties that allow it to be
+fontified. This is a simple convenience wrapper around
+`htmlfontify-buffer'."
+ (let* ((hfy-optimisations-1 (copy-list hfy-optimisations))
+ (hfy-optimisations (add-to-list 'hfy-optimisations-1
+ 'skip-refontification)))
+ (with-temp-buffer
+ (insert string)
+ (htmlfontify-buffer)
+ (prog1 (buffer-string)
+ (setq buffer-modified-p nil)
+ (kill-buffer)))))
+
(defun hfy-force-fontification ()
"Try to force font-locking even when it is optimized away."
(run-hooks 'hfy-init-kludge-hook)
--
1.7.2.3