Function: ses-truncate-cell

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

Signature

(ses-truncate-cell)

Documentation

Reprint current cell, but without spillover into any following blank cells.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/ses.el.gz
(defun ses-truncate-cell ()
  "Reprint current cell, but without spillover into any following blank cells."
  (interactive "*")
  (ses-check-curcell)
  (let* ((rowcol (ses-sym-rowcol ses--curcell))
	 (row    (car rowcol))
	 (col    (cdr rowcol)))
    (when (and (< col (1- ses--numcols)) ;;Last column can't spill over, anyway
	       (eq (ses-cell-value row (1+ col)) '*skip*))
      ;; This cell has spill-over.  We'll momentarily pretend the following cell
      ;; has a t in it.
      (cl-progv
	  (list (ses-cell-symbol row (1+ col)))
	  '(t)
	       (ses-print-cell row col))
      ;; Now remove the *skip*.  ses-print-cell is always nil here.
      (ses-set-cell row (1+ col) 'value nil)
      (1value (ses-print-cell row (1+ col))))))