Guest User

Untitled

a guest
Sep 24th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.74 KB | None | 0 0
  1. (defun unpop-to-mark-command ()
  2. "Unpop off mark ring. Does nothing if mark ring is empty."
  3. (when mark-ring
  4. (setq mark-ring (cons (copy-marker (mark-marker)) mark-ring))
  5. (set-marker (mark-marker) (car (last mark-ring)) (current-buffer))
  6. (when (null (mark t)) (ding))
  7. (setq mark-ring (nbutlast mark-ring))
  8. (goto-char (marker-position (car (last mark-ring))))))
  9.  
  10. (defun push-mark ()
  11. (interactive)
  12. (set-mark-command nil)
  13. (set-mark-command nil))
  14.  
  15. (nougat-hydra hydra-mark (:color pink)
  16. ("Mark"
  17. (("m" push-mark "mark here")
  18. ("p" (lambda () (interactive) (set-mark-command '(4))) "previous")
  19. ("n" (lambda () (interactive) (unpop-to-mark-command)) "next")
  20. ("c" (lambda () (interactive) (setq mark-ring nil)) "clear"))))
Add Comment
Please, Sign In to add comment