summaryrefslogtreecommitdiff
path: root/lisp/iimage.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2004-07-03 09:54:20 +0000
committerEli Zaretskii <eliz@gnu.org>2004-07-03 09:54:20 +0000
commit610101de3efe3a59e7fcc8664d6a3756b9981a49 (patch)
tree537312aa0f8e30d5bcae2ef9228cf42f3c840545 /lisp/iimage.el
parent7731023b5024f97e73317a60f99b6124916eae60 (diff)
downloademacs-610101de3efe3a59e7fcc8664d6a3756b9981a49.tar.gz
(turn-on-iimage-mode, iimage-mode): Add autoload cookies.
(iimage-mode-image-search-path): New user option to search the image file. (iimage-locate-file): New funcion. Emacs21.3 or earlier does not have locate-file. (iimage-mode-buffer): Use it.
Diffstat (limited to 'lisp/iimage.el')
-rw-r--r--lisp/iimage.el25
1 files changed, 19 insertions, 6 deletions
diff --git a/lisp/iimage.el b/lisp/iimage.el
index d138498ca3a..9b183ebb01d 100644
--- a/lisp/iimage.el
+++ b/lisp/iimage.el
@@ -25,12 +25,13 @@
;;; Commentary:
-;; Iimage is a minor mode that display a images, when image-filename
-;; exists in buffer.
+;; Iimage is a minor mode that displays images, when image-filename
+;; exists in the buffer.
;; http://www.netlaputa.ne.jp/~kose/Emacs/iimage.html
;;
;; Add to your `~/.emacs':
-;; (autoload 'iimage-mode "iimage" "SUpport Inline image minor mode." t)
+;; (autoload 'iimage-mode "iimage" "Support Inline image minor mode." t)
+;; (autoload 'turn-on-iimage-mode "iimage" "Turn on Inline image minor mode." t)
;;
;; ** Display images in *Info* buffer.
;;
@@ -50,7 +51,7 @@
(eval-when-compile
(require 'image-file))
-(defconst iimage-version "1.0")
+(defconst iimage-version "1.1")
(defvar iimage-mode nil)
(defvar iimage-mode-map nil)
@@ -89,6 +90,10 @@ image filename regex exsamples:
foo.JPG
")
+(defvar iimage-mode-image-search-path nil
+"*List of directories to search for image files for iimage-mode.")
+
+;;;###autoload
(defun turn-on-iimage-mode ()
"Unconditionally turn on iimage mode."
(interactive)
@@ -99,6 +104,12 @@ image filename regex exsamples:
(interactive)
(iimage-mode 0))
+;; Emacs21.3 or earlier does not heve locate-file.
+(if (fboundp 'locate-file)
+ (defalias 'iimage-locate-file 'locate-file)
+ (defun iimage-locate-file (filename path)
+ (locate-library filename t path)))
+
(defun iimage-mode-buffer (arg)
"Display/Undisplay Images.
With numeric ARG, display the images if and only if ARG is positive."
@@ -113,8 +124,9 @@ With numeric ARG, display the images if and only if ARG is positive."
(dolist (pair iimage-mode-image-regex-alist)
(while (re-search-forward (car pair) nil t)
(if (and (setq file (match-string (cdr pair)))
- (setq file (expand-file-name file default-directory))
- (file-exists-p file))
+ (setq file (iimage-locate-file file
+ (cons default-directory
+ iimage-mode-image-search-path))))
(if ing
(add-text-properties (match-beginning 0) (match-end 0)
(list 'display (create-image file)))
@@ -122,6 +134,7 @@ With numeric ARG, display the images if and only if ARG is positive."
'(display)))))))
(set-buffer-modified-p modp)))
+;;;###autoload
(define-minor-mode iimage-mode
"Toggle inline image minor mode."
nil " iImg" iimage-mode-map