diff options
Diffstat (limited to 'sys')
-rw-r--r-- | sys/furl.applescript | 1 | ||||
-rw-r--r-- | sys/jao-applescript.el | 65 | ||||
-rw-r--r-- | sys/jao-devon.el | 75 |
3 files changed, 0 insertions, 141 deletions
diff --git a/sys/furl.applescript b/sys/furl.applescript deleted file mode 100644 index 6823ff0..0000000 --- a/sys/furl.applescript +++ /dev/null @@ -1 +0,0 @@ -tell application "Firefox" to get Çclass curlÈ of window 1 diff --git a/sys/jao-applescript.el b/sys/jao-applescript.el deleted file mode 100644 index 233186c..0000000 --- a/sys/jao-applescript.el +++ /dev/null @@ -1,65 +0,0 @@ -;;; AppleScript and some macish bits -(autoload 'applescript-mode "applescript-mode" - "major mode for editing AppleScript source." t) -(setq auto-mode-alist - (cons '("\\.applescript$" . applescript-mode) auto-mode-alist)) - -(defun do-applescript (script) - (with-temp-buffer - (insert script) - (shell-command-on-region (point-min) (point-max) "osascript" t) - (buffer-string))) - -(defun jao-as-tell-app (app something) - (let ((res (do-applescript (format "tell application \"%s\"\n%s\nend tell" - app something)))) - (or (and (stringp res) (substring res 0 -1)) ""))) - -(defmacro jao-as-get-doc (name application &optional doc) - `(defun ,name () - (interactive) - (let ((url (jao-as-tell-app ,application - ,(format "get the URL of %s 1" - (or doc "document")))) - (name (jao-as-tell-app ,application "get the name of document 1"))) - (cons url name)))) -(jao-as-get-doc jao-as-safari-doc "Safari") -(jao-as-get-doc jao-as-webkit-doc "WebKit") -(jao-as-get-doc jao-as-camino-doc "Camino" "window") - -(defun jao-as-firefox-doc () - (interactive) - (let ((url (shell-command-to-string - (concat "osascript " - (expand-file-name "furl.applescript" - (file-name-directory load-file-name))))) - (name (jao-as-tell-app "Firefox" "get the name of window 1"))) - (cons (substring url 0 -1) name))) - - -;;; quicksilver -(defun jao-qs-buffer () - "Opens the current file in Quicksilver" - (interactive) - (cond ((and buffer-file-name (file-exists-p buffer-file-name)) - (call-process-shell-command (concat "qs \"" buffer-file-name "\""))) - ;; dired handling - ((eq major-mode 'dired-mode) - (dired-do-shell-command "qs * " - current-prefix-arg - (dired-get-marked-files t current-prefix-arg))) - ;; buffer-menu mode - ((and (eq major-mode 'Buffer-menu-mode) - (file-exists-p (buffer-file-name (Buffer-menu-buffer nil)))) - (call-process-shell-command - (concat "qs \"" (buffer-file-name (Buffer-menu-buffer nil)) "\""))) - (t - (error "Not visiting a file or file doesn't exist")))) - - (defun jao-qs-region (start end) - "Opens the contents of the region in Quicksilver as text." - (interactive "r") - (call-process-region start end "qs" nil 0 nil "-")) - - -(provide 'jao-applescript) diff --git a/sys/jao-devon.el b/sys/jao-devon.el deleted file mode 100644 index 65e989f..0000000 --- a/sys/jao-devon.el +++ /dev/null @@ -1,75 +0,0 @@ -;; DEVONthink interaction - -(require 'jao-applescript) - -(defconst *jao-devon-sep* "####") - -(defun jao-devon-path (dvp) - (car (split-string dvp *jao-devon-sep*))) -(defun jao-devon-url (dvp) - (cadr (split-string dvp *jao-devon-sep*))) -(defun jao-devon-name (dvp) - (car (last (split-string (jao-devon-path dvp) "/")))) - -(defun jao-devon-make-dvp (path url) (concat path *jao-devon-sep* name)) -(defun jao-devon-dvp-p (dvp) - (and (stringp dvp) - (string-match (concat "^/.+" *jao-devon-sep*) dvp))) - -(defconst *jao-devon-sel-as* - (concat "set rs to the selection - set r to item 1 of rs - set rn to the name of r - set rl to the reference URL of r - set ru to the URL of r - \"[[\" & rl & \"" *jao-devon-sep* - "\" & ru & \"][\" & rn & \"]]\"")) - -(defun jao-devon-selection () - (jao-as-tell-app "DEVONThink Pro" *jao-devon-sel-as*)) - -;; (defun jao-devon-open-as (path) -;; (concat "set r to get record at \"" path "\"" -;; "\n open window for record r\n activate")) - -(defun jao-devon-open (dvp) - (if (eq system-type 'darwin) - (let* ((path (jao-devon-path dvp)) - (cmd (and path (format "open x-devonthink-item:%s" path)))) - (when cmd (shell-command-to-string cmd))) - (browse-url (jao-devon-url dvp)))) - -(defun jao-devon-add-html-page (title url html) - (let ((as (format "tell application id \"com.devon-technologies.thinkpro2\" to create record with {name:%S, type:html, URL:%S, source:%S}" - title url html))) - (do-applescript as))) - -(defun jao-devon-add-w3m-page () - "Add current w3m page to devonthink." - (interactive) - (let ((title (w3m-current-title)) - (url w3m-current-url)) - (when url - (w3m-view-source) - (let ((html (buffer-substring-no-properties (point-min) (point-max)))) - (jao-devon-add-html-page title url html)) - (w3m-view-source)))) - -(with-eval-after-load "org" - (autoload 'jao-as-safari-doc "jao-applescript.el") - - (defun jao-org-insert-devon-link () - (interactive) - (insert (jao-devon-selection))) - - (defun jao-org-insert-safari-link () - (interactive) - (let ((ln (jao-as-safari-doc))) - (when ln (jao-org-insert-link (car ln) (cdr ln))))) - - (org-add-link-type "x-devonthink-item" 'jao-devon-open 'identity) - - (define-key org-mode-map "\C-cd" 'jao-org-insert-devon-link) - (define-key org-mode-map "\C-cs" 'jao-org-insert-safari-link)) - -(provide 'jao-devon) |