emacs/lisp/+org-attach.el

30 lines
1022 B
EmacsLisp

;;; +org-attach.el --- Fixes for org-attach -*- lexical-binding: t; -*-
;;; Commentary:
;; `org-attach-attach' doesn't fix the path name. Before I submit a bug, I'm
;; just fixing it by advising `org-attach-attach'.
;;; Code:
(defun +org-attach-attach-fix-args (args)
"ADVICE for `org-attach-attach' to normalize FILE first.
VISIT-DIR and METHOD are passed through unchanged.
This should be applied as `:filter-args' advice."
(cons (expand-file-name (car args)) (cdr args)))
(define-minor-mode +org-attach-fix-args-mode
"Fix the arguments passed to `org-attach-attach'.
This mode normalizes the filename passed to `org-attach-attach'
so that links can be properly made."
:lighter ""
:keymap nil
:global t ; I figure, what does this hurt?
(if +org-attach-fix-args-mode
(advice-add 'org-attach-attach :filter-args #'+org-attach-attach-fix-args)
(advice-remove 'org-attach-attach #'+org-attach-attach-fix-args)))
(provide '+org-attach)
;;; +org-attach.el ends here