I am not sure whether this is just a simple mistake of my code. But I just cannot figure out what's the problem is, so please point it out.
aaaaa
(progn
(setq ol-list nil)
(dolist (pos '(1 2 3 4))
(let ( (ol (make-overlay pos (1+ pos) (current-buffer))) )
(overlay-put ol 'display "X")
(print ol)
(setq ol-list
(nconc ol-list (list ol)))
);; let
) ;; dolist
)
(progn
(dolist (ol ol-list)
(delete-overlay ol))
(setq ol-list nil) )
Put the above code snippet at the beginning your "lisp-mode" buffer, and eval (C-x C-e) each progn
section.
On my emacs, the first code section will make the "aaaaa" to "Xa". But I think the result should be "XXXXa". So where is the problem?