Function: ses-edit-cell
ses-edit-cell is an interactive and byte-compiled function defined in
ses.el.gz.
Signature
(ses-edit-cell ROW COL NEWVAL)
Documentation
Display current cell contents in minibuffer, for editing.
Return nil if cell formula was unsafe and user declined confirmation.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/ses.el.gz
(defun ses-edit-cell (row col newval)
"Display current cell contents in minibuffer, for editing.
Return nil if cell formula was unsafe and user declined confirmation."
(interactive
(progn
(barf-if-buffer-read-only)
(ses-check-curcell)
(let* ((rowcol (ses-sym-rowcol ses--curcell))
(row (car rowcol))
(col (cdr rowcol))
(formula (ses-cell-formula row col))
initial print-level print-length)
(if (eq (car-safe formula) 'ses-safe-formula)
(setq formula (cadr formula)))
(if (eq (car-safe formula) 'quote)
(setq initial (format "'%S" (cadr formula)))
(setq initial (prin1-to-string formula)))
(if (stringp formula)
;; Position cursor inside close-quote.
(setq initial (cons initial (length initial))))
(dolist (key ses-completion-keys)
(define-key ses-mode-edit-map key #'ses-edit-cell-complete-symbol))
;; make it globally visible, so that it can be visible from the minibuffer.
(setq ses--completion-table ses--named-cell-hashmap)
(list row col
(read-from-minibuffer (format "Cell %s: " ses--curcell)
initial
ses-mode-edit-map
t ; Convert to Lisp object.
'ses-read-cell-history)))))
(when (ses-warn-unsafe newval 'unsafep)
(ses-begin-change)
(ses-cell-set-formula row col newval)
t))