branch: elpa/casual
commit 512763d9f82cd3baa1512ea43448ebe59df907e4
Merge: 43d9102c8f a48c3ac128
Author: Charles Choi <[email protected]>
Commit: GitHub <[email protected]>

    Merge pull request #408 from kickingvegas/cc/org-mode-98-moar
    
    Support casual-org-toggle-images
---
 lisp/casual-org-utils.el | 25 ++++++++++++++++++++++---
 tests/test-casual-org.el |  4 +++-
 2 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/lisp/casual-org-utils.el b/lisp/casual-org-utils.el
index 44fa6277d4..f6cf629ff7 100644
--- a/lisp/casual-org-utils.el
+++ b/lisp/casual-org-utils.el
@@ -24,6 +24,9 @@
 ;;; Code:
 (require 'rect)
 (require 'org)
+(require 'org-num)
+(require 'org-element)
+(require 'org-element-ast)
 (require 'casual-lib)
 
 (defconst casual-org-unicode-db
@@ -586,6 +589,20 @@ See `casual-org-table--range' for more on RANGE object."
   (insert "@I..@II"))
 
 
+;; -------------------------------------------------------------------
+;; Image Preview
+
+(defun casual-org-toggle-images ()
+  "Toggle display of all link images in an Org buffer.
+
+This command mimicks ‘org-toggle-inline-images’ which was obsoleted in
+Org 9.8."
+  (interactive)
+  (if (org-link-preview--get-overlays)
+      (org-link-preview '(64))
+    (org-link-preview 11)))
+
+
 ;; -------------------------------------------------------------------
 ;; Transients
 
@@ -942,12 +959,14 @@ See `casual-org-table--range' for more on RANGE object."
    ["Display"
     :if casual-org-mode-p
     ("M-i" "Toggle Images" org-toggle-inline-images
-     :if (lambda () (and (display-graphic-p)
-                    (not (fboundp 'org-link-preview))))
+     :if (lambda () (and (display-graphic-p) (not (fboundp 
'org-link-preview))))
      :transient nil)
-    ("M-i" "Toggle Images" org-link-preview
+    ("M-i" "Toggle Images" casual-org-toggle-images
      :if (lambda () (and (display-graphic-p) (fboundp 'org-link-preview)))
      :transient nil)
+    ("M-l" "Link Preview✦" org-link-preview
+     :if (lambda () (and (display-graphic-p) (fboundp 'org-link-preview)))
+     :transient t)
     ("M" "Show Markup" visible-mode
      :description (lambda () (casual-lib-checkbox-label visible-mode "Show 
Markup"))
      :transient nil)
diff --git a/tests/test-casual-org.el b/tests/test-casual-org.el
index db1020faea..f7ff8d410c 100644
--- a/tests/test-casual-org.el
+++ b/tests/test-casual-org.el
@@ -280,6 +280,7 @@
             (casualt-mock #'org-clock-out)
             (casualt-mock #'org-clock-report)
             (casualt-mock #'org-link-preview)
+            (casualt-mock #'casual-org-toggle-images)
             (casualt-mock #'visible-mode)
             (casualt-mock #'prettify-symbols-mode)
             (casualt-mock #'visual-line-mode)
@@ -293,7 +294,8 @@
              (:binding "M-c" :command org-clock-in)
              ;; (:binding "M-c" :command org-clock-out) ; TODO test
              ;; (:binding "R" :command org-clock-report) ; TODO test
-             (:binding "M-i" :command org-link-preview)
+             (:binding "M-i" :command casual-org-toggle-images)
+             (:binding "M-l" :command org-link-preview)
              (:binding "M" :command visible-mode)
              (:binding "P" :command prettify-symbols-mode)
              (:binding "V" :command visual-line-mode)

Reply via email to