comparison lisp/calc/calc-embed.el @ 90389:146cd8369025

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-60 Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 259-273) - Update from CVS - lisp/replace.el (occur-engine): Bind `inhibit-field-text-motion' to t - Merge from gnus--rel--5.10 - Rename "field-at-point" to "field-at-pos" - (comint-insert-input): Remove redundant calls to setq and goto-char * gnus--rel--5.10 (patch 99-100) - Merge from emacs--devo--0 - Update from CVS
author Miles Bader <miles@gnu.org>
date Wed, 10 May 2006 20:42:41 +0000
parents 2ecafc6d5db7 28c35ae1bb02
children 95d0cdf160ea
comparison
equal deleted inserted replaced
90388:a786f674d33f 90389:146cd8369025
204 204
205 (defvar calc-embedded-firsttime) 205 (defvar calc-embedded-firsttime)
206 (defvar calc-embedded-firsttime-buf) 206 (defvar calc-embedded-firsttime-buf)
207 (defvar calc-embedded-firsttime-formula) 207 (defvar calc-embedded-firsttime-formula)
208 208
209 ;; The following is to take care of any minor modes which override
210 ;; a Calc command.
211 (defvar calc-override-minor-modes-map
212 (make-sparse-keymap)
213 "A list of keybindings that might be overwritten by minor modes.")
214
215 ;; Add any keys that might be overwritten here.
216 (define-key calc-override-minor-modes-map "`" 'calc-edit)
217
218 (defvar calc-override-minor-modes
219 (cons t calc-override-minor-modes-map))
220
209 (defun calc-do-embedded (calc-embed-arg end obeg oend) 221 (defun calc-do-embedded (calc-embed-arg end obeg oend)
210 (if calc-embedded-info 222 (if calc-embedded-info
211 223
212 ;; Turn embedded mode off or switch to a new buffer. 224 ;; Turn embedded mode off or switch to a new buffer.
213 (cond ((eq (current-buffer) (aref calc-embedded-info 1)) 225 (cond ((eq (current-buffer) (aref calc-embedded-info 1))
235 (setq calc-embedded-info nil 247 (setq calc-embedded-info nil
236 mode-line-buffer-identification (car mode) 248 mode-line-buffer-identification (car mode)
237 truncate-lines (nth 2 mode) 249 truncate-lines (nth 2 mode)
238 buffer-read-only nil) 250 buffer-read-only nil)
239 (use-local-map (nth 1 mode)) 251 (use-local-map (nth 1 mode))
252 (setq minor-mode-overriding-map-alist
253 (remq calc-override-minor-modes minor-mode-overriding-map-alist))
240 (set-buffer-modified-p (buffer-modified-p)) 254 (set-buffer-modified-p (buffer-modified-p))
241 (calc-embedded-restore-original-modes) 255 (calc-embedded-restore-original-modes)
242 (or calc-embedded-quiet 256 (or calc-embedded-quiet
243 (message "Back to %s mode" mode-name)))) 257 (message "Back to %s mode" mode-name))))
244 258
295 mode-line-buffer-identification ident 309 mode-line-buffer-identification ident
296 truncate-lines t 310 truncate-lines t
297 buffer-read-only t) 311 buffer-read-only t)
298 (set-buffer-modified-p (buffer-modified-p)) 312 (set-buffer-modified-p (buffer-modified-p))
299 (use-local-map calc-mode-map) 313 (use-local-map calc-mode-map)
314 (setq minor-mode-overriding-map-alist
315 (cons calc-override-minor-modes
316 minor-mode-overriding-map-alist))
300 (setq calc-no-refresh-evaltos nil) 317 (setq calc-no-refresh-evaltos nil)
301 (and chg calc-any-evaltos (calc-wrapper (calc-refresh-evaltos))) 318 (and chg calc-any-evaltos (calc-wrapper (calc-refresh-evaltos)))
302 (let (str) 319 (let (str)
303 (save-excursion 320 (save-excursion
304 (calc-select-buffer) 321 (calc-select-buffer)