mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-03 12:27:26 -05:00
This makes it much easier to customize, since it will always be set early in the startup process, rather than unpredictably, whenever this autoloads file is loaded.
52 lines
2.0 KiB
EmacsLisp
52 lines
2.0 KiB
EmacsLisp
;;; tools/macos/autoload.el -*- lexical-binding: t; -*-
|
|
|
|
;;;###autoload
|
|
(setq locate-command "mdfind")
|
|
|
|
;;;###autoload
|
|
(defun +macos-open-with (&optional app-name path)
|
|
"Send PATH to APP-NAME on OSX."
|
|
(interactive)
|
|
(let* ((path (expand-file-name
|
|
(replace-regexp-in-string
|
|
"'" "\\'"
|
|
(or path (if (derived-mode-p 'dired-mode)
|
|
(dired-get-file-for-visit)
|
|
(buffer-file-name)))
|
|
nil t)))
|
|
(command (format "open %s"
|
|
(if app-name
|
|
(format "-a %s '%s'" (shell-quote-argument app-name) path)
|
|
(format "'%s'" path)))))
|
|
(message "Running: %s" command)
|
|
(shell-command command)))
|
|
|
|
;;;###autoload
|
|
(defmacro +macos--open-with (id &optional app dir)
|
|
`(defun ,(intern (format "+macos/%s" id)) ()
|
|
(interactive)
|
|
(+macos-open-with ,app ,dir)))
|
|
|
|
;;;###autoload (autoload '+macos/open-in-default-program "tools/macos/autoload" nil t)
|
|
(+macos--open-with open-in-default-program)
|
|
|
|
;;;###autoload (autoload '+macos/reveal-in-finder "tools/macos/autoload" nil t)
|
|
(+macos--open-with reveal-in-finder "Finder" default-directory)
|
|
|
|
;;;###autoload (autoload '+macos/reveal-project-in-finder "tools/macos/autoload" nil t)
|
|
(+macos--open-with reveal-project-in-finder "Finder"
|
|
(or (doom-project-root) default-directory))
|
|
|
|
;;;###autoload (autoload '+macos/send-to-transmit "tools/macos/autoload" nil t)
|
|
(+macos--open-with send-to-transmit "Transmit")
|
|
|
|
;;;###autoload (autoload '+macos/send-cwd-to-transmit "tools/macos/autoload" nil t)
|
|
(+macos--open-with send-cwd-to-transmit "Transmit" default-directory)
|
|
|
|
;;;###autoload (autoload '+macos/send-to-launchbar "tools/macos/autoload" nil t)
|
|
(+macos--open-with send-to-launchbar "LaunchBar")
|
|
|
|
;;;###autoload (autoload '+macos/send-project-to-launchbar "tools/macos/autoload" nil t)
|
|
(+macos--open-with send-project-to-launchbar "LaunchBar"
|
|
(or (doom-project-root) default-directory))
|