Browse Source

Org Mac Outlook opens messages via AppleScript

* org-mac-link.el (org-mac-outlook-message-open): Use Apple Script.

Previously ~org-mac-outlook-message-open~ used the Mac OS X Spotlight
index via ~mdfind~ to open messages via shell commands. This patch
changes the open to an AppleScript method to resolve an issue reported
by Manish Sharma.
Mike McLean 4 years ago
1 changed files with 7 additions and 7 deletions
  1. 7 7

+ 7 - 7

@@ -593,13 +593,13 @@ applications and inserting them in org documents"
 (org-add-link-type "mac-outlook" 'org-mac-outlook-message-open)
 (defun org-mac-outlook-message-open (msgid)
-  "Open a message in outlook"
-  (let* ((record-id-string (format "mdfind com_microsoft_outlook_recordID==%s" msgid))
-	(found-message (replace-regexp-in-string "\n$" ""
-              (shell-command-to-string record-id-string))))
-    (if (string= found-message "")
-      (message "org-mac-link: error could not find Outlook message %s" 	(substring-no-properties msgid))
-      (shell-command (format "open \"`mdfind com_microsoft_outlook_recordID==%s`\"" msgid)))))
+  "Open a message in Outlook"
+  (do-applescript
+   (concat
+    "tell application \"Microsoft Outlook\"\n"
+     (format "open message id %s\n" (substring-no-properties msgid))
+     "activate\n"
+     "end tell")))
 (defun org-as-get-selected-outlook-mail ()
   "AppleScript to create links to selected messages in Microsoft"