Function: table--update-cell-widened

table--update-cell-widened is a byte-compiled function defined in table.el.gz.

Signature

(table--update-cell-widened &optional NOW)

Documentation

Update the contents of the cells that are affected by widening operation.

Source Code

;; Defined in /usr/src/emacs/lisp/textmodes/table.el.gz
(defun table--update-cell-widened (&optional now)
  "Update the contents of the cells that are affected by widening operation."
  (if (null table-widen-timer) nil
    (cancel-timer table-widen-timer)
    (setq table-widen-timer nil))
  (if (not now)
      (setq table-widen-timer
            (run-with-idle-timer (+ table-time-before-update table-time-before-reformat)
                                 nil
                                 (function table--update-cell-widened)
                                 'now))
    (save-current-buffer
      (if table-update-timer
	  (table--update-cell 'now))
      (set-buffer table-cell-buffer)
      (let* ((current-coordinate (table--get-coordinate))
	     (current-cell-coordinate (table--cell-to-coord (table--probe-cell)))
	     (cell-coord-list (progn
				(table--goto-coordinate table-cell-info-lu-coordinate)
				(table--cell-list-to-coord-list (table--vertical-cell-list)))))
	(while cell-coord-list
	  (let* ((cell-coord (prog1 (car cell-coord-list) (setq cell-coord-list (cdr cell-coord-list))))
		 (currentp (equal cell-coord current-cell-coordinate)))
	    (if currentp (table--goto-coordinate current-coordinate)
	      (table--goto-coordinate (car cell-coord)))
	    (table-recognize-cell 'force)
	    (let ((table-inhibit-update t))
	      (table-with-cache-buffer
		(let ((sticky (and currentp
				   (save-excursion
				     (unless (bolp) (forward-char -1))
				     (looking-at ".*\\S ")))))
		  (table--fill-region (point-min) (point-max))
		  (if sticky
		      (setq current-coordinate (table--transcoord-cache-to-table))))))
	    (table--update-cell 'now)
	    ))
	(table--goto-coordinate current-coordinate)
	(table-recognize-cell 'force)))))