comparison lisp/calc/calc-store.el @ 90070:95879cc1ed20

Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-81 Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-748 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-749 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-750 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-751 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-753 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-754 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-755 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-757 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-78 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-79 - miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-80 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-81 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-82 Update from CVS
author Miles Bader <miles@gnu.org>
date Sun, 02 Jan 2005 09:13:19 +0000
parents f2ebccfa87d4 eb45d1b6dbc3
children f6b4d0ebf147
comparison
equal deleted inserted replaced
90069:fa0a5c4db2c8 90070:95879cc1ed20
172 (defvar calc-store-opers) 172 (defvar calc-store-opers)
173 173
174 (defun calc-read-var-name (prompt &optional calc-store-opers) 174 (defun calc-read-var-name (prompt &optional calc-store-opers)
175 (setq calc-given-value nil 175 (setq calc-given-value nil
176 calc-aborted-prefix nil) 176 calc-aborted-prefix nil)
177 (let ((var (let ((minibuffer-completion-table obarray) 177 (let ((var (concat
178 (minibuffer-completion-predicate 'boundp) 178 "var-"
179 (minibuffer-completion-confirm t)) 179 (let ((minibuffer-completion-table
180 (read-from-minibuffer prompt "var-" calc-var-name-map nil)))) 180 (mapcar (lambda (x) (substring x 4))
181 (all-completions "var-" obarray)))
182 (minibuffer-completion-predicate
183 (lambda (x) (boundp (intern (concat "var-" x)))))
184 (minibuffer-completion-confirm t))
185 (read-from-minibuffer prompt nil calc-var-name-map nil)))))
181 (setq calc-aborted-prefix "") 186 (setq calc-aborted-prefix "")
182 (and (not (equal var "")) 187 (and (not (equal var "var-"))
183 (not (equal var "var-"))
184 (if (string-match "\\`\\([-a-zA-Z0-9]+\\) *:?=" var) 188 (if (string-match "\\`\\([-a-zA-Z0-9]+\\) *:?=" var)
185 (if (null calc-given-value-flag) 189 (if (null calc-given-value-flag)
186 (error "Assignment is not allowed in this command") 190 (error "Assignment is not allowed in this command")
187 (let ((svar (intern (substring var 0 (match-end 1))))) 191 (let ((svar (intern (substring var 0 (match-end 1)))))
188 (setq calc-given-value-flag 0 192 (setq calc-given-value-flag 0
194 svar)) 198 svar))
195 (intern var))))) 199 (intern var)))))
196 200
197 (defun calcVar-digit () 201 (defun calcVar-digit ()
198 (interactive) 202 (interactive)
199 (if (calc-minibuffer-contains "var-\\'") 203 (if (calc-minibuffer-contains "\\'")
200 (if (eq calc-store-opers 0) 204 (if (eq calc-store-opers 0)
201 (beep) 205 (beep)
202 (insert "q") 206 (insert "q")
203 (self-insert-and-exit)) 207 (self-insert-and-exit))
204 (self-insert-command 1))) 208 (self-insert-command 1)))
205 209
206 (defun calcVar-oper () 210 (defun calcVar-oper ()
207 (interactive) 211 (interactive)
208 (if (and (eq calc-store-opers t) 212 (if (and (eq calc-store-opers t)
209 (calc-minibuffer-contains "var-\\'")) 213 (calc-minibuffer-contains "\\'"))
210 (progn 214 (progn
211 (erase-buffer) 215 (erase-buffer)
212 (self-insert-and-exit)) 216 (self-insert-and-exit))
213 (self-insert-command 1))) 217 (self-insert-command 1)))
214 218
367 (calc-wrapper 371 (calc-wrapper
368 (or var1 (setq var1 (calc-read-var-name "Copy variable: "))) 372 (or var1 (setq var1 (calc-read-var-name "Copy variable: ")))
369 (if var1 373 (if var1
370 (let ((value (calc-var-value var1))) 374 (let ((value (calc-var-value var1)))
371 (or value 375 (or value
372 (error "No such variable: \"%s\"" (calc-var-name var))) 376 (error "No such variable: \"%s\"" (calc-var-name var1)))
373 (or var2 (setq var2 (calc-read-var-name 377 (or var2 (setq var2 (calc-read-var-name
374 (format "Copy variable: %s, to: " var1)))) 378 (format "Copy variable: %s, to: "
379 (calc-var-name var1)))))
375 (if var2 380 (if var2
376 (calc-store-value var2 value "")))))) 381 (calc-store-value var2 value ""))))))
377 382
378 (defvar calc-last-edited-variable nil) 383 (defvar calc-last-edited-variable nil)
379 (defun calc-edit-variable (&optional var) 384 (defun calc-edit-variable (&optional var)