- (and skeleton-regions
- (setq skeleton-regions
- (if (> skeleton-regions 0)
- (list (point-marker)
- (save-excursion (forward-word skeleton-regions)
- (point-marker)))
- (setq skeleton-regions (- skeleton-regions))
- ;; copy skeleton-regions - 1 elements from `mark-ring'
- (let ((l1 (cons (mark-marker) mark-ring))
- (l2 (list (point-marker))))
- (while (and l1 (> skeleton-regions 0))
- (setq l2 (cons (car l1) l2)
- skeleton-regions (1- skeleton-regions)
- l1 (cdr l1)))
- (sort l2 '<))))
- (goto-char (car skeleton-regions))
- (setq skeleton-regions (cdr skeleton-regions)))
- (let ((beg (point))
- skeleton-modified skeleton-point resume: help input v1 v2)
- (unwind-protect
- (eval `(let ,skeleton-further-elements
- (skeleton-internal-list skeleton str)))
- (run-hooks 'skeleton-end-hook)
- (sit-for 0)
- (or (pos-visible-in-window-p beg)
- (progn
- (goto-char beg)
- (recenter 0)))
- (if skeleton-point
- (goto-char skeleton-point)))))
-
-(defun skeleton-read (str &optional initial-input recursive)
+ (let ((skeleton-regions regions))
+ (and skeleton-regions
+ (setq skeleton-regions
+ (if (> skeleton-regions 0)
+ (list (point-marker)
+ (save-excursion (forward-word skeleton-regions)
+ (point-marker)))
+ (setq skeleton-regions (- skeleton-regions))
+ ;; copy skeleton-regions - 1 elements from `mark-ring'
+ (let ((l1 (cons (mark-marker) mark-ring))
+ (l2 (list (point-marker))))
+ (while (and l1 (> skeleton-regions 0))
+ (setq l2 (cons (car l1) l2)
+ skeleton-regions (1- skeleton-regions)
+ l1 (cdr l1)))
+ (sort l2 '<))))
+ (goto-char (car skeleton-regions))
+ (setq skeleton-regions (cdr skeleton-regions)))
+ (let ((beg (point))
+ skeleton-modified skeleton-point resume: help input v1 v2)
+ (setq skeleton-positions nil)
+ (unwind-protect
+ (eval `(let ,skeleton-further-elements
+ (skeleton-internal-list skeleton str)))
+ (run-hooks 'skeleton-end-hook)
+ (sit-for 0)
+ (or (pos-visible-in-window-p beg)
+ (progn
+ (goto-char beg)
+ (recenter 0)))
+ (if skeleton-point
+ (goto-char skeleton-point))))))
+
+(defun skeleton-read (prompt &optional initial-input recursive)