Se você alterou o buffer no código ELisp, a maneira correta de voltar ao buffer anterior é usar save-excursion
ou save-current-buffer
:
;; do stuff in buffer1
(save-excusion
(set-buffer "buffer2")
;; do stuff in buffer2
)
;; more stuff in buffer1