diff options
author | jao <jao@gnu.org> | 2021-04-15 22:37:22 +0100 |
---|---|---|
committer | jao <jao@gnu.org> | 2021-04-15 22:37:22 +0100 |
commit | 38646b8a1f9f5c4ce9d8554f66b272f2d08a4e18 (patch) | |
tree | 2e34d671707cba7ba24002315020080a8fd91904 /lib | |
parent | ddd39156cf91e9b042be2b2e9c1597c626f1ed9e (diff) | |
download | elibs-38646b8a1f9f5c4ce9d8554f66b272f2d08a4e18.tar.gz elibs-38646b8a1f9f5c4ce9d8554f66b272f2d08a4e18.tar.bz2 |
integration of zathura with pdf sessions
Diffstat (limited to 'lib')
-rw-r--r-- | lib/doc/jao-doc-view.el | 11 | ||||
-rw-r--r-- | lib/eos/jao-afio.el | 25 |
2 files changed, 20 insertions, 16 deletions
diff --git a/lib/doc/jao-doc-view.el b/lib/doc/jao-doc-view.el index f917b96..f7984f0 100644 --- a/lib/doc/jao-doc-view.el +++ b/lib/doc/jao-doc-view.el @@ -30,6 +30,11 @@ (require 'doc-view) (defvar jao-doc-view-session-file "~/.emacs.d/cache/doc-view-session.eld") +(defvar-local jao-doc-view--is-pdf nil) + +(defun jao-doc-view-session-mark () (setq-local jao-doc-view--is-pdf t)) +(defun jao-doc-view--is-pdf () + (or jao-doc-view--is-pdf (derived-mode-p 'doc-view-mode 'pdf-view-mode))) (defun jao-doc-view--read-file (file) (let ((buff (find-file-noselect file))) @@ -54,16 +59,14 @@ (cb (when skip-current (current-buffer)))) (dolist (b (buffer-list)) (with-current-buffer b - (when (and (derived-mode-p 'doc-view-mode 'pdf-view-mode) - (not (equalp cb b))) + (when (and (jao-doc-view--is-pdf) (not (equalp cb b))) (add-to-list 'docs (buffer-file-name))))) (when (> (length docs) 0) (jao-doc-view--save-to-file jao-doc-view-session-file docs)) (message "%s docs saved" (length docs)))) (defun jao-doc-view--save-session-1 () - (when (derived-mode-p 'pdf-view-mode 'doc-view-mode) - (jao-doc-view-save-session t))) + (when (jao-doc-view--is-pdf) (jao-doc-view-save-session t))) (defun jao-doc-view--save-session () (let ((inhibit-message t) diff --git a/lib/eos/jao-afio.el b/lib/eos/jao-afio.el index d031e59..90abc7f 100644 --- a/lib/eos/jao-afio.el +++ b/lib/eos/jao-afio.el @@ -131,18 +131,19 @@ (defvar jao-afio-switch-hook nil) (defun jao-afio--goto-frame (next &optional reset) - (let ((next-cfg (when (not reset) (get-register next)))) - (window-configuration-to-register jao-afio--current-config) - (setq jao-afio--current-config next) - (if next-cfg - (jump-to-register next) - (delete-other-windows) - (cl-case next - (?w (jao-afio-open-www)) - (?g (jao-afio-open-gnus)) - (?p (jao-afio-open-doc)) - (?s (delete-other-windows)))) - (run-hooks 'jao-afio-switch-hook))) + (when (or reset (not (eq next jao-afio--current-config))) + (let ((next-cfg (when (not reset) (get-register next)))) + (window-configuration-to-register jao-afio--current-config) + (setq jao-afio--current-config next) + (if next-cfg + (jump-to-register next) + (delete-other-windows) + (cl-case next + (?w (jao-afio-open-www)) + (?g (jao-afio-open-gnus)) + (?p (jao-afio-open-doc)) + (?s (delete-other-windows)))) + (run-hooks 'jao-afio-switch-hook)))) (defun jao-afio--goto-main (&optional reset) (interactive "P") |