Function: ses-jump

ses-jump is an interactive and byte-compiled function defined in ses.el.gz.

Signature

(ses-jump &optional SYM)

Documentation

Move point to cell SYM.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/ses.el.gz
(defun ses-jump (&optional sym)
  "Move point to cell SYM."
  (interactive "P")
  (setq sym
        (if current-prefix-arg
            (funcall ses-jump-prefix-function (prefix-numeric-value sym))
          (or sym
            (completing-read
             "Jump to cell: "
             (and ses--named-cell-hashmap
                  (let (names)
                    (maphash (lambda (key _val)
                               (push (symbol-name key) names))
                             ses--named-cell-hashmap)
                    names))))))
  (and (stringp sym)
       (not (and ses--named-cell-hashmap (gethash (intern sym) ses--named-cell-hashmap)))
       (setq sym  (funcall ses-jump-cell-name-function sym)))
  (if (stringp sym)
      (if (string= sym "")
          (user-error "Empty cell name")
        (setq sym (intern sym))))
  (let ((rowcol (if (consp sym)
                    (prog1 sym (setq sym (ses-cell-symbol (car sym) (cdr sym))))
                  (ses-sym-rowcol sym))))
    (or rowcol (error "Invalid cell name"))
    (if (eq (symbol-value sym) '*skip*)
        (error "Cell is covered by preceding cell"))
    (ses-goto-print (car rowcol) (cdr rowcol))))