From: Masatake YAMATO Date: Thu, 4 Mar 2004 18:19:19 +0000 (+0000) Subject: (hexl-mode): Set `hexl-print-current-point-info' as the callback function for eldoc. X-Git-Tag: ttn-vms-21-2-B4~7348 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=01ff91367762acf46e2e138ae6168d1e2db75002;p=emacs.git (hexl-mode): Set `hexl-print-current-point-info' as the callback function for eldoc. (hexl-print-current-point-info): New function. (hexl-current-address): print the address in both decimal and hexadecimal format. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9edcb1f6600..e8353eeea21 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2004-03-04 Masatake YAMATO + + * hexl.el (hexl-mode): Set `hexl-print-current-point-info' + as the callback function for eldoc. + (hexl-print-current-point-info): New function. + (hexl-current-address): print the address in both decimal + and hexadecimal format. + 2004-03-04 Richard M. Stallman * mail/rmail.el (rmail-convert-to-babyl-format): diff --git a/lisp/hexl.el b/lisp/hexl.el index 413344fc375..40e3c929c59 100644 --- a/lisp/hexl.el +++ b/lisp/hexl.el @@ -42,6 +42,8 @@ ;;; Code: +(require 'eldoc) + ;; ;; vars here ;; @@ -236,6 +238,13 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode. (add-hook 'change-major-mode-hook 'hexl-maybe-dehexlify-buffer nil t) + ;; Set a callback function for eldoc. + (set (make-variable-buffer-local 'eldoc-print-current-symbol-info-function) + 'hexl-print-current-point-info) + (eldoc-add-command-completions "hexl-") + (eldoc-remove-command "hexl-save-buffer" + "hexl-current-address") + (if hexl-follow-ascii (hexl-follow-ascii 1))) (run-hooks 'hexl-mode-hook)) @@ -361,9 +370,15 @@ Ask the user for confirmation." (- current-column 41) (/ (- current-column (/ current-column 5)) 2)))) (when (interactive-p) - (message "Current address is %d" hexl-address)) + (message "Current address is %d/0x%08x" hexl-address hexl-address)) hexl-address)) +(defun hexl-print-current-point-info () + "Return current hexl-address in string. +This function is indented to be used as eldoc callback." + (let ((addr (hexl-current-address))) + (format "Current address is %d/0x%08x" addr addr))) + (defun hexl-address-to-marker (address) "Return buffer position for ADDRESS." (interactive "nAddress: ")