Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defun get-displayed-buffer-name-list ()
- ""
- (interactive)
- (catch 'displayed-buffer-name-list
- (let ((base-buffer (window-buffer))
- (buffer-name-list nil))
- (if (eq base-buffer nil)
- (message "no buffer")
- (let ((target-window (next-window (car (get-buffer-window-list)))))
- (add-to-list 'buffer-name-list (buffer-name base-buffer))
- (while (not (eq base-buffer (window-buffer target-window)))
- (add-to-list 'buffer-name-list
- (buffer-name (window-buffer target-window)))
- (setq target-window (next-window target-window)))
- (throw 'displayed-buffer-name-list buffer-name-list))))))
- (defun get-displayed-buffer-match-pattern (buffer-name-pattern)
- ""
- (interactive)
- (catch 'buffer
- (let ((buffer-name-list (get-displayed-buffer-name-list))
- (buffer nil))
- (dolist (buffer-name buffer-name-list)
- (if (string-match buffer-name-pattern buffer-name)
- (throw 'buffer (get-buffer buffer-name))))
- (throw 'buffer nil))))
- (defun toggle-magit-status ()
- ""
- (interactive)
- (let ((buffer (get-displayed-buffer-match-pattern "*magit: \\(.*\\)")))
- (if buffer
- (delete-window (car (get-buffer-window-list buffer)))
- (magit-status))))
- (bind-key "<f10>" 'toggle-magit-status)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement